Jenkins未授权访问RCE漏洞复现

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/caiqiiqi/article/details/87878574

Jenkins version < 2.138
参考:https://github.com/orangetw/awesome-jenkins-rce-2019

修改默认端口:

java -jar jenkins.war --ajp13Port=-1 --httpPort=8081

https://www.shodan.io/search?query=X-Jenkins%3A+2.73
PoC:
https://github.com/petercunha/Jenkins-PreAuth-RCE-PoC
修改code目录下的代码,运行./build.sh,生成Payload-1.jar,放到网站的根目录下的package/payload/1/

在这里插入图片描述
使得jenkins可以通过http://host//package/payload/1/payload-1.jar
访问到。
执行成功之后会显示:
在这里插入图片描述
在这里插入图片描述

笔记

jenkins的script中执行命令的语法:

println("id".execute().getText())
print "id".execute().text

在这里插入图片描述
在这里插入图片描述

Jenkins的权限控制

  1. Full Access(完全权限)
    对Jenkins有完全控制权,可在界面执行任意Groovy代码。
  2. Read-only Mode(只读模式, ANONYMOUS=True)
    需要在全局安全配置设置匿名用户具有可读权限
    在这里插入图片描述
    这种模式下,所有内容都可读,最大对用处就是可看到工作日志,job/node等敏感信息,以及源代码。
  3. Authenticated Mode(ANONYMOUS=False)
    这是Jenkins的默认配置,没有账号密码的情况下无法看到任何信息。
展开阅读全文

没有更多推荐了,返回首页