Jenkins Java 反序列化远程执行代码漏洞(CVE-2017-1000353)

Jenkins Java 反序列化远程执行代码漏洞(CVE-2017-1000353)

一、漏洞描述

该漏洞存在于使用HTTP协议的双向通信通道的具体实现代码中,jenkins利用此通道来接收命令,恶意攻击者可以构造恶意攻击参数远程执行命令,从而获取系统权限,造成数据泄露。

二、漏洞影响版本

所有jenkins主版本均受到影响(包括<=2.56版本)

所有的jenkins LTS均受到影响(包括<=2.46.1版本)

三、漏洞环境搭建

1、 官方下载jenkins-2.46-1.1.noarch.rpm,下载地址:http://mirrors.jenkins.io

2、 在redhat安装jenkins

rpm -ivh jenkins-2.46-1.1.noarch.rpm

  

3、开启jenkins服务

  

4、浏览器访问http://192.168.10.137:8080,如下图所示需要输入密码,密码文件在如下图位置

  

5、查看密码文件,输入密码后进入如下界面,选择安装建议的插件

  

6、安装完插件之后,进入如下界面,设置用户名和密码

  

7、设置完用户和密码之后,进入如下界面,点击如下图位置,到此为止,jenkins环境搭建成功

  

  

四、漏洞复现

1、 下载生成POC的反序列化工具(CVE-2017-1000353-1.1-SNAPSHOT-all.jar),下载地址: https://github.com/vulhub/CVE-2017-1000353/releases/download/1.1/CVE-2017-1000353-1.1-SNAPSHOT-all.jar

2、 执行下面命令,生成字节码文件:

java -jar CVE-2017-1000353-1.1-SNAPSHOT-all.jar jenkins_poc.ser "touch /tmp/success"

  

3、 执行上述代码后,生成jenkins_poc.ser文件,这就是序列化字符串

4、 下载漏洞利用代码exploit.py,下载地址: https://github.com/vulhub/CVE-2017-1000353/blob/master/exploit.py

5、 修改exploit.py,把proxies里面的内容注释掉

  

6、执行如下命令,把刚才生成的字节码文件(Jenkins_poc.ser)发送给目标

python exploit.py http://192.168.10.137:8080 jenkins_poc.ser

  

7、在redhat下查看/tmp目录下是否成功创建success文件,说明漏洞利用成功

  

五、漏洞防御

1、升级版本

转载于:https://www.cnblogs.com/yuzly/p/11255729.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值