网络安全检测与防护技术
国家地方联合工程研究中心深圳分中心

靶场科普 | Struts2远程命令执行漏洞(CVE-2017-5638)

发表时间:2021-08-18 15:09

本文由“网络安全检测与防护技术国家地方联合工程研究中心深圳分中心——东塔网络安全学院”总结归纳

靶场介绍

Struts2远程命令执行漏洞(CVE-2017-5638)

靶场科普 | Struts2远程命令执行漏洞(CVE-2017-5638)


今天,给大家介绍一下“东塔攻防世界”其中的一个靶场:“Struts2远程命令执行漏洞(CVE-2017-5638)”。


一、实验介绍

1.漏洞描述

1)Struts 2被曝存在远程命令执行漏洞,漏洞编号S2-045,CVE编号CVE-2017-5638,在使用基于Jakarta插件的文件上传功能时,有可能存在远程命令执行,导致系统被黑客入侵。

2)恶意用户可在上传文件时通过修改HTTP请求头中的Content-Type值来触发该漏洞,进而执行系统命令。

2.漏洞危害:

1)在default.properties文件中,struts.multipart.parser的值有两个选择,分别是jakarta和pell。其中的jakarta解析器是Struts 2框架的标准组成部分。默认情况下jakarta是启用的,所以该漏洞的严重性需要得到正视。

2)恶意访问者可通过远程命令注入执行,令系统执行恶意命令,导致被黑客入侵,从而威胁服务器安全,影响极大。

靶场科普 | Struts2远程命令执行漏洞(CVE-2017-5638)


二、实验目的

1.了解S2-cve Struts2远程命令执行漏洞危害

2.了解漏洞的产生方式

3.掌握检测修复S2-cve Struts2远程命令执行漏洞技术


三、实验步骤

1.打开实验连接,使用工具进行获取信息

2.使用工具,执行命令


四、修复建议

1.建议用户升级到不受影响的最新版本(Struts2 2.3.32或Struts 2.5.10.1)

3.在用户不便进行升级的情况下,作为临时的解决方案,用户可以进行以下操作来规避风险:

1)修改WEB-INF/classes目录下的struts.xml中的配置

2)配置过滤器过滤Content-Type的内容