阿里云首页 阿里云安全产品和技术

【漏洞公告】CVE-2017-5638:基于 Jakarta plugin插件的Struts远程代码执行漏洞(S2-045)

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

漏洞详情见下文。

漏洞编号

CVE-2017-5638

漏洞名称

基于Jakarta plugin插件的Struts远程代码执行漏洞

官方评级

高危

漏洞描述

该漏洞是由于上传功能的异常处理函数没有正确处理用户输入的错误信息,导致远程攻击者可通过修改HTTP请求头中的Content-Type值,构造发送恶意的数据包,进而在受影响服务器上执行任意系统命令。

漏洞利用条件和方式

黑客通过Jakarta 文件上传插件实现远程利用该漏洞执行代码。

漏洞影响范围

  • Struts 2.3.5~Struts 2.3.31

  • Struts 2.5~Struts 2.5.10

漏洞修复建议(或缓解措施)

  • Struts 2默认用Jakarta的Common-FileUpload的文件上传解析器,这是存在漏洞的,默认为以下配置:struts.multipart.parser=jakarta。您可以指定其他类型的解析器,以使系统避免漏洞的影响,如指定使用COS的文件上传解析器struts.multipart.parser=cos或指定使用Pell的文件上传解析器。

  • 阿里云建议您升级Struts到Struts 2.3.32Struts 2.5.10.1版本。

  • 使用阿里云云盾WAF进行防护。

注意

在升级前请做好快照备份。

情报来源

S2-045

首页 阿里云安全产品和技术 安全漏洞预警 Web应用安全漏洞 Web应用服务器 【漏洞公告】CVE-2017-5638:基于 Jakarta plugin插件的Struts远程代码执行漏洞(S2-045)