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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2024-23897 — 未认证的任意文件读取漏洞利用工具,针对 Jenkins CVE-2024-23897,支持 HTTPS 和 CSRF-crumb 以绕过加固实例。 | Kitploit
工具/GitHubGitHub/machiavelliii/cve-2024-23897
漏洞分析漏洞利用Web应用程序漏洞利用信息收集渗透测试
GitHubmachiavelliii/cve-2024-23897

CVE-2024-23897

未认证的任意文件读取漏洞利用工具,针对 Jenkins CVE-2024-23897,支持 HTTPS 和 CSRF-crumb 以绕过加固实例。

查看仓库
620天前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2024-23897 — 支持 HTTPS + CSRF-crumb 的 PoC

cve-2024-23897-crumb.py — 针对 Jenkins <= 2.441 / LTS <= 2.426.2(已在 2.442 / LTS 2.426.3 中修复)的未认证任意文件读取漏洞。

相比公开 PoC 的改进之处

广泛使用的 PoC — exploit-db 51993、 xaitax/CVE-2024-23897 以及 ProjectDiscovery nuclei 模板 — 均为仅 HTTP 且不发送 CSRF crumb。当目标 Jenkins 实例满足以下条件时:

  1. 位于 TLS 之后,且
  2. 在 CLI 上启用了 CSRF 保护,

它们会以 403 No valid crumb was included in the request 失败,这与“已修补”状态无法区分,从而产生误报为安全的结果。

本变体:

  • 支持 HTTPS(以及通过 --http 使用纯 HTTP);
  • 从未认证的 /cli 错误页面获取可用的 CSRF crumb + 匹配的 JSESSIONID,然后在双工通道上重放;
  • 优雅降级 — 如果实例未强制启用 CSRF,则不发送 crumb,行为与标准 PoC 一致。

最终效果:能够检测并利用那些已加固但未修补、而公开工具报告为安全的实例。

用法

root@kitploit:~
python3 cve-2024-23897-crumb.py <host> [file] [--http] [--port N]

python3 cve-2024-23897-crumb.py jenkins.example.com
python3 cve-2024-23897-crumb.py jenkins.example.com /etc/shells
python3 cve-2024-23897-crumb.py 10.0.0.5 /etc/passwd --http --port 8080

仅依赖 Python 3 标准库。只读操作:发送 help "@<file>";不会写入、上传或执行任何内容。

提取说明

help 会回显文件的首行内容 — 即 Too many arguments: 消息中的第一行,以及 (default: ...) 字段中的后续行。对于首行包含多个字段或内容较长的文件效果良好:

  • /etc/passwd、/etc/shells
  • /proc/net/arp、/proc/net/route(内部 IP、网关、MAC 地址)
  • /proc/mounts(容器/存储布局)

首行非常短的文件(例如 /etc/hostname)会落入认证错误路径,无法通过 help 返回任何内容。整文件提取改用 connect-node 命令,但这要求匿名用户拥有 Overall/Read 权限 — 通常不会授予,此时读取原语仍然有效,但只能返回首行内容。

负责任使用

仅将其指向你已获授权测试的主机。同一通道会暴露可改变状态的 CLI 命令(enable-job、reload-configuration 等);本脚本刻意仅使用只读的 help 路径。

下载工具