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

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

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

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

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/viszsec/cve-2024-23897
漏洞分析代码分析漏洞利用Web应用程序漏洞利用信息收集渗透测试
GitHubviszsec/cve-2024-23897

CVE-2024-23897

通过CLI任意文件读取漏洞的Jenkins POC可能导致RCE

查看仓库
512年前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Jenkins 有一个内置的命令行界面(CLI),用于从脚本或 shell 环境访问 Jenkins。

Jenkins 使用 args4j 库来解析 Jenkins 控制器在处理 CLI 命令时的命令参数和选项。该命令解析器有一个功能,可以将参数中 @ 字符后跟文件路径的内容替换为该文件的内容(expandAtFiles)。此功能默认启用,而 Jenkins 2.441 及更早版本、LTS 2.426.2 及更早版本未禁用它。

这使得攻击者能够使用 Jenkins 控制器进程的默认字符编码读取 Jenkins 控制器文件系统上的任意文件。

拥有 Overall/Read 权限的攻击者可以读取整个文件。

没有 Overall/Read 权限的攻击者可以读取文件的前几行。可读取的行数取决于可用的 CLI 命令。截至本公告发布时,Jenkins 安全团队已找到方法,在未安装任何插件的最新 Jenkins 版本中读取文件的前三行,并且未发现任何插件会增加此可读行数。

修复描述: Jenkins 2.442、LTS 2.426.3 禁用了 CLI 命令中用于将参数中 @ 字符后跟文件路径替换为文件内容的命令解析器功能。

如果此修复导致问题,可通过将 Java 系统属性 hudson.cli.CLICommand.allowAtSyntax 设置为 true 来禁用此更改。强烈不建议在由非 Jenkins 管理员用户访问的任何网络上执行此操作。

临时解决方案: 禁用对 CLI 的访问预计可以完全阻止利用。强烈建议无法立即更新到 Jenkins 2.442、LTS 2.426.3 的管理员执行此操作。应用此临时解决方案无需重启 Jenkins。

更多信息请访问:https://www.jenkins.io/security/advisory/2024-01-24/#SECURITY-3314

运行命令:python CVE-2024-23897 Jenkins.py -l list.txt -f /etc/passwd

漏洞输出响应可能包含除 daemon 或 bin 之外的内容,如果您希望添加更多内容,请在第 28 行添加。

下载工具