Struts框架S2-056漏洞预警
2018-03-28
一. 漏洞概述
S2-056漏洞发生于Apache Struts2的REST插件,当使用XStream组件对XML格式的数据包进行反序列化操作,且未对数据内容进行有效验证时,攻击者可通过提交恶意XML数据对应用进行远程DoS攻击。
官方通告如下:
https://cwiki.apache.org/confluence/display/WW/S2-056
受影响的版本
Struts 2.1.1 - Struts 2.5.14.1
不受影响的版本
Struts 2.5.16
三. 解决建议
Apache Struts官方在新版本2.5.16版本中针对S2-056漏洞进行了防护,建议应用Apache Struts2 REST插件的用户排查框架版本是否受漏洞影响,及时升级框架并替换XML解析器为Jackson XML处理类JacksonXmlHandler。
1.登录到官网的下载页面,下载Apache Struts 2.5.16,并升级应用框架:
http://struts.apache.org/download.cgi
2.除Struts 2框架依赖包外,还需要引入Jackson组件的相关依赖包,如:
|
3.在应用系统的struts.xml配置文件中配置xml解析器为Struts 2.5.16版本提供的JacksonXmlHandler类。示例如下:
|
然后配置struts.properties文件中,使自定义的xml处理器覆盖框架默认解析器。示例如下:
struts.rest.handlerOverride.xml=myXml |
四. 声 明
本安全公告仅用来描述可能存在的安全问题,js1996官网登录不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,js1996官网登录以及安全公告作者不为此承担任何责任。
js1996官网登录拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经js1996官网登录允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。