# Apache Struts2远程代码执行漏洞S2-062(CVE-2021-31805)
2022 年 4 月 12 日,Apache 官方公布 S2-062 远程代码执行漏洞安全公告,漏洞编号为 CVE-2021-31805。
## 漏洞描述
该漏洞为S2-061的修复不完全,当开发人员使用了 %{…} 语法进行强制OGNL解析时,仍有一些特殊的TAG属性可被二次解析;攻击者可构造恶意的OGNL表达式触发漏洞,从而实现远程代码执行。
Apache Struts是用于创建Java Web应用程序的开源框架,应用非常广泛。该漏洞已在Struts 2.5.30版本中修复,建议相关用户尽快升级版本进行防护。
## 漏洞评级
高危
## 漏洞编号
CVE-2021-31805
## 影响范围
2.0.0 <= Apache Struts <= 2.5.29
## 修复建议
1.升级到 Struts 2.5.30 或更高版本。
2.将输入参数的值重新分配给某些Struts的标签属性时,始终对其进行验证,不要在值以外的标签属性中使用%{…} 语法引用用户可修改的输入。
3.开启ONGL表达式注入保护。
**参考来源**
https://mp.weixin.qq.com/s/Y4Xx8Lp_-hjHlqL_xVyYTQ
http://blog.nsfocus.net/apache-struts-cve-2021-31805/