近日,亚信宁静CERT监测发现Apache官方宣布了Apache Struts2的风险通告,漏洞编号为CVE-2021-31805。该漏洞由于对CVE-2020-17530的修复不完整造成的,CVE-2020-17530漏洞是由于Struts2 会对某些标签属性(好比id) 的属性值进行二次表达式解析,因此当这些标签属性中使用了 %{x} 且 其中x 的值用户可控时,用户再传入一个 %{payload} 即可造成OGNL表达式执行。在CVE-2021-31805漏洞中,仍然存在部门标签属性会造成攻击者恶意结构的OGNL表达式执行,导致远程代码执行。
由于官方已经宣布宁静版本,亚信宁静CERT建议宽大用户实时将Apache Struts2升级到2.5.30以上最新版本。
Apache Struts 2是一个用于开发Java EE网络应用法式的开放源代码网页应用法式架构。它利用并延伸了Java Servlet API,勉励开发者接纳MVC架构。