要求:
1.搭建docker
2.使用小皮面板搭建pikachu靶場
3.使用BP的爆破模塊破解pikachu的登陸密碼步驟
4.Kail的msf復現永恒之藍
一.搭建docker
?1.?Docker介紹
? Docker 是容器,可以部分完全封閉。封閉意味:一個物質(放到容器),另一個物質(放到容器)隔離,容器可以保護里面的物質。docker 只是管理容器,包括LXC。 ?
1.1安裝docker
sudo apt update ??
sudo apt install docker.io ?
sudo systemctl start docker ?
sudo systemctl enable dockersudo systemctl restart docker
sudo systemctl status dockersudo docker run hello-world
1.2nginx(源碼安裝):
1.2.1安裝依賴的環境
apt-get install gcc
apt-get install libpcre3 libpcre3-dev
apt-get install zlib1g zlib1g-dev
sudo apt-get install libssl-dev
? ?1.2.?2安裝nginx
?tar -xvf nginx-1.21.6.tar.gz
1.2.3編譯nginx
???cd nginx-1.21.6.tar.gz
????# 執行命令
????./configure?????????
????./configure --prefix=/home/centos/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module???
????# 執行make命令
????make
????# 執行make install命令?
????make install
1.3啟動nginx
??cd /usr/local/nginx/sbin ??
????# 啟動nginx
????./nginx
1.4訪問nginx
出現這個界面docker搭建成功
二.使用小皮面板搭建pikachu靶場
1.下載 Pikachu 靶場源碼:從Pikachu 官方 GitHub 倉庫下載源碼壓縮包
2.配置靶場源碼
移動源碼壓縮包:找到已下載的 Pikachu 靶場源碼壓縮包,將其復制或剪切到小皮面板的安裝目錄下,具體路徑為該目錄中的?www 文件夾內。
解壓壓縮包:在 www 文件夾中,右鍵點擊剛移動過來的 Pikachu 源碼壓縮包,選擇解壓選項(如 “解壓到當前文件夾”),完成解壓操作。
重命名文件夾:解壓后會生成一個名為 “pikachu - master” 的文件夾,右鍵點擊該文件夾,選擇 “重命名”,將其名稱修改為 “pikachu” 即可。
3.查看數據庫賬戶信息
啟動并進入小皮面板:打開小皮面板應用程序,等待界面加載完成后,進入其主操作頁面。
找到數據庫管理入口:在小皮面板的功能菜單欄中,找到并點擊 “數據庫” 選項,進入數據庫管理界面。
查看默認賬戶信息:在數據庫管理界面中,可直接看到系統默認的數據庫用戶名和對應的密碼。一般情況下,初始設置的用戶名和密碼均為 “root”,若有過修改則顯示修改后的信息。
4.配置數據庫連接信息
定位配置文件:打開文件資源管理器,進入 Pikachu 靶場源碼目錄,找到并進入?pikachu/inc?文件夾。
編輯配置文件:在該文件夾中找到?config.inc.php?文件,右鍵選擇使用文本編輯器(如記事本、VS Code 等)打開。
修改數據庫憑證:在打開的文件中,找到與數據庫連接相關的配置項,通常為?
$dbuser
?和?$dbpass
?變量,將其對應的值修改為在小皮面板中查看到的數據庫用戶名和密碼(默認為?root
)。保存修改:完成修改后,點擊編輯器的保存按鈕或使用快捷鍵(如 Ctrl+S)保存文件,關閉編輯器。
5.創建網站服務
訪問網站管理界面:在小皮面板主窗口中,找到并點擊 "網站" 選項卡,進入網站管理頁面。
啟動網站創建向導:在網站管理界面的左上角,點擊 "創建網站" 按鈕,系統將彈出網站配置對話框。
配置網站根目錄:在對話框的 "路徑" 字段中,通過瀏覽按鈕定位并選擇之前解壓的?pikachu?文件夾所在路徑。
自定義網站參數:根據實際需求填寫其他配置項,例如:
- 域名:可輸入任意本地標識(如?
pikachu.test
) - 端口:保持默認值?
80
(需確保未被占用) - 其他選項:如 SSL 配置、PHP 版本等可按需調整
- 域名:可輸入任意本地標識(如?
完成創建:確認所有配置無誤后,點擊對話框底部的 "確定" 按鈕,系統將自動完成網站環境配置。
6.初始化靶場環境
啟動靶場安裝程序:打開任意瀏覽器(如 Chrome、Firefox 等),在地址欄中輸入?
http://127.0.0.1/install.php
,然后按下回車鍵訪問該 URL。執行初始化操作:在打開的頁面中,找到并點擊 "安裝 / 初始化" 按鈕。系統將自動執行數據庫創建、表結構初始化等操作。
驗證安裝結果:等待初始化過程完成,頁面通常會顯示成功提示信息。此時,Pikachu 靶場已準備就緒,可以開始使用。
三.打開Burp中的“代理模塊”抓取要攔截的皮卡丘登錄頁面
1.啟動靶場訪問
打開瀏覽器應用:從桌面快捷方式、開始菜單或任務欄中啟動您常用的瀏覽器程序(如 Chrome、Edge 等)。
輸入靶場地址:在瀏覽器的地址欄中輸入?
http://127.0.0.1/
(或您在小皮面板中配置的自定義域名)。訪問靶場首頁:按下回車鍵,瀏覽器將加載 Pikachu 靶場的主界面,您可以開始瀏覽和使用各種漏洞測試模塊。
2.進入指定暴力破解測試模塊
瀏覽靶場主界面:成功訪問 Pikachu 靶場后,在打開的首頁中,可看到左側的功能目錄列表。
定位暴力破解分類:在左側目錄里,找到并點擊 “暴力破解” 這一分類選項,展開其包含的子模塊列表。
選擇目標測試項:在展開的子模塊中,找到 “基于表單的暴力破解” 選項并點擊,即可進入該場景的測試頁面,開始相關的安全測試練習。
輸入賬號與嘗試密碼
確認測試頁面:進入 “基于表單的暴力破解” 測試頁面后,可看到包含賬號和密碼輸入框的登錄表單。
填寫已知賬號:在表單的賬號輸入框中,準確輸入已知的賬號 “admin”。
嘗試任意密碼:在密碼輸入框中,隨意輸入一組字符作為測試密碼(例如 “123456”“abcdef” 等均可),完成后準備進行提交操作。
3.使用 Burp Suite 攔截登錄請求
配置 Burp 代理環境:
- 啟動 Burp Suite,在 Proxy(代理)選項卡中,確保 Intercept(攔截)功能已開啟(狀態顯示為 “Intercept is on”)
- 配置瀏覽器代理設置,將 HTTP 代理指向 Burp 默認監聽地址:
127.0.0.1:8080
觸發請求攔截:
- 返回瀏覽器中已打開的 Pikachu 靶場 “基于表單的暴力破解” 頁面
- 在表單中填寫賬號(如 admin)和任意密碼后,點擊頁面上的 “Login” 按鈕提交登錄請求
驗證攔截結果:
- 切換回 Burp Suite 界面,在 Proxy > Intercept 選項卡下,可看到攔截到的登錄請求數據包
- 該數據包包含表單提交的賬號密碼參數(通常為 username=admin&password=xxx)
4.配置 Burp Intruder 暴力破解
導入攔截的請求:
- 在 Burp Suite 的 Proxy > Intercept 面板中,確認已攔截到登錄請求
- 右鍵點擊請求數據包,選擇 "Send to Intruder"(或使用快捷鍵 Ctrl+I)
- 切換到 Intruder 選項卡,系統會自動加載該請求
配置攻擊類型:
- 在 Intruder 的 "Positions" 選項卡中,確保攻擊類型設置為 "Cluster bomb" 或 "Pitchfork"(針對多參數攻擊)
- 清除默認的所有 § 符號(點擊 "Clear §" 按鈕)
標記破解位置:
- 定位到請求中的密碼參數(如
password=xxx
) - 選中密碼值部分(如
xxx
),點擊 "Add §" 按鈕,將其標記為變量位置 - 如需同時破解用戶名,可同樣標記用戶名參數位置
- 定位到請求中的密碼參數(如
驗證配置結果:
- 在 "Positions" 選項卡下方的 "Payload positions" 區域,應看到已標記的變量位置(顯示為
password=§xxx§
) - 確認無誤后,進入下一步配置攻擊載荷
- 在 "Positions" 選項卡下方的 "Payload positions" 區域,應看到已標記的變量位置(顯示為
字典載入
5.執行暴力破解并定位正確密碼
啟動攻擊任務:
- 在 Burp Intruder 的 "Payloads" 選項卡中,確認已成功載入密碼字典(如常見弱口令列表)
- 點擊界面右上角的 "Start attack" 按鈕,開始執行暴力破解任務,系統會自動用字典中的密碼逐一替換標記位置并發送請求
分析攻擊結果:
- 攻擊結束后,在彈出的結果窗口中,切換到 "Length"(長度)列,按該列排序
- 觀察各請求返回的響應長度,通常正確密碼對應的響應包長度會與其他錯誤嘗試不同(例如成功登錄后返回的頁面內容更多)
確認正確密碼:
- 找到響應長度與其他條目存在明顯差異的那一行
- 查看該行對應的 "Payload" 列,即為暴力破解出的正確密碼
6,驗證破解結果并登錄靶場
返回靶場登錄頁面:切換回瀏覽器中的 Pikachu 靶場 “基于表單的暴力破解” 頁面,確保登錄表單處于可輸入狀態。
填入破解信息:在賬號輸入框中再次輸入已知的 “admin”,在密碼輸入框中填寫通過 Burp 暴力破解得到的正確密碼。
提交登錄請求:點擊表單中的 “Login” 按鈕,提交賬號和密碼信息。
確認登錄結果:若信息正確,頁面會跳轉至登錄成功后的界面(通常會顯示歡迎信息或進入后臺頁面),以此驗證破解得到的密碼有效。
7.確認破解成功結果
當在 Pikachu 靶場的 “基于表單的暴力破解” 頁面中,輸入已知賬號 “admin” 和通過 Burp 破解出的正確密碼并點擊 “Login” 后,頁面若顯示 “login success” 的提示信息,即表明此次暴力破解操作成功,成功獲取了該賬號對應的正確密碼。
四.使用Kail中的msf復現永恒之藍
1.永恒之藍(EternalBlue)概述
永恒之藍是一款由美國國家安全局(NSA)開發的網絡攻擊武器,主要利用微軟 Windows 操作系統的SMB 協議(Server Message Block,服務器消息塊)漏洞(CVE-2017-0144)?進行攻擊。該漏洞存在于 Windows 系統的文件共享服務中,攻擊者可通過向目標設備發送特制的 SMB 數據包,遠程執行代碼,從而控制被攻擊的計算機。
核心特點與危害
- 漏洞原理:SMB 協議在處理某些特定請求時存在緩沖區溢出缺陷,攻擊者可構造惡意數據觸發漏洞,實現遠程代碼執行(無需用戶交互)。
- 攻擊范圍:影響 Windows XP、Windows 7、Windows Server 2003/2008 等多個舊版本系統(微軟于 2017 年發布補丁 MS17-010 修復)。
- 危害程度:一旦成功利用,攻擊者可完全控制目標設備,竊取數據、植入惡意軟件(如勒索病毒),甚至組建僵尸網絡。
歷史影響
- WannaCry 勒索病毒:2017 年,黑客組織利用永恒之藍漏洞傳播 WannaCry,全球超過 150 個國家的醫療機構、企業等遭受攻擊,造成巨額損失,成為史上影響最廣的網絡攻擊事件之一。
- 后續衍生攻擊:除 WannaCry 外,Petya、NotPetya 等勒索病毒也借鑒了永恒之藍的攻擊方式,持續威脅未打補丁的老舊系統。
防御措施
- 及時打補丁:安裝微軟發布的 MS17-010 補丁,修復 SMB 協議漏洞。
- 限制服務:關閉不必要的 SMB 服務,或通過防火墻限制 445 端口(SMB 默認端口)的外部訪問。
- 系統升級:淘汰 Windows XP、Windows Server 2003 等不再受支持的舊系統,升級至安全版本。
2,準備工作
- 虛擬機:VMware
- 靶機:Windows 7
- 攻擊機:Kali?
- 工具:Kali中的nmap metasploit(MSF)
3.主機發現操作要點
在進行永恒之藍漏洞測試的主機發現環節,需特別注意目標主機的防火墻狀態:
關閉目標防火墻:進入目標主機的安全設置,暫時關閉系統防火墻(如 Windows 防火墻)。這是因為防火墻可能會攔截端口掃描請求,導致 nmap 無法探測到 445 等關鍵端口的開放狀態,進而影響后續 MSF(Metasploit)對永恒之藍漏洞的利用。
執行主機發現掃描:在確保防火墻關閉后,使用 nmap 等工具進行網絡掃描(例如通過
nmap -sn 目標網段
命令),探測目標主機是否在線及開放的端口信息,為后續漏洞利用確認目標可用性。
4.在 Kali Linux 中使用 Nmap 掃描網段進行主機發現是網絡安全測試的基礎操作。以下是常用的 Nmap 掃描命令及其用途:
4.4.1.?Ping 掃描(快速發現在線主機)
nmap -sn 192.168.1.0/24
- 參數說明:
-sn
:禁用端口掃描,只進行主機發現(通過 ICMPping 或 TCP/UDP 探測)。
- 作用:快速識別網段內哪些 IP 地址正在運行,輸出存活主機列表。
4.4.2.?ARP 掃描(內網主機發現)
- 參數說明:
-PR
:強制使用 ARP 請求進行掃描(適用于同一局域網內的主機發現,繞過防火墻 ICMP 過濾)。
- 適用場景:在無法 ping 通目標主機時(如防火墻攔截 ICMP),通過 ARP 協議發現內網設備。
詳細掃描(獲取主機信息
nmap -sS -O -T4 192.168.1.0/24
- 參數說明:
-sS
:TCP SYN 掃描(半開放掃描),快速且隱蔽。-O
:啟用操作系統檢測(需 root 權限)。-T4
:設置掃描速度(1-5 級,5 最快)。
- 作用:不僅發現在線主機,還能識別開放端口、服務版本及可能的操作系統類型。
?輸出掃描結果到文件
nmap -sn 192.168.1.0/24 -oN scan_results.txt
- 參數說明:
-oN
:以標準格式保存結果到指定文件(scan_results.txt
)。
- 用途:便于后續分析或導入到其他工具(如 MSF)。
注意事項:
- 權限要求:部分掃描(如 SYN 掃描、操作系統檢測)需 root 權限,需使用
sudo
執行命令。 - 防火墻影響:若目標主機開啟防火墻,可能漏報部分開放端口,建議先關閉防火墻或使用 ARP 掃描。
- 掃描策略:大規模掃描時,建議使用
-T4
或-T5
提高速度;針對單個主機,可使用更詳細的掃描參數(如-A
啟用全面掃描)。
5.使用 Metasploit(MSF)進行主機發現步驟
Metasploit(簡稱 MSF)不僅是漏洞利用框架,也集成了主機發現工具,可通過其內置模塊掃描網段內的存活主機。以下是具體操作流程:
啟動 Metasploit
在 Kali Linux 終端中輸入命令啟動 MSF 控制臺:
msfconsole
等待加載完成,進入 MSF 交互界面(顯示msf6 >
提示符)。
?選擇主機發現模塊
MSF 提供多種主機發現模塊,常用的是基于 ICMP(ping)的掃描模塊,輸入以下命令加載:
use auxiliary/scanner/discovery/icmp_ping_sweep
- 該模塊通過發送 ICMP echo 請求(類似 ping 命令)探測存活主機,適用于大部分內網環境。
配置模塊參數
需設置目標網段、線程數等關鍵參數,命令如下:
set RHOSTS 192.168.1.0/24 # 設置目標網段(根據實際網絡修改)
set THREADS 50 # 設置掃描線程數(數值越大速度越快,建議50-100)
- 其他可選參數:
set TIMEOUT 5000
(設置超時時間,單位毫秒)。
執行主機掃描
配置完成后,輸入以下命令開始掃描:
run
- 掃描過程中,MSF 會實時顯示探測到的存活主機 IP(如
192.168.1.101
)。
?查看掃描結果
掃描結束后,可通過以下方式查看結果:
- 直接在控制臺輸出中查找標有 “Host is up” 的 IP 地址。
- 使用
services
命令查看所有發現的主機信息(包含 IP 和狀態)。
其他可選模塊(針對特殊場景)
TCP 端口掃描發現:若目標禁用 ICMP,可嘗試基于 TCP 的掃描模塊:
use auxiliary/scanner/portscan/tcp set RHOSTS 192.168.1.0/24 set PORTS 1-100 # 掃描常用端口(如80、445等) run
通過檢測端口是否開放間接判斷主機是否存活。
ARP 掃描模塊:適用于內網環境,繞過部分防火墻限制:
use auxiliary/scanner/discovery/arp_sweep set RHOSTS 192.168.1.0/24 run
特點與注意事項
- 優勢:MSF 的主機發現可與后續漏洞掃描、利用模塊無縫銜接,適合滲透測試流程。
- 局限性:ICMP 掃描可能被防火墻攔截,需根據目標環境選擇模塊(如 ARP 掃描適用于內網,TCP 掃描適用于防火墻開放端口的場景)。
- 權限要求:部分模塊(如 ARP 掃描)需要 root 權限,建議以
sudo msfconsole
啟動 MSF。
6.永恒之藍漏洞相關掃描
針對永恒之藍(SMB 協議漏洞),需重點掃描TCP 445 端口:
nmap -sT -p445 192.168.1.0/24 # 快速掃描網段內所有主機的445端口
若發現 445 端口開放,可進一步結合版本探測確認是否存在漏洞:
nmap -sT -sV -p445 192.168.1.100 # 探測445端口的SMB服務版本
7.Meterpreter 成功接入及功能說明
當通過 Metasploit(MSF)成功利用漏洞永恒之藍后,終端會顯示?meterpreter >
?提示符,這標志著已建立與目標主機的交互式控制會話,可對目標系統執行深度滲透操作。
Meterpreter 的核心功能與用途
作為 Metasploit 的擴展模塊,Meterpreter 集成了豐富的命令,支持以下關鍵操作:
- 系統交互:通過?
shell
?命令進入目標系統的 CMD(Windows)或終端(Linux),直接執行系統命令(如查看文件、創建用戶等)。 - 信息收集:
screenshot
:截取目標主機當前屏幕畫面,獲取可視化信息。getsystem
:嘗試提權至系統最高權限(如 Windows 的 SYSTEM 權限)。enumprocesses
:列出目標系統正在運行的進程,分析系統狀態。
- 文件操作:
upload 本地文件路徑 目標路徑
:將本地文件上傳至目標主機(如植入惡意程序)。download 目標文件路徑 本地路徑
:從目標主機下載文件(如竊取敏感數據)。
- 持久化控制:
run persistence
:在目標系統創建持久后門,確保重啟后仍能重新連接。metepreter > install_service
:將控制會話注冊為系統服務,隱蔽維持訪問。
- 其他高級功能:如鍵盤記錄(
keyscan_start
)、攝像頭控制(webcam_snap
)等,視目標系統環境支持情況而定。
使用提示
- 輸入?
help
?可查看所有可用命令及說明。 - 執行敏感操作(如提權、創建后門)前,建議先通過?
getuid
?確認當前權限,避免因權限不足導致操作失敗。 - 為避免被檢測,可使用?
background
?命令將會話后臺掛起,后續通過?sessions -i 會話ID
?重新接入。