网站点击量有什么用,应该怎样做网站地图,wap手机网站代码,木模板价格0x00 漏洞描述Jenkins发布了官方安全公告#xff1a;https://jenkins.io/security/advisory/2019-09-12/,Git客户端插件中的系统命令执行漏洞。Git客户端插件接受用户指定的值作为调用的参数#xff0c;git ls-remote以验证指定URL处是否存在Git存储库。这是以允许具有Job/Co… 0x00 漏洞描述 Jenkins发布了官方安全公告https://jenkins.io/security/advisory/2019-09-12/,Git客户端插件中的系统命令执行漏洞。Git客户端插件接受用户指定的值作为调用的参数git ls-remote以验证指定URL处是否存在Git存储库。这是以允许具有Job/Configure权限的攻击者在Jenkins主服务器上执行任意系统命令作为Jenkins进程正在运行的OS用户的方式实现命令执行。0x01 影响组件Git client Plugin 2.8.40x02 原因分析 以官方描述https://jenkins.io/security/advisory/2019-09-12/漏洞存在关键点在于git ls-remote,参考Git 客户端 官方文档从给的参数中可以注意到--upload-pack。看起来像是可以执行某些命令而漏洞作者也是看到了这个参数的形式而采用了这个参数执行。 在远程主机上指定git-upload-pack的完整路径。这允许列出通过SSH访问的存储库中的引用以及SSH守护程序不使用用户配置的PATH的位置。 以此可见这个错误stderr: error: unknown switch v 除了打印Git的用法还有一条--upload-pack 可以直接执行命令。我们可以使用以下Payload来运行命令--upload-packid代码0x03 环境搭建漏洞复现版本Jenkins 2.176.3 拉取docker 镜像docker run -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts-alpinedocker拉取镜像完成后打开 localhost:8080 解锁密码在部署过程中可以看到。安装推荐插件 等待完成初始化配置后创建一个非管理员用户。并给予创建job权限。 由于官方已经升级了最高版本所以需要手动上传插件存在漏洞版本得插件。git客户端http://updates.jenkins-ci.org/download/plugins/git-client/2.8.2/git-client.hpigit插件http://updates.jenkins-ci.org/download/plugins/git/3.12.0/git.hpi导入完成后重启Jenkins服务。登陆创建的test用户并创建一个新的流水线任务。0x04 漏洞利用执行刚才分析得来的os命令。--upload-packifconfig反弹shell自然也是不在话下。0x05 漏洞修复升级Git client插件至2.8.4以上版本0x06 其他说明早在2014年安识科技团队成员在安全脉搏发布过《知其一不知其二之Jenkins Hacking》https://www.secpulse.com/archives/2166.html详细阐述了Jenkins的各种hacking技巧。随着时间推移Jenkins后续也爆出了反序列化等漏洞详情参见安全脉搏生态插件社区:https://x.secpulse.com/#/plugins