速修复!这个严重的 Apache Struts RCE 漏洞补丁不完整
聚焦源代码安全,网罗国内外最新资讯!
编译:代码卫士团队
数字化时代,软件无处不在。软件如同社会中的“虚拟人”,已经成为支撑社会正常运转的最基本元素之一,软件的安全性问题也正在成为当今社会的根本性、基础性问题。
随着软件产业的快速发展,软件供应链也越发复杂多元,复杂的软件供应链会引入一系列的安全问题,导致信息系统的整体安全防护难度越来越大。近年来,针对软件供应链的安全攻击事件一直呈快速增长态势,造成的危害也越来越严重。
为此,我们推出“供应链安全”栏目。本栏目汇聚供应链安全资讯,分析供应链安全风险,提供缓解建议,为供应链安全保驾护航。
注:以往发布的部分供应链安全相关内容,请见文末“推荐阅读”部分。
为此,网络安全和基础设施安全局 (CISA) 督促用户和管理员升级至Struts最新的已修复版本。
Struts 是Java web 开发人员构建 MVC 应用所用的开源应用开发框架。
本周,DHS CISA 督促组织机构升级至 Struts2 版本 2.5.30(或更高版本),修复严重的OGNL 注入漏洞 (CVE-2021-31805)。该漏洞存在于 Struts 2 版本2.0.0至2.5.29版本中,是由CVE-2020-17530的修复方案不完整造成的,CVSS评分为9.8。
对象图导航语言 (OGNL) 是适用于Java 的开源表达式语言,它简化了Java 语言中所用的表达式范围。OGNL 还可使开发人员更轻松地处理数组。但从安全角度来看,解析基于不受信任或原始用户输入的OGNL表达式可能会触发问题。
2020年,GitHub 公司的研究员 Alvaro Munoz 和 Aeye 安全实验室的研究员 Masato Anzai 就发现在特定情况下,Struts2 版本 2.0.0-2.5.25中存在一个“双重评估”缺陷。
CVE-2020-17530 安全公告中提到,“如果开发人员通过 %{…} 语法应用强制的 OGNL 评估,则标签的某些属性可执行双重评估。在不受信任的用户输入上使用强制的OGNL评估可导致远程代码执行和安全降级。”
尽管Apache 已经修复了上述漏洞,但研究员 Chris McCown 之后发现该修复方案不完整。于是他负责任地告知Apache 称,“双重评估”问题仍然可在 Struts 版本2.5.26及更高版本中重现,并获得漏洞编号CVE-2021-31805。
建议用户升级到Struts 2.5.30或后续版本,并避免在基于不受信任的用户输入的标签属性中使用强制的OGNL评估。另外,Apache 建议使用其最佳实践的安全指南。
今年是Java 组件爆发高危漏洞如 Log4Shell 和 Spring4Shell 的一年。加上Struts 中的这个严重漏洞复活,安全专业人员和组织机构可能需要密切审查自己的web 服务器环境。
威胁行动者还访问了约20.9万名美国用户的信用卡号。Equifax 公司并未披露受影响个人的确切信用卡号,只是表示事件还影响了英国和加拿大居民。
https://www.bleepingcomputer.com/news/security/critical-apache-struts-rce-vulnerability-wasnt-fully-fixed-patch-now/
题图:Pixabay License
本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。
奇安信代码卫士 (codesafe)
国内首个专注于软件开发安全的产品线。
觉得不错,就点个 “在看” 或 "赞” 吧~