Struts2远程代码执行漏洞S2-052 复现&防御方案

0x00 前言

2017年9月5日晚间,Apache官方发布Struts 2紧急漏洞公告(S2-052),

https://cwiki.apache.org/confluence/display/WW/S2-052,漏洞编号为CVE-2017-9805,因为Struts2 REST插件的XStream组件存在反序列化漏洞,导致远程代码执行。Struts 2.5 - Struts 2.5.12版本都会受到该漏洞影响,这个漏洞危险级别被定义为严重级别。

0x01 复现

1. 从struts2的官网下载最后受影响的版本struts-2.5.12,地址: http://archive.apache.org/dist/struts/2.5.12/struts-2.5.12-apps.zip

下载完成之后,解压压缩文件,将其中app目录下的struts2-rest-showcase.war文件放到tomcat的webapps目录下。

2. 访问浏览器http://127.0.0.1:8080/struts2-rest-showcase/页面,会显示图中的页面,选择一个ID,点击编辑。

3. 进入编辑页面,点击submit按钮,burpsuite抓包拦截此数据。

请求,将请求中的Content-Type的值改为 application/xml

然后POST的数据用如下xml内容代替。

4. 重放数据包,成功弹出计算器。

0x02 防御方案

方案一

升级Struts到2.5.13最新版本

方案二

.如果系统没有使用Struts REST插件,那么可以直接删除Struts REST插件,或者在配置文件中加入如下代码,限制服务端文件的扩展名

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

本文分享自微信公众号 - ChaMd5安全团队(chamd5sec)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-09-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏偏前端工程师的驿站

CentOS6.5菜鸟之旅:文件权限详解

一、前言                                   Linux下所有资源、设备均被视作文件来操作,而文件权限则是决定用户可各文件操作的...

19960
来自专栏PHP技术大全

利用PHP扩展Taint找出网站的潜在安全漏洞实践

笔者从接触计算机后就对网络安全一直比较感兴趣,在做PHP开发后对WEB安全一直比较关注,2016时无意中发现Taint这个扩展,体验之后发现确实好用;不过当时在...

17420
来自专栏影子

idea/eclipse下Maven工程集成web服务(tomcat、jetty)

转载请注明出处:http://www.cnblogs.com/funnyzpc/p/8093554.html

14620
来自专栏编程

根据已有网络安装fabric-explorer

1.环境准备: lnodejs 6.9.x(不支持v7.x) lmysql 5.7或更高版本 lHyperledger Fabric 1.0 2.跑通网络: 假...

792100
来自专栏WindCoder

边学边用Gradle:依赖管理

粗略的讲, 依赖管理由两部分组成:项目的 dependencies(依赖项) 和 publications(发布项)。

23710
来自专栏Linux技术资源分享

ubuntu动态一键切换python版本

27240
来自专栏友弟技术工作室

DevOps人员常用的linux命令

以下内容是来自网路,中间加入了自己工作中的使用总结 命令 功能说明 线上查询及帮助命令 (2 个) man 查看命令帮助,命令的词典,更复杂...

38460
来自专栏华章科技

收藏 | Linux常用156个命令汇总!

linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的...

24120
来自专栏木子昭的博客

将Python程序(.py)转换为Windows可执行文件(.exe)第四步:运行测试

python开发者向普通windows用户分享程序,要给程序加图形化的界面(传送门:这可能是最好玩的python GUI入门实例! http://www.jia...

398100
来自专栏影子

idea/eclipse下Maven工程集成web服务(tomcat、jetty)

15320

扫码关注云+社区

领取腾讯云代金券