近期,我中心主办的国家信息安全漏洞共享平台收录了Apache Struts存在一个远程命令执行高危漏洞(编号:CNVD-2013-25061,对应CVE-2013-1966)。综合利用漏洞,可发起远程攻击,轻则窃取网站数据信息,严重的可取得网站服务器控制权,构成信息泄露和运行安全威胁。现将有关情况通报如下:
一、漏洞情况分析
Apache Struts2 是第二代基于Model-View-Controller (MVC)模型的JAVA企业级WEB应用框架。根据分析结果,Apache Struts2的s:a和s:url标签都提供了一个includeParams属性,当该属性被设置为get或all时,Apache Struts2会将用户提交的参数值作为OGNL表达式执行。攻击者通过构造特定的OGNL表达式,进而执行Java代码或操作系统指令。
二、漏洞影响评估
CNVD对该漏洞的评级为“高危”,Apache Struts 2.0.0 - 2.3.14受到漏洞影响。该漏洞与在2012年对我国境内政府和重要信息系统部门、企事业单位网站造成严重威胁的漏洞(CNVD-2012-09285,对应CVE-2012-0392)相比,利用前提条件有所限制,但技术评级相同且受影响版本更多。
2013年4月起,CNVD就陆续接收到漏洞研究者针对该漏洞的相关网站测试案例报告,当中包括多种形式的涉及Windows/Linux平台的漏洞利用代码。
三、漏洞处置建议
5月22日,Apache官方提供了用于修复漏洞的软件升级版本Struts 2.3.14.1,但根据CNVD成员单位测试结果,该版本并未彻底修复漏洞,部分利用代码仍可以成功发起攻击。相关建议如下:
(一)相关用户应密切关注厂商发布的安全公告,下载软件最新版本,做好升级部署。
(二)可以采用临时措施,将页面中使用的includeParams参数值暂时设置为none。(注意:这有可能导致关联代码无法实现原有的一些功能。)
CNCERT/CNVD将继续跟踪事件后续情况,做好国内相关用户受影响情况的监测和预警工作。同时,请国内相关单位做好信息系统应用情况排查工作,及时采取措施。如需技术支援,请联系CNVD。电子邮箱:vreport@cert.org.cn,联系电话:010-82990286。
参考链接:
https://cwiki.apache.org/confluence/display/WW/S2-013
http://www.cnvd.org.cn/flaw/show/CNVD-2012-25061
http://www.nsfocus.net/vulndb/23747
(注:CNVD成员单位——绿盟科技公司协助对漏洞情况进行了较为深入的分析)