MSF基礎應用


20175314 2020-4 《網絡對抗技術》Exp6 MSF基礎應用 Week9

一、實踐目標

1、實踐對象

  • Kali Linux
  • Metasploitable Linux
  • Windows 10
  • Windows 7
  • Windows XP

2、實踐內容

  • 成功主動攻擊,如ms08-067
  • 成功針對瀏覽器的攻擊,如ms11-050
  • 成功針對客戶端的攻擊,如Adobe
  • 成功應用輔助模塊的攻擊

二、基礎知識

1、實踐要求

  • 掌握metasploit的基本應用方式,重點是常用的三種攻擊方式的思路
  • 實踐可不限於示例,並要求至少有一個是和其他所有同學不一樣

2、指令/參數

  • SYN Flood攻擊指令
    hping3 -q -n -a [偽造源IP] -S -s [偽造源端口] --keep -p [目的端口] --flood [目的IP]

3、預備知識

  • 使用Nmap探測靶機的漏洞(以MS08-067為例)

    • Windows XP
    • Windows 7
  • Ubuntu使用docker搭建samba

    sudo su
    apt-get upgrade
    apt-get update 
    apt-get dist-upgrade
    apt-get install docker.io
    apt-get install samba
    
  • SYN Flood攻擊

    • Synchronize Sequence Numbers,同步序列編號,是TCP/IP建立連接時使用的握手信號;
    • SYN Flood利用TCP協議缺陷,通過一定的操作破壞TCP三次握手建立正常連接,占用並耗費系統資源,使得被攻擊方資源耗盡,無法及時回應或處理正常的服務請求;
    • 攻擊原理:通常客戶端在短時間內偽造大量不存在的IP地址,向服務器不斷地發送syn包,服務器回復確認包,在進行第三次握手時,服務器等待客戶的確認,由於源地址是不存在的,服務器需要不斷地重發直至超時。這些偽造的SYN包將長時間占用未連接隊列,正常的SYN請求不能進去以及被丟棄,目標系統運行緩慢並引起網絡擁堵。

三、實踐步驟

1、主動攻擊

(1) MS08-067漏洞滲透攻擊實踐(成功/不唯一)

  • 啟動msfconsole查找漏洞

  • 顯示該漏洞的滲透模塊

  • 進入該漏洞模塊的使用,顯示有效的攻擊載荷,選擇shell_reverse_tcp

  • 顯示可以被攻擊靶機的操作系統版本,可以看到Windows XP SP3中文簡體版在列

  • 設置攻擊有效載荷generic/shell_reverse_tcp,顯示連接需要設置的參數options

  • 設置LHOSTKaliIP和RHOSTWinIP,按照原來實驗的思路把端口對齊到5314

  • 再次查看options都已設置完成,於是開始攻擊,但是不僅連接被拒絕而且session對象創建失敗

  • 也許是因為端口的問題,於是恢復默認的端口,連接成功但是session對象還是創建失敗

  • 也許是因為這台Windows已經安裝了KB958644補丁,於是要苦尋傳說中沒有補丁的WinXPmhJ9

  • 終於安裝完成后重復原來的步驟后我發現,這個版本不僅系統問題很多而且依然不能創建session對象(有緣也許可以成功)

  • 也許是因為MSF水土不服的問題,於是要苦尋以前從來沒用過的英文版WinXP4VAk

  • 終於安裝完成后再一次重復原來的步驟終於連接成功了(果然是系統的問題)

  • 進行一些指令操作驗證連接的效果,ifconfig/all查看Win的各類地址

  • dir指令查看payload所在目錄下的文件,chdir指令查看payload的路徑

  • 查看Win目前的用戶,顯示只有Administrator

  • 查看新建用戶,設置用戶名和密碼,然后再次查看當前的用戶,顯示添加成功

  • 檢查用以遠程連接的端口3389是否開啟

  • 顯示沒有開啟,執行REG ADD指令開啟端口3389

  • 再次檢查顯示端口3389已開啟

  • 在主機系統進行遠程連接,輸入靶機IP地址

  • 使用自己創建的用戶名和密碼登錄但顯示權限不夠

  • 再回到Kali端使用MSF提權

  • 重新登錄成功

(2) samba漏洞滲透攻擊實踐(成功/唯一)

  • 使用docker搭建samba

  • 因為安裝經過數次,顯示地址已被占用

  • 檢查進程地址,關閉進程並查看是否已經成功開啟docker-samba

  • 在Kali端/usr/share/metasploit-framework/modules/exploits/linux/samba/修改MSF的is_known_pipename模塊腳本is_known_pipename.rb

  • 啟動MSF,端口和地址都沒有問題但是exploit總是失敗,顯示地址非法

  • 也許是因為Ubuntu搭建的samba環境版本較新,於是要苦尋Metasploitable2

  • msfadmin/msfadmin登錄系統,查看IP地址信息

  • 在Kali端使用nmap探測samba

  • 啟動msfconsole,根據options設置相關參數,攻擊成功

2、針對瀏覽器的攻擊

