S2-052复现过程(附POC利用)

释放双眼,带上耳机,听听看~!
漏洞编号:CVE-2017-9805(S2-052)影响版本:Struts2.5-Struts2.5.12漏洞概述:问题出现在struts2-rest-plugin插件XStreamHandler处理器中的toObject()方法,其中未对传入的值进行任何限制,在使用XStream反

漏洞编号:CVE-2017-9805(S2-052)

影响版本:Struts 2.5 – Struts 2.5.12

漏洞概述:问题出现在struts2-rest-plugin插件XStreamHandler处理器中的toObject()方法,其中未对传入的值进行任何限制,在使用XStream反
                           
                                               
                           

0×01 搭建环境

直接部署struts-2.5.12-all中的struts2-rest-showcase项目即可,从下图可以看出,插件的默认配置支持xml扩展。

1.png

运行看看,默认的xhtml扩展

2.png

转换成xml也成功,但是注意Content-Type需要改成application/xml类型。

2.png

0×02 构造PoC

用marshalsec(https://github.com/mbechler/marshalsec)生成Payload,工具简单使用方式如下:

java -cpmarshalsec-0.0.1-SNAPSHOT-all.jar marshalsec.<Marshaller  截图和代码较长,点击查看构造poc完整使用方式

0×03 复现验证

2.png


0×04 加固建议

  • 升级Apache struts 2.5.13版本

  • 在不使用时删除StrutsREST插件,或仅限于服务器普通页面和JSONs

<constantname=”struts.action.extension”value=”xhtml,,json” />

给TA买糖
共{{data.count}}人
人已赞赏
HackerNews

【指尖安全】赠票活动截至2017年9月8日获奖通报

2017-9-6 1:50:08

HackerNews

谷歌发布最新安全公告:360获28次致谢排名全球第一

2017-9-6 5:57:05

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索