主要观点总结
文章介绍了Apache Tomcat存在的条件竞争代码执行漏洞CVE-2024-50379和CVE-2024-56337,绿盟科技已经成功复现这些漏洞。漏洞允许未经身份验证的攻击者通过构造特殊路径绕过Tomcat的路径校验机制,通过条件竞争发送请求上传包含恶意JSP代码的文件,触发Tomcat对其解析和执行,从而实现远程代码执行。文章提供了影响范围、漏洞检测方法和漏洞防护建议。
关键观点总结
关键观点1: 漏洞概述
Apache Tomcat存在条件竞争代码执行漏洞CVE-2024-50379和CVE-2024-56337,攻击者可利用这些漏洞实现远程代码执行。
关键观点2: 影响范围
受影响版本包括Apache Tomcat 11.0.0-M1 <= 版本 <= 11.0.1、10.1.0-M1 <= 版本 <= 10.1.33和9.0.0.M1 <= 版本 <= 9.0.97。仅影响在Windows系统下启用PUT请求方法,并将readonly参数设置为非默认值false,且系统属性sun.io.useCanonCaches为true(Java 8与Java 11默认为true,Java 17默认配置为false,Java 21及更高版本不受影响)的用户。
关键观点3: 漏洞检测
可通过查看Tomcat的版本号和web.xml文件中的配置来检测是否存在漏洞。另外,绿盟科技远程安全评估系统(RSAS)与综合威胁探针(UTS)已具备对此次漏洞的扫描与检测能力。
关键观点4: 漏洞防护
官方已发布新版本修复该漏洞,请受影响的用户尽快升级版本。同时,提供了产品防护和临时防护措施。绿盟科技拥有对此安全公告的修改和解释权。
正文
TA
G:
|
Tomcat、条件竞争、代码执行、CVE-2024-50379、CVE-2024-56337
|
漏洞危害:
|
攻击者利用该漏洞,可实现远程代码执行
|
版本:
|
1.1
|
漏洞概述
近日,绿盟科技CERT监测到Apache发布安全公告,修复了Apache Tomcat条件竞争代码执行漏洞(CVE-2024-50379/CVE-2024-56337)。CVSS评分9.8,目前漏洞细节与PoC已公开,请相关用户尽快采取措施进行防护。
CVE-2024-50379:由于Windows文件系统与Tomcat在路径大小写区分处理上的不一致,当启用了默认servlet的写入功能(设置readonly=false且允许PUT方法),未经身份验证的攻击者可以构造特殊路径绕过Tomcat的路径校验机制,通过条件竞争不断发送请求上传包含恶意JSP代码的文件触发Tomcat对其解析和执行,从而实现远程代码执行。
CVE-2024-56337:该漏洞源于对CVE-2024-50379的临时措施不完善,需要进行额外的配置来修复,具体取决于Tomcat运行的Java版本。当启用了默认Servlet的写入功能(设置readonly=false且允许PUT方法)以及系统属性sun.io.useCanonCaches=true时;未经身份验证的攻击者可以构造特殊路径绕过Tomcat的路径校验机制,通过条件竞争不断发送请求上传包含恶意JSP代码的文件触发Tomcat对其解析和执行,从而实现远程代码执行。
Apache Tomcat是一个开源的Java应用服务器,由 Apache 软件基金会开发和维护,广泛用于各种Web应用开发与部署场景中。
绿盟科技已成功复现上述漏洞:
参考链接:
https://www.mail-archive.com/[email protected]/msg09703.html
https://www.mail-archive.com/[email protected]/msg09707.html
受影响版本:
-
11.0.0-M1 <= Apache Tomcat <= 11.0.1
-
10.1.0-M1 <= Apache Tomcat <= 10.1.33
-
9.0.0.M1 <= Apache Tomcat <= 9.0.97
注:仅影响在Windows系统下启用PUT请求方法,并将readonly参数设置为非默认值false,且系统属性sun.io.useCanonCaches为true(Java 8与Java 11默认为true,Java 17默认配置为false,Java 21及更高版本不受影响)。
不受影响版本:
-
Apache Tomcat >= 11.0.2
-
Apache Tomcat >= 10.1.34
-
Apache Tomcat >= 9.0.98
3.1 人工检测
一:从Apache Tomcat官网下载的安装包名称中会包含Tomcat的版本号,如果用户解压后没有更改Tomcat的目录名称,可以通过查看文件夹名称来确定当前使用的版本。
如果解压后的Tomcat目录名称被修改过,或者通过Windows Service Installer方式安装,可使用软件自带的version模块来获取当前的版本。也可以进入Tomcat安装目录的bin目录,运行version.bat(Linux运行version.sh)后,可查看当前的软件版本号。
二、如果该版本在受影响的范围内,再检查conf\web.xml文件中是否开启了PUT方法。打开web.xml文件,如果org.apache.catalina.servlets.DefaultServlet处readonly设置成了false,则说明存在漏洞风险。
3.2 产品检测
绿盟科技远程安全评估系统(RSAS)与综合威胁探针(UTS)已具备对此次漏洞的扫描与检测能力,请有部署以上设备的用户升级至最新版本。
|
升级包版本号
|
升级包下载链接
|
RSAS V6
系统插件升级包
|
V6.0R02F01.3808
|
https://update.nsfocus.com/update/listRsasDetail/v/vulsys
|
UTS
|
6.0.7.3.69577
|
https://update.nsfocus.com/update/listBsaUtsDetail/v/wcl2.0.0
|
关于RSAS的升级配置指导,请参考如下链接:
https://mp.weixin.qq.com/s/SgOaCZeKrNn-4uR8Yj_C3Q
4.1 官方升级
目前官方已发布新版本修复了该漏洞,请受影响的用户尽快升级版本进行防护,下载链接:
https://tomcat.apache.org/download-11.cgi
https://tomcat.apache.org/download-10.cgi
https://tomcat.apache.org/download-90.cgi
4.2 产品防护
针对上述漏洞,网络入侵防护系统(IPS)历史通用规则支持防护,绿盟科技Web应用防护系统(WAF)已发布规则升级包,请相关用户升级规则包至最新版,以形成安全产品防护能力。安全防护产品规则编号如下:
安全防护产品
|
升级包版本号
|
升级包下载链接
|
规则编号
|
WAF
|
6.0.7.0.69577
|
https://update.nsfocus.com/update/listWafSpecialDetail/v/all
|
27005783
|
6.0.7.3.69577
|
https://update.nsfocus.com/update/listWafV67Detail/v/rule6070
|
6.0.8.0.69577
|
https://update.nsfocus.com/update/listWafV68Detail/v/rule
|
IPS
|