TomcatRCE|CVE-2024-50379条件竞争RCE复现,带视频教程及POC

admin 2025-12-23 15:53:24 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文复现了TomcatCVE-2024-50379远程代码执行漏洞。该漏洞利用Windows文件名大小写不敏感特性,在readonly为false时,通过PUT上传恶意JSP文件并利用条件竞争触发代码执行。文章详细介绍了受影响版本、环境搭建、Burp复现步骤及POC代码。实战利用依赖条件竞争,建议升级Tomcat版本或开启readonly参数进行修复。 综合评分: 91 文章分类: 漏洞分析,漏洞POC,WEB安全


cover_image

Tomcat RCE | CVE-2024-50379条件竞争RCE复现,带视频教程及POC

原创

犀利猪

犀利猪安全

2024年12月19日 14:20 湖南

0x00 漏洞描述

    此漏洞仅存在于Windows系统,当Tomcat的readonly 参数被设置为 false(默认为true),允许使用 PUT 方法上传文件时,攻击者能够上传包含恶意 JSP 代码的文件,并通过条件竞争来多次发送请求,触发 Tomcat 进行解析和执行,最终实现远程代码执行。

Apache Tomcat 11.0.0-M1 - 11.0.1Apache Tomcat 10.1.0-M1 - 10.1.33Apache Tomcat 9.0.0.M1 - 9.0.97

0x01 环境搭建

    可在如下地址进行环境下载,选择漏洞范围内版本:

https://archive.apache.org/dist/tomcat/tomcat-9/https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.97/bin/

    安装好后可访问8080端口,看是否安装成功。随后来到Tomcat安装目录下的 conf/web.xml ,增加修改其配置,然后重启Tomcat:

<servlet>    <servlet-name>default</servlet-name>    <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>    <init-param>        <param-name>readonly</param-name>        <param-value>false</param-value>    </init-param>    <init-param>        <param-name>listings</param-name>        <param-value>false</param-value>    </init-param>    <load-on-startup>1</load-on-startup></servlet>

0x02 漏洞复现

    访问页面,抓取数据包:

    在Burp的Repeater中新建一个组,后续在这个组中再进行多次发送到Repeater,这些包就会规划到分组里:

    建议前两个包使用GET请求,不同的文件名,我这里使用xlz1和xlz2作为文件名:

    后面再发4个包到分组中,使用PUT请求。这里一定要注意的是,在PUT请求中,文件名后缀我们更改一个字母为大写,即为:.Jsp。漏洞POC如下,插入到PUT请求后:

aa<%&nbsp;Runtime.getRuntime().exec("calc.exe");%>

    这是由于在 Windows 系统中,文件名不区分大小写(.Jsp与.jsp被视为同一个文件),当文件写入和访问同时发生时就会导致JSP 文件被写入时触发编译,在文件被完全编译成.class文件并删除前,其中某些访问可能会跳过完整检查,导致触发代码执行。

    PUT请求中的文件名,需要跟GET请求中的文件名一致,除了后缀进行大写外,无变化。接下来,我们点击设置并选择组发送:

    然后进行多次发包,我这里一共发了四次:

0x03 复现视频

    全程复现视频如下,自行观看:

已关注

关注

重播 分享 赞

关闭

观看更多

更多

退出全屏

切换到竖屏全屏退出全屏

犀利猪安全已关注

分享视频

,时长02:12

0/0

00:00/02:12

切换到横屏模式

继续播放

[ ]

进度条,百分之0

播放

00:00

/

02:12

02:12

倍速

全屏

倍速播放中

0.5倍 0.75倍 1.0倍 1.5倍 2.0倍

超清 流畅

 您的浏览器不支持 video 标签

继续观看

Tomcat RCE | CVE-2024-50379条件竞争RCE复现,带视频教程及POC

观看更多

原创

,

Tomcat RCE | CVE-2024-50379条件竞争RCE复现,带视频教程及POC

犀利猪安全已关注

分享点赞在看

已同步到看一看写下你的评论

视频详情

0x04 文后总结

    实战能不能利用就看运气了,复现咱得会。

修复建议

1、升级Tomcat版本为非漏洞版本范围;

2、设置 readonly 为 false

<init-param>        <param-name>readonly</param-name>        <param-value>false</param-value>    </init-param>

(

END

)

!扫码添加哦!

联系进群即可,群内可交流技术

免责声明

文章内容仅限授权测试或学习使用

请勿进行非法的测试或攻击

    利用本账号所发文章 进行直接或间接的非法行为 均由操作者本人负全责 犀利猪安全及文章对应作者

不为此承担任何责任

文章来自互联网或原创

如有侵权可联系我方进行删除

并诚挚的跟您说声抱歉

犀利猪安全,带你上高速


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:犀利猪安全 犀利猪《Tomcat RCE | CVE-2024-50379条件竞争RCE复现,带视频教程及POC》

评论:0   参与:  4