公共服务

安全公告
关于Struts S2-059/S2-060安全漏洞的安全公告
时间   2020年08月14日 09:10
作者    责任编辑   lgc

一、情况分析

北京时间8月13日,Struts官方发布新的安全通告,公布了2个安全漏洞:S2-059(CVE-2019-0230)是一个潜在的远程代码执行漏洞,S2-060(CVE-2019-0233)是一个拒绝服务漏洞。

这2个漏洞均已在2019年11月份发布的Struts 2.5.22版本中修复,建议未升级的用户尽快升级进行防护。

通告链接:https://struts.apache.org/announce.html#a20200813

  • S2-059

该漏洞(CVE-2019-0230)源于Apache Struts的框架在被强制使用时,会对标签的属性进行二次求值,这可能导致远程代码执行。只有在Struts标签属性中强制使用OGNL表达式时,才能触发漏洞。

更多信息:https://cwiki.apache.org/confluence/display/ww/s2-059

  • S2-060

该漏洞(CVE-2019-0233)源于在上传文件时,攻击者可以通过一个特别的请求造成访问权限的错误,从而导致上传操作失败,造成拒绝服务攻击。

更多信息:https://cwiki.apache.org/confluence/display/ww/s2-060

影响范围

  • Struts 2.0.0 – Struts 2.5.20

处置建议

Struts官方已经发布了新版本修复了上述漏洞,请受影响的用户尽快升级进行防护。

若不方便升级的用户,可以参考Struts官方提供的缓解措施:

  • S2-059

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

  2. 考虑激活Proactive OGNL Expression Injection Protection。

参考链接:https://cwiki.apache.org/confluence/display/ww/s2-059

  • S2-060

在struts-default.xml文件中,找到struts.excludedPackageNames常数,并将jave.io.以及java.nio.添加到其属性中。

参考链接:https://cwiki.apache.org/confluence/display/WW/S2-060