(1) MS17-010漏洞(永恆之藍)滲透攻擊實踐(成功/不唯一)

  • 啟動msfconsole查找漏洞

  • 查找有效攻擊載荷

  • 根據opions設置相關參數,啟動攻擊

  • 在靶機的瀏覽器(IE)輸入Kali的IP地址

  • 攻擊成功,編碼顯示有問題,可以換一個payload試試

(2) MS10-002漏洞(極光)滲透攻擊實踐(成功/唯一)

  • 啟動msfconsole查找漏洞

  • 查找有效攻擊載荷

  • 根據opions設置相關參數,啟動攻擊

  • 在靶機的瀏覽器(IE)輸入Kali的IP地址,無響應提醒,后門攻擊成功標志性現象

  • 反彈連接成功但是非常奇怪,輸入dir指令返回的是Kali的信息

3、針對客戶端的攻擊

(1) Adobe Reader漏洞滲透攻擊實踐(成功/不唯一)

  • 啟動msfconsole查找漏洞

  • 選擇漏洞,查找有效攻擊載荷

  • 根據opions設置相關參數,生成pdf文件,將這個文件按照路徑取出並復制到靶機

  • 退出當前模塊,進入監聽模塊,根據opions設置相關參數,開始監聽

  • 在靶機使用Adobe Reader啟動markmsf.pdf

  • 攻擊成功,該載荷非常穩定沒有編碼問題

(2) Office Word漏洞滲透攻擊實踐(成功/唯一)

  • 啟動msfconsole查找漏洞

  • MS11-006漏洞具有更強的實用性,查找有效攻擊載荷

  • 根據opions設置相關參數,與我之前完成的免殺進階生成的帶宏的docm文件不同,這次生成的是普通的doc文件,將這個文件按照路徑取出並復制到靶機

  • 退出當前模塊,進入監聽模塊,根據opions設置相關參數,監聽失敗

  • 還是地址與端口連接的問題,嘗試關閉進程重啟后還是不行,所以還是換個端口試試比較實際,所以doc文件也需要重新設置生成,然后再重新嘗試監聽

  • 這里反彈連接的方式很特別,雙擊打開沒有反應

  • 經過多次嘗試,發現只需要在文件夾中啟動縮略圖查看即可

4、輔助模塊攻擊

(1) SYN Flood(成功/唯一)

  • 啟動msfconsole,顯示所有的輔助模塊和用途

  • 靶機啟動任務管理器監控CPU的使用率,啟動Wireshark,啟動攻擊

  • 靶機幾乎癱瘓,停止攻擊后查看任務管理器和Wireshark捕包結果

(2) Web漏洞掃描(成功/唯一)

  • 啟動msfconsole,根據options設置相關參數,啟動掃描

四、實踐報告

1、遇到的問題

  • 問題 Ping過程Negotiating IP Security

  • 解決方案 服務中停止IPSEC Services

  • 問題 Windows關閉Generic Host Process for Win32 Services

  • 解決方案 數據執行保護為Generic Host Process for Win32 Services啟用DEP

2、基礎問題回答

  • 用自己的話解釋什么是exploit,payload,encode
  • exploit 利用系統、程序或服務的漏洞進行攻擊的一個過程,即漏洞利用,在MSF攻擊過程中也能通過run實現;
  • payload 攻擊者在目標系統上執行的一段攻擊代碼,即攻擊載荷,該代碼具有反彈連接、創建用戶、執行其他系統命令的功能,在在MSF攻擊過程中通過exploit運輸;
  • encode 可以避免使攻擊載荷不能完整運行的壞字符或是改變特征碼,在MSF攻擊過程中對payload進行包裝,幫助其避免被殺軟發現。

3、實驗收獲與感想

  • 經過了前面兩次以分析為主的實驗,再次使用MSF感覺對過程更加清晰,解決問題的能力也有所提升,本次實驗的四個部分都使用了兩種方式實現,而且都成功了,雖然是MSF基礎應用,但是學習到新的知識和技能感覺還是挺有成就感的。結合免殺的實踐,每次后門攻擊都至少應該做相應的進程遷移,包括掃描等操作也應該清理入侵痕跡,但是這樣理想化的環境也能讓我有所體驗利用各種有趣的漏洞。
  • 如果要考慮實戰,我認為首先要想辦法如何連接目標機器或將后門程序植入目標機器,不然再大的漏洞都是擺設,比如可以入侵服務器(網關)、控制內部網絡等等,方法有很多但是肯定多少也要結合一定社會工程學。除了上述所說以外還有很重要的一點就是上一個實驗即信息搜集,比如針對客戶端的攻擊,首先要對目標主機的漏洞情況和系統情況還有客戶端情況有所掌握,目標機器上是否已經安裝補丁?系統是中文版還是英文版?是否安裝Adobe或Office?等等問題需要掌握,但是從實用性和普遍性來看,針對瀏覽器的攻擊應該還是比較實用(因為瀏覽器的漏洞除了MS代號大多都還有一個美麗的中文名)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM