2023年h.d moore建立了metasploit,從那之後metasploit便快速發展起來,如今被公認為最為流行的滲透測試工具之一。metasploit是乙個完全的ruby驅動專案,提供了大量的漏洞滲透、攻擊載荷(payload)、編碼技術以及後滲透模組。
metasploit提供了以下多版本:
metasploit pro版
這是metasploit的乙個商業化版本,提供了大量的功能,例如web應用程式掃瞄工具、滲透模組、自動化滲透工具,十分適合專業滲透測試工程師和it安全團隊使用。pro版主要用來實現專業的、高階的、大型滲透測試和企業安全專案
metasploit express版
這是乙個為初級滲透測試工程師設計的版本。這個版本的metasploit包含了智慧型化滲透、密碼的自動化暴力破解等功能,十分適合小型企業的it安全團隊使用
metasploit community版
這是metasploit express精簡後的免費版本。對於小企業和學生來說,這是乙個不錯的選擇
metasploit framework版
這是乙個完全在命令列下執行的版本。這個版本的所有任務都在命令列下完成 ,比如說手動滲透、第三方模組匯入等。該版本適合開發人員和安全研究人員
metasploit提供了以下幾類使用者介面:
gui(圖形使用者介面)
在圖形化工作模式下,往往輕點一下滑鼠就能完成所有的任務。此工作方式提供了友好的操作模式和簡單快捷的漏洞管理方式
控制台介面
最為普遍也最為流行的工作方式。此介面提供了統一的工作方式來管理metasploit的所有功能。此管理方法通常也被認為是最穩定的控制方法之一。此管理方法是最常用的
命令列介面
命令列介面是功能最為強大的介面,它支援對滲透模組的所有操作(例如,攻擊載荷的生成)。然而在採用命令列介面時,記住每一條命令是十分困難的
armitage
armitage是raphael mudge 編寫的乙個充滿了黑客風格的gui。armitage提供輕鬆的漏洞管理、內建的nmap掃瞄、滲透攻擊推薦,並通過用cortana指令碼實現自動化功能
滲透模組(exploit)
這是一段程式,執行時會利用目標的安全漏洞進行攻擊。
攻擊載荷模組(payload)
在成功對目標完成一次滲透之後,這段程式開始在目標計算機上執行。它能幫助我們在目標系統上獲得需要的訪問和行動許可權
輔助模組(auxiliary)
包含了一系列的輔助支援模組,包括掃瞄模組、fuzz測試漏洞發掘模組、網路協議欺騙以及其他一些模組
編碼器模組(encoder)
編碼器模組通常用來對攻擊模組進行**混淆,來逃過目標安全保護機制的檢測。目標安全保護機制包括防毒軟體和防火牆等
meterpreter
meterpreter是一類使用記憶體技術的攻擊載荷,可以注入到程序裡。它提供了各類可以在目標上執行的功能,從而成為了最受歡迎的的攻擊載荷
命令用途
示例use [auxiliary/exploit/payload/encoder]
選擇乙個指定的模組並啟動工作
msf>use exploit/unix/ftp/vsftpd_234_backdoor
show [exploits/payloads/encoder/auxiliary/options]
顯示可用的特定功能的模組
msf> show payloads
set [options/payload]
給某個特定物件賦值
msf>set lhost 192.168.126.129
setg [options/payload]
給某個物件賦值的同時設定作用域為全域性,在模組進行切換的時候,該物件的值不改變
msf>setg rhost 192.168.126.129
run在設定乙個輔助模組需要的所有選項之後,啟動該輔助模組
msf>run
exploit
啟動乙個滲透模組
msf>exploit
back
取消當前選擇的模組並且退回到上一級命令視窗
msf>back
info
列出相關模組的資訊
msf>info
search
搜尋符合條件的特定模組
msf> search hfs
check
檢查某個特定目標是否易受攻擊
msf>check
sessions
列出當前可用的會話
msf>sessions [session number]
meterpreter的基本命令:
meterpreter命令
用途示例
sysinfo
列出被滲透主機的系統資訊
meterpreter>sysinfo
ifconfig
列出被滲透主機的網路介面
meterpreter>iifconfig
arp列出目標主機arp快取位址的ip位址和mac位址
meterpreter>arp
background
將乙個處於啟用狀態的會話傳送到後台
meterpreter>background
shell
獲取目標主機的乙個cmdshell
meterpreter>shell
getuid
獲取當前使用者細節
meterpreter>getuid
getsystem
提公升許可權,獲取系統級許可權
meterpreter>getsystem
ps列出目標主機上執行的所有程序
meterpreter>ps
若第一次接觸metasploit,可訪問:獲取關於基本命令的更多資訊。
在metasploit使用資料庫命令
用途db_connect
用來與預設資料庫之外的資料互動
db_export
用來將資料庫裡儲存的資料匯出,用來生成測試報告或者用來匯入到其他安全工具內
db_nmap
用來使用nmap軟體對目標進行掃瞄,並將結果儲存到metasploit資料裡內
db_status
用來檢查是否建立了與資料庫的連線
db_discocnnect
用來從指定的資料庫斷開
db_import
用來向資料內匯入其他掃瞄工具(例如nessus,nmap等)的掃瞄結果
db_rebuild_cache
用來重新建立快取,主要目的是使用新的配置替代之前快取檔案裡錯誤或者過時的配置
Metasploit 基本術語
滲透攻擊模組 exploit 這是一段程式,執行起來的時候會利用目標的安全漏洞進行攻擊。攻擊載荷模組 payload 這段程式會在成功對目標完成一次滲透攻擊之後在目標計算機上開始執行。基本上它能幫助我們在目標系統上獲得需要的訪問和行動許可權。輔助模組 auxiliary 這裡包含了一系列的輔助支援模...
Metasploit的基本使用
參考文獻 環境 ubuntu metasploit簡介 metasploit是一款開源安全漏洞檢測工具,附帶數百個已知的軟體漏洞。msf終端 msf終端是metasploit的使用者介面,它提供了一站式的介面,能夠訪問metasploit框架中幾乎每乙個選項和配置 安裝cd opt mv msfup...
metasploit基本使用方法
msfconsole提供了乙個一體化的集中控制台。通過msfconsole,你可以訪問和使用所有的metasploit的外掛程式,payload,利用模組,post模組等等。msfconsole還有第三方程式的介面,比如nmap,sqlmap等,可以直接在msfconsole裡面使用。在啟動msf終...