Struts2漏洞和StrutsScan工具实战-创新互联

一、Apache Struts 2漏洞背景

1.漏洞详情

2017年3月6日,Apache Struts 2被曝存在远程命令执行漏洞。在使用基于Jakarta插件的文件上传功能条件下,恶意用户可以通过修改HTTP请求头中的Content-Type值构造恶意代码,在服务器上执行系统命令,完全控制该服务器,最后达到挖矿、对外攻/击、数据窃取勒索、篡改为菠菜站等目的。漏洞利用所需组件默认启用,风险等级为高危。

创新互联主要从事做网站、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务兴山,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

2.漏洞编号

  • CVE-2017-5638
  • CNNVD-201703-152

3.影响的Struts2版本

  • Struts 2.3.5 – Struts 2.3.31
  • Struts 2.5 – Struts 2.5.1

4.解决方案

(1)临时解决方案:删除commons-fileupload-x.x.x.jar文件(会造成上传功能不可用)。

(2)根本解决方案:升级版本至Apache Struts 2.3.32 或 Apache Struts 2.5.10.1 以消除漏洞影响。涉及版本变更,升级前应做好数据备份。

补丁地址:
Struts 2.3.32: https://github.com/apache/struts/releases/tag/STRUTS_2_3_32
Struts 2.5.10.1: https://github.com/apache/struts/releases/tag/STRUTS_2_5_10_1

5.自行检测方法

查看web目录下/WEB-INF/lib/目录下的struts2-core-x.x.x.jar文件,如果x代表的版本号在2.3.5到2.3.31 以及2.5到2.5.10之间且未修改默认配置则存在漏洞。

二、Struts Scan工具介绍

使用场景:在主机外围验证漏洞存在与否。
使用前提:需要主机有python环境,如何安装自行百度。

1.Struts Scan工具下载地址

(1)【推荐】Lucifer原创在GitHub: https://github.com/Lucifer1993/struts-scan

Struts2漏洞和Struts Scan工具实战

(2)在百度网盘备份了一份:https://pan.baidu.com/s/1ji8uTB73gXMFaTyW5r6Jbg 密码:99f4

2.Struts Scan工具使用方法

(1)将下载的安装包上传到云主机任意目录下,我上传到/root/struts-scan/

Struts2漏洞和Struts Scan工具实战

(2)使用方法:

• python struts-scan.py http://example.com/index.action 检测
• python struts-scan.py -u http://example.com/index.action -i struts2-045 进入指定漏洞交互式shell
• python struts-scan.py -f url.txt 批量检测

示例:python struts-scan.py http://www.baidu.com
Struts2漏洞和Struts Scan工具实战

注意:如果python报错:

Traceback (most recent call last):
 File "struts-scan.py", line 13, in 
    from termcolor import cprint
ImportError: No module named termcolor

根据报错,执行如下命令后解决:

yum install python-pip
   pip install termcolor

三、入/侵分析案例

1.2017-12-25 某一云租户的CPU持续较高,经过排查是一个名为md的恶意进程,位置/var/tmp/.c4k/,且在crontab里加了定时任务。

Struts2漏洞和Struts Scan工具实战

Struts2漏洞和Struts Scan工具实战

2.微步在线坚定为比特币挖矿木/马:

Struts2漏洞和Struts Scan工具实战

3.网站目录下/WEB-INF/lib/目录下,发现了存在漏洞struts2库2.3.15。

Struts2漏洞和Struts Scan工具实战

利用struts scan判断存在struts2-045、struts2-048漏洞

Struts2漏洞和Struts Scan工具实战

4.本文列出的为关键步骤,其实分析过程中我们还分析了弱口令爆破、/var/log/secure日志、配置文件server.xml等,常规分析参考我的Linux入/侵分析三部曲。

终于最后聚焦到struts2漏洞,从此此漏洞可以作为网站类主机入/侵溯源分析的一个检查点,列入TSG(Troubleshooting Guide),提高效率。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前文章:Struts2漏洞和StrutsScan工具实战-创新互联
链接分享:http://pwwzsj.com/article/coosds.html