首页 -> 安全研究

安全研究

紧急通告
绿盟科技紧急通告(Alert2016-04)

NSFOCUS安全小组(security@nsfocus.com)
http://www.nsfocus.com

Apache Struts2 方法调用远程代码执行漏洞(CVE-2016-3081)

发布日期:2016-04-27

CVE ID:CVE-2016-3081

受影响的软件及系统:
====================
Apache Struts 2.3.18 - 2.3.28(除去2.3.20.3和2.3.24.3)

未受影响的软件及系统:
======================
Apache Struts 2.3.18以下版本
  Apache Struts 2.3.20.3
  Apache Struts 2.3.24.3
  Apache Struts 2.3.28.1

综述:
======
Apache Struts2公布的CVE-2016-3081漏洞,在用户开启动态方法调用的情况下,攻击者通过提交精心构造请求,可远程执行任意命令。

Apache Struts2已经在2.3.20.3、2.3.24.3和2.3.28.1中修复了此安全问题。

分析:
======
Struts2 是第二代基于Model-View-Controller (MVC)模型的web应用框架。 Struts2是java企业级web应用的可扩展性的框架。它是WebWork和Struts社区合并后的产物。

Apache Struts2在2.3.18版本之前,对于动态方法调用使用的是反射的方法,但是在2.3.18版本开始启用了OGNL表达式处理这种功能,但由于此功能内容可以被用户操控,导致攻击者可以构造OGNL表达式实现代码执行。

解决方法:
==========
如果不能及时安装补丁,建议采用如下防护措施:

* 禁用动态方法调用。

修改Struts2的配置文件,如下所示:

<constant name="struts.enable.DynamicMethodInvocation" value="false" />;

注意:禁用动态方法调用有可能导致正常功能失效。

厂商状态:
==========
厂商已经发布了最新版本2.3.20.3、2.3.24.3和2.3.28.1以修复此安全问题,强烈建议Apache Struts2用户立刻升级到最新版本。

下载地址:

https://struts.apache.org/download.cgi

附加信息:
==========
1. https://cwiki.apache.org/confluence/display/WW/S2-032
2. http://blog.nsfocus.net/struts2-method-calls-remote-code-execution-vulnerability/

声 明
==========

本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。绿盟科技拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。

关于绿盟科技
============

绿盟科技(NSFOCUS Co., Ltd.)是中国网络安全领域的领导企业,致力于网络和系统安全问题的研究、高端网络安全产品的研发、销售与网络安全服务,在入侵检测/保护、远程评估、 DDoS攻击防护等方面提供具有国际竞争能力的先进产品,是国内最具安全服务经验的专业公司。有关绿盟科技的详情请参见: http://www.nsfocus.com

© 2017 绿盟科技