近期,启明星辰漏扫团队在漏洞监控中发现Apache Struts2存在远程代码执行漏洞,Apache Struts2框架是一个用于开发Java EE网络应用程序的Web框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。
2022年4月12日,Apache发布安全公告,修复了一个Apache Struts2中的远程代码执行漏洞。漏洞编号:CVE-2021-31805,漏洞威胁等级:高危。
在 Apache Struts2 2.0.0-2.5.29 中,如果开发人员使用%{...} 语法应用强制OGNL解析,标签的某些属性仍然可被二次解析。当对标签属性中未经验证的原始用户输入进行解析时可能会导致远程代码执行。
漏洞概述
漏洞排查
方法一:
全盘检索是否存在struts2-core-{version}.jar,并检查使用的版本号是否在受影响范围内,如在影响范围内,则表示用户可能受漏洞影响。
检索文件
方法二:
遇到使用maven编译的项目时可检测该项目的根目录下pom.xml的内容,在此文件中检索struts2-core字样可看到对应的版本信息,如在受影响范围内,则可能受该漏洞影响。
org.apache.struts
struts2-core
2.3.20
漏洞检测
启明星辰漏扫系统已于2022年4月13日紧急发布针对该漏洞的升级包,支持对该漏洞进行授权扫描,用户升级标准漏洞库后即可对该漏洞进行扫描:
6070版本升级包为607000428,升级包下载地址:
https://venustech.download.venuscloud.cn
授权扫描方式
请使用启明星辰漏扫系统产品的用户尽快升级到最新版本,及时对该漏洞进行检测,以便尽快采取防范措施。
启明星辰Web应用检测系统已于2022年4月13日紧急发布针对该漏洞的升级包,支持对该漏洞进行扫描,用户升级启明星辰Web漏扫产品漏洞库后即可对该漏洞进行扫描:
升级包版本:7d_V3.0.6,升级包下载地址:
https:// venustech.download.venuscloud.cn
升级后已支持该漏洞
请启明星辰Web应用检测系统产品的用户尽快升级到最新版本,及时对该漏洞进行检测,以便尽快采取防范措施。
基线核查
启明星辰安全配置核查管理系统已于2022年4月13日紧急发布针对该漏洞的核查资源包,支持对该漏洞进行核查,用户升级安全配置核查管理系统资源包后即可对该漏洞进行核查:
基线核查
临时措施
避免对不受信任的用户输入使用强制OGNL评估。
修复建议
厂商已发布补丁修复漏洞,用户请尽快更新至安全版本:Struts 2.5.30或更高版本,并要做好资产自查以及预防工作,以免遭受入侵者攻击。
补丁链接如下:
https://cwiki.apache.org/confluence/display/WW/Version+Notes+2.5.30