學習msf的筆記
Metasploit是一個非常強大的滲透測試框架
- 2003年有HD Moore編寫的,2007 年用 ruby 語言編寫
- 框架繼承了滲透測試標準(PETS)標準
- 一定程度上統一了滲透測試研究的工作環境
- 新的攻擊代碼可以比較容易的加入框架
- 開發活躍版本更新頻繁
- 早期版本基於社區力量維護,被 Rapid 7 收購後大棗出其商業版本產品
- 目前分化爲四個版本,社區版依然十分活躍
- HD More說:爲 Metasploit 寫書是種自虐
2009年10月21號,漏洞管理解決公司Rapid7收購Metasploit項目
Metasploit 有四個版本,默認kali linux 集成的是Metasploit Framework版本
開始
Metasploit Framework簡稱msf
下面我們就說Metasploit Framework這個來介紹
- msf他使用的是 postgresql 數據庫
- 掃描下來得到的信息都保存到postgresql數據庫數據庫裏
MSF架構
1. Rex
- Rex是msf最基本依賴的庫,
- 基本功能庫,用於完成日常基本任務,無需人工手動編碼實現
- 處理 socket 連接誒訪問、協議應答(http/SSL/SMB 等)
- 編碼轉換(XOR、Base64、Unicode)
2.Msf::Core
- 他是提供 Metasploit的核心最底層的基本 API,是框架的核心能力實現庫
3. Msf::Base
- 提供友好的的 API 接口,便於模塊調用的庫
4. 他的使用方法
- 比如有web的使用,有命令行的使用
5. Plugin 插件 和目錄結構
- 連接和調用外部擴展功能和系統
- 他直接就可以調用其他的工具
5.1介紹目錄結構
modules:目錄裏面存放模塊的
plugins:目錄裏面存放插件的
tools:目錄裏面存放其他的工具的
scripts:目錄裏面存放輔助的腳本的
db:數據庫的放在這個目錄裏
data:使用到的文件,比如密碼字典
lib:庫文件都保持在這個目錄裏
config:存放這配置文件在這個目錄裏
還有其他的文件都是執行的比如msfconsole就是生成木馬的程序
細說modules模塊文件
他的模塊都放在/usr/share/metasploit-framework/modules/
這個目錄下
查看一下目錄,應爲msf更新的比較快,我看的教程裏面沒有現在這個evasion
- auxiliary (輔助模塊)
執行信息收集、枚舉、指紋探測、掃描等功能的輔助模塊(沒有 payload 的 exploit 模塊) - encoders (編碼模塊)
對病毒進行加密,躲避殺毒軟件的查殺 - exploits(漏洞利用模塊)
利用系統漏洞進行攻擊的動作,此模塊對應每一個具體漏洞的攻擊方法(主動、被動) - nops(空指令模塊)
空指令就是空操作,提高 paylaod 穩定性及維持大小 - payloads(攻擊載荷模塊)
就是我們成功真正在目標系統進行執行的代碼,比如bind shell和反彈shell等
裏面還有三個目錄
Stager:目標計算機內存有限時,先傳輸一個較小的 病毒用於建立連接
stages:利用 stager 建立的連接下載的後續病毒
stager、stages 都有多種類型,適用於不同場景