Struts S2-052漏洞利用方式实验解析(附EXP)

Posted FreeBuf

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Struts S2-052漏洞利用方式实验解析(附EXP)相关的知识,希望对你有一定的参考价值。

Struts2的漏洞之王大之名相信已经家户喻晓了。从S2-003、S2-005、S2-007、S2-008、S2-009、S2-012~S2-016、S2-037、S2-045、S2-048.等等,而2017年9月5日又收到来自Struts2新的“惊喜”——S2-052。

实验环境

靶机:101.200.58.* (win2008x64+tomcat8.5+Struts 2.5.12

http://101.200.58.*:8080/struts2-rest-showcase/orders.xhtml

    ![Clipboard Image.png](http://image.3001.net/images/20170907/15047245718998.png!small)

一、判断操作系统及端口开放:

本机使用nmap识别一下操作系统(重要):

   nmap -o 101.200.58.*

根据下图目标开放的端口(135.139.445.3389)可以知道:目标使用的是windows系统。

二、环境要求及EXP下载:

因为EXP是用go语言编写的,如果你没有go环境的话,需要搭建一下。

https://www.golangtc.com/static/go/1.9/go1.9.windows-386.zip (32位)

https://www.golangtc.com/static/go/1.9/go1.9.windows-amd64.zip(64位)

三、漏洞证明:

EXP使用方法:

   go run main.go -u URL -c “command”

因为这个EXP脚本没实现回显功能,其实我们可以把命令结果输出文件到网站目录下面,这样我们使用浏览器访问这个文件就可以看到回显内容了

执行(windows环境下):

   go run main.go -u http://101.200.58.*:8080/struts2-rest-showcase/orders.xhtml -c "cmd /c  whoami >>.\webapps\ROOT\cmd.txt"

Struts S2-052漏洞利用方式实验解析(附EXP)

发现命令的执行成功的结果已经写入到网站根目录下的cmd.txt,并且权限是最高权限。

四、控制服务器:

*为防止恶意利用,此实验具体内容隐藏

   漏洞影响

Struts 2.5 – Struts 2.5.12 版本,可能影响到 2.3.33 版本。

解决方案

1.建议尽快升级到 2.5.13版本。

2.在不使用时删除 Struts REST插件,或仅限于服务器普通页面和JSONs:

以上是关于Struts S2-052漏洞利用方式实验解析(附EXP)的主要内容,如果未能解决你的问题,请参考以下文章

9.12安全帮每日资讯:Struts2 新漏洞(S2-052)出现利用实例;黑白名单要你何用;黑客可以远程访问医用注射泵

联想安全实验室:Struts2 S2-052 漏洞复现

漏洞分析Struts2 S2-052(CVE-2017-9805)远程代码执行漏洞分析

Struts2 新漏洞(S2-052)出现利用实例,面对漏洞企业应当分秒必争

转载Struts2 S2-052 RCE分析与利用

漏洞 | 启明星辰ADLab:Struts2 S2-052 RCE分析与利用