百科學習

2025-06-19

【DDoS攻擊】ACK 洪水攻擊 是什麼?|Skycloud

ACK 洪水攻擊是一種常見於 TCP 層的 DDoS 攻擊手法,攻擊者會發送大量的 TCP ACK 封包,用大量無效封包癱瘓伺服器的運作,讓正常使用者無法使用網站或系統所提供的線上服務。

【DDoS攻擊】ACK 洪水攻擊 是什麼?|Skycloud
background image

ACK 洪水攻擊是一種常見於 TCP 層的 DDoS 攻擊手法,攻擊者會發送大量的 TCP ACK 封包,用大量無效封包癱瘓伺服器的運作,讓正常使用者無法使用網站或系統所提供的線上服務。


目錄

➤ACK 洪水攻擊是什麼?  
➤ACK 洪水攻擊如何運作?  
➤ACK 洪水攻擊情境  
➤什麼是 ACK 封包?  
➤如何防禦 ACK 洪水攻擊?


ACK 洪水攻擊是什麼?


 ACK 洪水攻擊(ACK Flood Attack) 是 DDoS 攻擊方式的一種,攻擊者會利用發送大量的 TCP ACK 封包,使伺服器過載。ACK 洪水攻擊的主要目的和其他 DDoS 攻擊一樣,是透過垃圾資料來降低攻擊目標網站伺服器的資料處理速度,最終導致其崩潰或停擺,讓使用者無法使用網站或系統提供的線上服務。

 ACK 洪水攻擊 的特色,則在於目標伺服器必須處理每一個收到的 ACK 封包,從而消耗大量計算資源,導致網站伺服器無法提供服務。

簡單來說...

  • 攻擊原理:攻擊者偽造大量ACK(確認) 封包,並持續發送至目標伺服器。

  • 攻擊目的:佔用伺服器資源,降低其處理正常請求的能力。


ACK 洪水攻擊如何運作?


 ACK 洪水攻擊 是一種常見於 TCP 層(OSI模型 L4) 的 DDoS 攻擊手法,攻擊者透過大量的 ACK 封包 向目標伺服器發送請求,消耗其網路資源或系統效能,導致服務中斷或效能下降。ACK 洪水攻擊 的運作方式如下。


  1. 跳過正常連線程序,直接發送 ACK 封包
    在正常的 TCP 通訊中,會經過三次握手(SYN → SYN,ACK → ACK) 建立連線,但在 ACK 洪水攻擊中,攻擊者會跳過建立連線的流程,直接跳到第三次握手並大量送出帶有 ACK 的封包給目標主機。這些封包未經合法三次握手,因此屬於異常連線請求,目的僅為干擾伺服器運作。


  2. 迫使伺服器查詢不存在的連線資訊
    當伺服器收到 ACK 封包時,會試圖在自己的連線追蹤表中尋找是否有對應的連線,但這些 ACK 封包根本不是從既有連線產生,伺服器會無法匹配連線資訊,卻仍會為此進行資源耗費,例如:查詢連線狀態表、嘗試回應錯誤訊息,和更新封包記錄或統計資料。


  3. 耗盡伺服器資源,導致服務變慢或中斷
    當 ACK 封包的數量過多時,伺服器會被迫消耗大量 CPU、記憶體或網路頻寬去處理這些無效封包,導致正常用戶連線變慢與超時、TCP 連線表溢出以及系統資源被耗盡,甚至當機。


  4. 常搭配 IP 偽造與殭屍網路放大攻擊規模
    攻擊者通常會偽造來源 IP,或透過殭屍網路(Botnet) 從全球數千台裝置發送 ACK 封包,使攻擊來源分散、難以追蹤與封鎖,也讓傳統防火牆難以辨識是否為合法流量。


ACK 洪水攻擊情境


 ACK 洪水攻擊 會發送大量 ACK封包(確認訊息) 給伺服器,這些封包並非來自正常連線,也就是沒有完成 TCP 三次握手的情況,但伺服器還是會針對每個 ACK 封包去查詢資源或更新狀態,最終目的則是耗盡伺服器的資源,讓伺服器無法處理正常連線。

我們以白話情境來比喻,讀者可能會比較容易理解。


情境一:假客人湧入餐廳,不斷催餐卻沒下單

假設我們是一間餐廳,你是一位服務員,客人點餐前要先經過三個步驟:

  1. 客人說:「我要點餐」

  2. 服務員:「請問要點什麼?」

  3. 客人說:「我要一份蒜泥白肉」

  4. 開始準備 (這就像正常的 TCP 三次握手)

但是某天來了一大群人一直湧入餐廳,每個客人一進來就說「我已經點過了,蒜泥白肉做好了嗎?」,可是服務員完全沒有收到第一句「我要點餐」的開頭,但是他們卻一直不斷地問「我的蒜泥白肉作好了嗎?」(這就是 ACK 封包)

你作為服務員,就會被這些來亂的「假客人」弄得亂七八糟、焦頭爛額,根本沒辦法處理真正有點餐需求的客人,餐廳也因此卡住甚至停擺。


情境二:假客戶湧入來電,不斷催促卻沒問問題

