首页 互联前沿 资讯快报 浏览内容
Apache Struts2高危漏洞,需注意防范
据国家网络与信息安全信息通报中心通报,Apache Struts 2软件存在远程命令执行高危漏洞,Struts2官方已经确认该漏洞,漏洞编号为CVE-2017-5638,受影响的版本包括Struts2.3.5到Struts2.3.31以及 Struts2.5到Struts2.5.10。黑客可以利用该漏洞通过浏览器在远程服务器上执行任意系统命令,对受影响站点造成严重影响,引发数据泄露、网页篡改、植入后门、成为肉鸡等安全事件。
目前,Struts 2软件广泛应用于政府、金融、中央企业等网站建设,并作为网站开发的底层模板使用,特别是互动性较强的用于报名、注册、查询、留言的信息系统,国内超过300万家政府网站及其子站使用了Struts框架。请单位立即核查单位网站安全情况,排查该漏洞,发现漏洞要第一时间整改,及时堵塞漏洞,消除安全隐患,提高安全防范能力。
一、漏洞情况分析
Struts2是第二代基于Model-View-Controller(MVC)模型的java企业级web应用框架,并成为当时国内外较为流行的容器软件中间件。jakarta是apache组织下的一套Java解决方案的开源软件的名称,包括很多子项目。Struts就是jakarta的紧密关联项目。
根据CNVD技术组成员单位——杭州安恒信息技术有限公司提供的分析情况,基于JakartaMultipart parser的文件上传模块在处理文件上传(multipart)的请求时候对异常信息做了捕获,并对异常信息做了OGNL表达式处理。但在在判断content-type不正确的时候会抛出异常并且带上Content-Type属性值,可通过精心构造附带OGNL表达的URL导致远程代码执行。
CNVD对漏洞的综合评级均为“高危”。由于struts 2.3.5之前的版本存在S2-016漏洞,因此有较多升级后的Apache struts2的版本为2.3.5及以上版本,极有可能受到漏洞的影响。
二、漏洞影响范围
受漏洞影响的版本为:Struts2.3.5-Struts2.3.31, Struts2.5-Struts2.5.10。截至7日13时,互联网上已经公开了漏洞的攻击利用代码,同时已有安全研究者通过CNVD网站、补天平台提交了多个受漏洞影响的省部级党政机关、金融、能源、电信等行业单位以及知名企业门户网站案例。根据CNVD秘书处抽样测试结果,互联网上采用Apache Struts 2框架的网站(不区分Struts版本,样本集>500,覆盖政府、高校、企业)受影响比例为60.1%。
三、漏洞处置建议
Apache Struts官方已在发布的新的版本中修复了该漏洞。建议使用Jakarta Multipartparser模块的用户升级到Apache Struts版本2.3.32或2.5.10.1。除了升级struts版本外,为有效防护漏洞攻击,建议用户采取主动检测、网络侧防护的方法防范黑客攻击:
(一)无害化检测方法(该检测方法由安恒公司提供):
在向服务器发出的http请求报文中,修改Content-Type字段:
Content-Type:%{#context['com.opensymphony.xwork2.dispatcher.HttpServletResponse'].addHeader('vul','vul')}.multipart/form-data,如返回response报文中存在vul:vul字段项则表明存在漏洞。
(二)网络侧防护技术措施
建议在网络防护设备上配置过滤包含如下#nike='multipart/form-data' 以及#container=#context['com.opensymphony.xwork2.ActionContext.container'字段串(及相关字符转义形式)的URL请求。
四、修复措施
目前,Apache官方已针对该漏洞发布安全公告。请受影响用户及时检查是否受该漏洞影响
自查方式
用户可查看web目录下/WEB-INF/lib/目录下的struts-core.x.x.jar 文件,如果这个版本在Struts2.3.5 到 Struts2.3.31 以及 Struts2.5 到 Struts2.5.10之间则存在漏洞。
升级修复
受影响用户可升级版本至Apache Struts 2.3.32 或 Apache Struts 2.5.10.1以消除漏洞影响。
临时缓解
如用户不方便升级,可采取如下临时解决方案:
l 删除commons-fileupload-x.x.x.jar文件(会造成上传功能不可用)。
附:参考链接:
https://cwiki.apache.org/confluence/display/WW/S2-045
http://www.cnvd.org.cn/flaw/show/CNVD-2017-02474