漏洞描述:
Apache Struts 2 是一个免费、开源的MVC框架,用于创建Java Web应用程序。
2023年6月15日,Apache发布安全公告,修复了Struts 2中的两个拒绝服务漏洞,其中一个漏洞编号为CVE-2023-34149,漏洞危害等级:中危。
Apache Struts 2中,先前向XWorkListPropertyAccessor 添加了 autoGrowCollectionLimit,但它只处理 setProperty() 而不处理 getProperty()。如果开发人员已将底层Collection 类型字段的 CreateIfNull 设置为 true,可能会由于未正确检查列表边界而导致OOM(内存耗尽),造成拒绝服务。
影响版本:
2.0.0 <=Apache Struts2<2.5.31
6.0.0<=Apache Struts2<6.1.2.1
修复建议
正式防护方案:
官方已发布新版本中修复上述漏洞,受影响用户请尽快升级到安全版本。
漏洞修复版本:
Apache Struts >= 2.5.31
Apache Struts >= 6.1.2.1
参考链接:
https://github.com/apache/struts/releases
临时防护方案:
将 Collection 类型字段的 CreateIfNull 设置为 false(如果未设置,则默认为false)。