恭喜大家正式踏入鐵人賽的第四階段:資安基礎防護與 CTF 觀念結合!這也是我們 30 天挑戰的最終篇章。
前面我們學會了如何看懂封包、重組檔案,甚至破解了駭客的探測起手式 (Nmap)。從今天開始,我們要直擊真實的網路攻擊現場。今天我們將模擬世界上最臭名昭彰的 DDoS (分散式阻斷服務攻擊) 中的經典手法——SYN Flood (SYN 洪水攻擊)。
為了安全起見,我們將攻擊目標設定為「虛擬機自己 (localhost)」。請繫好安全帶,我們準備發動攻擊!
要發動洪水攻擊,我們需要一個能夠自訂封包格式且發送速度極快的工具,在 Linux 界首推 hping3。
【實作練習】
打開終端機,輸入以下指令進行安裝:
sudo apt install hping3 -y

確認安裝完成後,我們就可以準備發動攻擊了。
SYN Flood 的原理非常邪惡:駭客利用 TCP 三方交握的機制,瘋狂向伺服器發送第一步的 [SYN] 請求,但當伺服器回傳 [SYN, ACK] 並空出資源等待連線時,駭客卻直接消失不理會。當大量的「半開連線」耗盡伺服器的記憶體與連線池時,正常的合法使用者就再也連不進去了。
【實作練習】
lo (Loopback 網卡) 並開始擷取。sudo hping3 -S -p 80 --flood 127.0.0.1
(指令解析:-S 發送 SYN 封包,-p 80 目標為 Port 80,--flood 盡可能用最快速度發送、不等待任何回應。)
Ctrl + C 停止攻擊,否則虛擬機可能會因資源耗盡而當機!
畫面解析:
看看終端機的統計結果,短短幾秒內,我們就送出了超過 11 萬個封包!背後的 Wireshark 更是被一片紅底黑字的異常封包徹底洗版,充滿了密密麻麻的 [SYN] 以及伺服器不堪其擾回傳的 [RST, ACK]。
面對海量封包,單看一行一行的列表是很難衡量災情規模的。我們可以用視覺化的方式來呈現 DDoS 的威力。
【實作練習】
停止抓包後,點擊上方選單的 Statistics (統計) -> I/O Graphs (I/O 圖表)。

畫面解析:
這張圖表將時間作為 X 軸、封包數量作為 Y 軸。你可以非常直觀地看到,原本平靜的網路,在攻擊發動的那幾秒鐘內,瞬間爆發出一根直衝天際的紅色尖刺(每秒突破 15,000 個封包)。在真實的企業網路監控中心,一旦監測螢幕上出現這種不尋常的尖峰,防禦機制與清洗中心就會立刻啟動。
面對未知的網路異常,如果你不會看圖表,Wireshark 其實內建了一個超級貼心的「資安警報器」,它會自動幫你標示出有問題的行為。
【實作練習】
關閉圖表,點擊上方選單的 Analyze (分析) -> Expert Information (專家資訊)。

畫面解析:
展開 Warning (警告) 區塊後,你會看到 Wireshark 已經自動將這場災難進行了分類。
畫面上亮起了高達 108,110 筆的 Connection reset (RST) 警告!這代表 Wireshark 的分析引擎已經察覺到網路上正發生嚴重的連線中斷與異常拒絕,直接幫網管人員抓出了問題的核心癥結。
今天我們親手發動並觀測了 SYN Flood 攻擊,透過 I/O 圖表與專家資訊,我們見證了 DDoS 是如何以粗暴的流量癱瘓網路資源。在實務上,防禦端通常會利用防火牆設定連線速率限制 (Rate Limiting) 或是 SYN Cookies 技術,來抵禦這類型的洪水攻擊。
我們今天示範的是「硬碰硬」的暴力攻擊。那如果是躲在暗處,偷偷把你的封包攔截下來修改再送出去呢?
明天 [Day 24],我們將探討另一種極度危險的攻擊模式:「中間人攻擊 (MITM) 與 ARP 欺騙」,教你如何看出網路中出現了不速之客!我們明天見。