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

发布时间 2020-08-14

0x00 漏洞概述


CVE   ID

CVE-2019-0230

   

2020-08-14

  

RCE

   

高危

远程利用

影响范围

Apache Struts 2.0.0-2.5.20


0x01 漏洞详情



Apache Struts是美国阿帕奇(Apache)软件基金会负责维护的一个开源项目,是一套用于创建企业级Java Web应用的开源MVC框架。

2020年8月13日,Apache官方发布公告,修复了一个Apache Struts2远程代码执行漏洞(CVE-2019-0230)。该漏洞源于Struts 2会对某些标签的属性值进行二次表达式解析,当使用%{...} or ${...}语法对标签属性进行强制解析的情况下,OGNL表达式中引用未经验证的用户输入,通过构造恶意的OGNL表达式,导致远程代码执行。


0x02 处置建议


Apache官方已经发布新版本,请升级到Struts 2.5.22或更高版本,下载地址:

https://cwiki.apache.org/confluence/display/WW/Version+Notes+2.5.22

临时措施:

1. 将输入参数的值重新分配给某些Struts的标签属性时,始终对其进行验证;

2. 除非有有效的用例,否则不要在值以外的标签属性中使用%{...}或$ {...}语法引用可修改的输入,参考链接:

https://struts.apache.org/security/#use-struts-tags-instead-of-raw-el-expressions

3. 开启ONGL表达式注入保护,参考链接:

https://struts.apache.org/security/#proactively-protect-from-ognl-expression-injections-attacks-if-easily-applicable



0x03 相关新闻


0x04 参考链接


https://cwiki.apache.org/confluence/display/WW/S2-059


0x05 时间线


2020-08-13 Apache官方发布公告

2020-08-14 VSRC发布漏洞通告