假設我們是一間企業,你是一位客服人員,客戶詢問問題要經過三個步驟:

  1. 客戶:(來電)

  2. 客服:「請問有什麼問題?」

  3. 客戶:(說明需求)

  4. 等待回答 (像正常的 TCP 三次握手)

但是有一天突然有一堆來電,一接起來對方就說「我剛剛問的問題有回覆了嗎?你處理好了嗎?」客服完全沒有這些客戶的第一通來電,也沒有留下任何紀錄,只是不斷的詢問「剛剛問題有回覆了嗎?」(這就是 ACK 封包)

你作為客服人員,就會被這些來亂的「假客戶」干擾,每一通詢問電話你都得花資源查詢一下,導致系統和客服都忙翻了,真正有需求的客戶卻無法進入,企業客服系統就會因此卡住或停擺。


以上就是 ACK 洪水攻擊 在真實情境中的場景。


什麼是 ACK 封包?


 透過網際網路傳送的所有數據資料,都會被分解成較小的區段,稱之為封包。每一個封包在傳輸過程中,會附帶一些控制資訊,幫助傳送與接收雙方確認資料是否正確傳達。

 ACK 是 Acknowledgement (確認) 的縮寫,是一種用來回覆「我已經收到你傳來的資料」的訊息,在電腦網路、電信或通訊協定中,ACK 是非常關鍵的回應機制,確保資料不會遺失或重複。

 在許多通訊協定中,例如網際網路的 傳輸控制協定(TCP) ,都會以 ACK 作為一個核心控制訊號,當發送端傳出一筆資料後,接收端會回覆一個 ACK 封包,表示這筆資料已成功接收,若未收到 ACK,發送端就會重新傳送資料,確保訊息不漏失。

 從技術角度來說,ACK 封包 是一種 在 TCP 封包的標頭(Header) 中,ACK 位元被設為 1 的封包,代表「這是對之前某個封包的接收確認」。

TCP三次握手

▲ ACK 封包是 TCP 交握的一部分


如何防禦 ACK 洪水攻擊?


 ACK 洪水攻擊雖然不像其他攻擊(如SYN Flood) 那樣直接耗盡連線,但 ACK 洪水攻擊 會一直消耗伺服器的資源,讓伺服器處理大量沒用的確認訊息(ACK 封包),導致網路效能下降甚至癱瘓。

 建議導入 「Anti-DDoS 清洗服務或 CDN 防禦」,這類服務可以將攻擊流量引導到雲端清洗中心、自動辨識異常的 ACK 流量,並幫你把惡意流量擋在外面,只讓正常流量進入網站,如此可以大幅減輕主機負擔,讓網站在攻擊中也能保持穩定。如:騰雲運算 或 Cloudflare…等。

 與防火牆或限速等屬於被動策略不同,Anti-DDoS 清洗服務是主動式防禦,能在攻擊發生當下即時辨識與隔離惡意流量,提供更高等級的防護。

另外,我們也可以採用有狀態防火牆或入侵防禦系統,或是設定流量限制與異常封包控制。

  • 使用有狀態防火牆或入侵防禦系統(IPS)
    有狀態防火牆可以識別是否為真正的 TCP 連線,若封包只是單純的 ACK 而沒有連線紀錄,防火牆可以直接丟棄。IPS 系統也能協助偵測異常流量。

  • 設定流量限制與異常封包控制
    你也可以在伺服器或網路設備上設定限制,比如:單一 IP 封包數量上限和阻擋來路不明或偽造 IP 的封包。


 雖然可以用防火牆、IPS、限速等方法協助防禦,但如果網站本身流量大,或遇到大規模 DDoS 攻擊,最可靠的方式還是使用 CDN 和 Anti-DDoS 清洗服務,這樣才能真正把攻擊隔離在邊緣,保護主站不被癱瘓。

 因此,面對大規模 ACK 洪水攻擊,部署具備主動清洗與即時辨識能力的防禦服務,是保護網站穩定運作的最佳策略,這不僅能防止網站資源被濫用,也確保真正的使用者在攻擊期間仍能順利存取服務。


參考資料:
維基百科|確認訊息ACK 封包
Cloudflare|什麼是 ACK 洪水 DDoS 攻擊?| DDoS 攻擊類型


延伸閱讀:
TCP是什麼?TCP 工作原理與 TCP 常見的 DDoS攻擊
DDoS攻擊原理解析!如何防禦DDoS攻擊
CC攻擊是什麼?看似正常流量的攻擊也能癱瘓網站!CC攻擊特徵、影響與防禦
低速緩慢攻擊是什麼?DDoS攻擊手法介紹

Previous:東南旅遊選擇騰雲運算 CDN,成本節省 30%+ 在地支援更即時|​​案例分享|Skycloud

Next:DDoS 對企業造成的損失|DDoS 攻擊急速增長,企業損失與防禦成本逐年飆升|Skycloud

SkyCloud Offers Free Trials

Activate When Ready!

check-black Experience fast, secure, and reliable service.

check-blackTest first, decide later. Zero risk.

We invite you to experience our superior performance firsthand. Discover SkyCloud's speed, reliability, and flexibility. Test it out, and activate only when you are satisfied.

background imagebackground image