CVE-2024-23897 是在 Jenkins(一款流行的持续集成工具)中发现的一个严重漏洞。由于对节点访问和连接功能缺乏适当的限制,该漏洞允许在 Jenkins 服务器上执行远程命令(RCE)。
CVE-ID: CVE-2024-23897类型: 远程代码执行 (RCE)影响: 未经身份验证的攻击者可以发送特制的请求,从而允许在 Jenkins 服务器上执行任意命令,导致系统被入侵。受影响版本: 修复此 CVE 之前的 Jenkins 版本。jenkins-cli.jar 文件利用此漏洞,该文件允许 Jenkins 与其节点之间进行通信。Jenkins 服务器上上传并执行任意命令。Jenkins 更新到已修复此漏洞的最新可用版本。此 Python 脚本利用过时 Jenkins 服务器中的 CVE-2024-23897 漏洞。该脚本与 Jenkins 服务器进行交互,并使用 jenkins-cli.jar 文件执行任意命令。
Python 3.xrequests 和 subprocess 库。存在漏洞的 Jenkins 服务器之间的网络连接。下载文件 jenkins-cli.jar` 从 Jenkins 服务器。连接 Jenkins 节点 使用下载的文件并在远程服务器上执行恶意命令。执行特定操作 例如读取服务器上的任意文件。安装依赖: 确保你已安装 Python 3 和 requests 库。你可以使用 pip 安装:pip3 install requests
脚本用法: 下载利用脚本文件并从终端运行:
python3 cve-2024-23897.py
脚本将要求你输入以下参数:
Jenkins 服务器 IP 地址: Jenkins 运行所在的 IP。Jenkins 服务器端口: Jenkins 监听的端口(默认为 8080)。要读取的文件路径: 你想在存在漏洞的服务器上访问的文件路径(例如 /etc/passwd)。脚本将从 Jenkins 服务器下载 jenkins-cli.jar 文件,然后执行你在参数中指定的文件内所定义的命令。
为了在受控环境中测试该漏洞,我们提供了一个基于 Docker 的漏洞实验室。你只需在 Kali Linux 机器上解压 ZIP 文件,运行 .sh 文件,并部署 Docker 环境即可进行测试。
下载 LAB .tar: 首先,解压包含漏洞实验室的文件:
运行部署脚本: 在一个文件夹中,你需要有 2 个文件,其中之一是 auto_mount.sh。该脚本旨在自动部署存在漏洞的 Docker 环境,以及你需要作为参数传递的 TAR 格式实验室。使用以下命令运行它:
bash auto_mount.sh cve-2024-23897.tar
脚本将以压缩的 Docker .tar 文件作为参数,启动存在漏洞的容器并测试漏洞的利用。
连接到 Jenkins 服务器: 一旦 Docker 环境运行起来,你将能够从 Kali Linux 机器连接到 Jenkins 服务器。Jenkins 界面将在容器中配置的 IP 地址和端口上可用。
运行利用脚本: 既然存在漏洞的 Jenkins 服务器正在运行,你可以在 Kali 机器上运行利用脚本,并尝试在 Jenkins 上执行远程代码。
CVE-2024-23897 漏洞的 Python 脚本。Docker 环境的脚本。Jenkins 服务器的压缩 Docker 文件。开发者: d1se0
联系方式: [email protected]