Apache Struts2 远程代码执行漏洞CVE-2019-0230

  • A+
所属分类:安全漏洞

Apache Struts2存在远程代码执行漏洞,编号CVE-2019-0230。Struts2在某些标签属性中使用OGNL表达式时,因为没有做内容过滤,在传入精心构造的请求时,可以造成OGNL二次解析,执行指定的远程代码。





漏洞名称:Apache Struts2远程代码执行漏洞CVE-2019-0230

威胁等级:高危

影响范围:Struts 2.0.0 - 2.5.20

漏洞类型:远程代码执行






漏洞分析


1 Apache Struts2组件介绍

Apache Struts2是一个基于MVC设计模式的Web应用框架。在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2可以理解为WebWork的更新产品。


2 漏洞描述

Struts2在某些标签属性中使用OGNL表达式时,因为没有做内容过滤,在传入精心构造的请求时,可以造成OGNL二次解析,执行指定的远程代码。

<s:url var="url" namespace="/employee" action="list"/><s:a id="%{skillName}" href="%{url}">List available Employees</s:a>

在上面的例子中。如果攻击者可以修改skillName的值,并传入一个恶意的OGNL表达式,最终就可以导致远程代码执行。


影响范围


目前受影响的Struts2版本:

Struts 2.0.0 - 2.5.20


解决方案


1修复建议

Struts 2.5.22及以后的版本已经修复此漏洞,请受漏洞影响的用户下载最新版本。

下载链接:

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


2 深信服解决方案

深信服下一代防火墙】可轻松防御此漏洞, 建议部署深信服下一代防火墙的用户更新至最新的安全防护规则,可轻松抵御此高危风险。


深信服云盾】已第一时间从云端自动更新防护规则,云盾用户无需操作,即可轻松、快速防御此高危风险。


深信服安全感知平台】可检测利用该漏洞的攻击,实时告警,并可联动【深信服下一代防火墙等产品】实现对攻击者ip的封堵。


深信服安全运营服务】深信服云端安全专家提供7*24小时持续的安全运营服务。对存在漏洞的用户,检查并更新了客户防护设备的策略,确保客户防护设备可以防御此漏洞风险。


时间轴


2020/8/13



Apache Struts官网披露该远程代码执行漏洞。

2020/8/14



深信服千里目安全实验室发布漏洞安全通告。


参考链接


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



点击阅读原文,及时关注并登录深信服智安全平台,可轻松查询漏洞相关解决方案

Apache Struts2 远程代码执行漏洞CVE-2019-0230


发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: