vlambda博客
学习文章列表

【漏洞风险公告】Apache Struts2远程代码执行漏洞(CVE-2021-31805)

【一】背景描述

Apache Struts2框架是一个用于开发Java EE网络应用程序的开源Web框架,可用于创建企业级的Java web应用程序。

近日,迪普安全研究院团队监测到Apache官方在2022年4月12日发布了安全公告,披露了Apache Struts2远程代码执行漏洞(CVE-2021-31805),编号命名为S2-062。该漏洞是对S2-061 Apache Struts2远程代码执行漏洞(CVE-2020-17530)的修复不完整导致的。

由于该框架应用极其广泛且危害大。迪普科技建议使用Apache Struts2的用户及时修补,做好相关防护措施。

【二】严重等级

高危

【三】漏洞描述

由于Struts2会对某些标签属性(比如 id)的属性值进行二次表达式解析,因此可以通过控制标签属值传入一个 %{payload}造成OGNL表达式执行。

在S2-061 Apache Struts2远程代码执行漏洞(CVE-2020-17530)中,攻击者可以通过实例化一个无参构造函数来绕过OGNL沙盒的限制。但当开发人员使用了 %{…} 语法进行强制OGNL解析时,仍有一些特殊的TAG属性可被二次解析,造成了S2-062 Apache Struts2远程代码执行漏洞(CVE-2021-31805)。攻击者可以利用该漏洞构造恶意的OGNL表达式来进行远程代码执行。

【四】影响范围

2.0.0 ≤ Apache Struts ≤ 2.5.29

【五】解决方案

官方解决方案

目前官方已发布最新版本,请受影响用户尽快更新,下载链接:https://struts.apache.org/download.cgi#struts-ga

临时解决方案

1)验证传入Struts的标签属性值,过滤%{…}这种危险的语法。

2)开启ONGL表达式注入保护

迪普科技解决方案

迪普科技安全服务团队可协助客户进行现网使用Apache Struts2的信息资产的梳理,并帮助客户进行版本升级指导以及安全配置等各种安全加固工作。如服务器疑似被入侵,迪普科技可安排安全服务专家针对网络安全入侵事件,为客户提供快速应急响应支撑服务以及专业的安全建设建议,并指导客户完善安全防护措施。




联系我们



迪普科技安全服务拥有中国信息安全测评中心、中国网络安全审查技术与认证中心、中国通信企业协会、公安部一所等机构认证,作为中国国家信息安全漏洞库一级技术支撑单位,依托业内一流的安全服务专家团队和丰富的行业经验积累,以高质量、高标准的理念,为各行业客户提供全面、深度涵盖信息系统规划立项、设计开发、建设实施、运行维护和系统废弃全生命周期的安全服务,帮助客户建立并持续完善网络安全技术和安全管理体系,提升客户信息系统的整体安全防护水平。