近日,互联网上披露了有关Apache Struts2存在远程代码执行漏洞(CNNVD-201606-150)和拒绝服务漏洞(CNNVD-201606-151)的情况。6月1日,Apache官方网站针对上述漏洞发布了修复方案(S2-033,S2-034)。其中S2-033的修复方案中提出升级至最新版本Struts可修复该漏洞,但经分析,最新版本的Struts中,漏洞依然存在。国家信息安全漏洞库(CNNVD)对此进行了跟踪分析。详细情况如下:
一、漏洞简介
Apache Struts2是Apache基金会发布的一款实现了MVC模式的中间件软件,广泛应用于Web开发和大型网站建设。
1、Apache Struts 2.3.20版本至2.3.28版本(除2.3.20.3和2.3.24.3)中存在远程代码执行漏洞(漏洞编号:CNNVD-201606-150,CVE-2016-3087)。
2、Apache Struts 2.0.0版本至2.3.24.1版本中存在拒绝服务漏洞(漏洞编号:CNNVD-201606-151,CVE-2016-3093)。
3、根据Apache官方公告,上述漏洞分别由HPE公司和百度公司的安全研究人员提交。Apache官方网站于2016年6月1日针对这两个漏洞分别发布了安全公告S2-033和S2-034。其中安全公告S2-033远程代码执行漏洞的修复方案中提出可以将受漏洞影响的Struts2升级至2.3.20.3、2.3.24.3或2.3.28.1版本即可修复此漏洞。但经安恒信息研究院的安全研究人员分析证实该升级方案并未对漏洞进行任何修复,漏洞仍然存在。
二、漏洞危害
由于Struts2广泛应用于大型互联网企业、政府、金融机构等网站建设,影响范围较广。根据CNNVD数据统计,目前超过3万个网站使用了Struts2。
远程攻击者可利用上述漏洞,对受影响的服务器实施远程攻击,从而导致任意代码执行或服务器拒绝服务。
三、修复措施
1、部署Apache Struts2的单位,应及时检查所使用的Struts2版本是否在受影响范围内。如受影响,可采取以下缓解方案:
(1)针对CNNVD-201606-150漏洞,在允许的情况下禁用动态方法调用(DynamicMethodInvocation),修改Struts2的配置文件struts.xml,将struts.enable. DynamicMethodInvocation设置为“false”)。
(2)针对CNNVD-201606-151漏洞,将OGNL版本升级到3.0.12以上,或者将Struts升级到最新版本。公告链接:http://struts.apache.org/docs/s2-034.HTML。
2、部署受影响Struts版本的单位应密切关注Apache官方网站发布的相关信息,及时修复漏洞,消除隐患。
本报告由CNNVD技术支撑单位--杭州安恒信息技术有限公司、北京神州绿盟科技有限公司等公司提供支持(排名不分先后)。
CNNVD将继续跟踪上述漏洞的相关情况,及时发布相关信息。如有需要,可与CNNVD及时联系。
联系方式:[email protected]。
![weinxin](http://zone.ci/zone_ci_images/zone.ci.png)
评论