Apache Struts 2高危漏洞风险提示
【漏洞公告】
2020年12月8日,Apache官方发布Struts 2.0.0到2.5.25版本中存在OGNL表达式注入的远程代码执行漏洞(S2-061)公告,对应CVE编号:CVE-2020-17530,相关链接:
https://cwiki.apache.org/confluence/display/WW/S2-061
根据公告,在Struts 2.0.0到2.5.25版本中,在Struts某些标签属性内强制执行OGNL 表达式,可能导致成远程代码执行效果,恶意攻击者成功利用该漏洞可以获得目标系统管理权限,建议部署有该框架的应用及时升级到漏洞修复的版本。
Apache Struts历史安全公告参考:
https://cwiki.apache.org/confluence/display/WW/Security+Bulletins
【影响范围】
OGNL表达式注入的远程代码执行漏洞(CVE-2020-17530)影响以下版本:
Struts 2.0.0-Struts 2.5.25,建议更新到Struts 2.5.26以上版本
官方下载地址:
http://struts.apache.org/download.cgi
GitHub下载地址:
https://github.com/apache/struts/releases
【漏洞描述】
CVE-2020-17530漏洞,与S2-059漏洞相似,如果开发人员使用了%{...}语法,则攻击者可以在Struts某些标签属性内强制执行OGNL 表达式,造成OGNL表达式二次执行,从而实现代码执行效果。
【缓解措施】
高危:目前漏洞细节已经部分公开,参考S2-059的利用应该很快会出现利用代码,建议及时测试并升级到漏洞修复的版本,或部署必要的安全防护设备拦截恶意攻击代码。
安全开发建议:
基于Struts 2框架的开发不要在标签属性中使用%{...}语法引用未经验证的用户可修改输入,由于Struts 2历史上报过多次漏洞,建议使用该组件的用户多专注官方漏洞公告。