拒絕服務(wù) (DoS) 攻擊是一種嘗試對(duì)合法最終使用者進(jìn)行惡意攻擊,以影響其目標(biāo)系統(tǒng) (例如網(wǎng)站或應(yīng)用程式) 可用性的行為。通常,攻擊者會(huì)產(chǎn)生大量的封包或請(qǐng)求,最終使得目標(biāo)系統(tǒng)無(wú)法負(fù)荷。如果是分散式拒絕服務(wù) (DDoS) 攻擊,攻擊者會(huì)使用多個(gè)盜用或受控的來(lái)源來(lái)產(chǎn)生攻擊。
開(kāi)放式系統(tǒng)互聯(lián) (OSI) 模型:
- #——層——應(yīng)用程式——描述——向量范例
- 7——應(yīng)用程式——資料——應(yīng)用程式網(wǎng)路程序——HTTP 泛洪、DNS 查詢泛洪
- 6——展示——資料——資料展示和加密——SSL 濫用
- 5——工作階段——資料——中間主機(jī)通訊——不適用
- 4——傳輸——區(qū)段——端對(duì)端連線和可靠性——SYN 泛洪
- 3——網(wǎng)路——封包——路徑判定與邏輯定址——UDP 反射攻擊
- 2——資料連結(jié)——框架——實(shí)體定址——不適用
- 1——實(shí)體——位元——媒體、訊號(hào)和二進(jìn)位傳輸——不適用
DDoS攻擊分類(lèi)
思考對(duì)抗這些攻擊的風(fēng)險(xiǎn)降低技術(shù)時(shí),將這些攻擊區(qū)分為基礎(chǔ)設(shè)施層 (Layers 3 和 4) 與應(yīng)用程式層 (Layer 6 和 7) 攻擊會(huì)很有幫助。
基礎(chǔ)設(shè)施層攻擊
Layer 3 和 4 的攻擊通常歸類(lèi)為基礎(chǔ)設(shè)施層攻擊。這也是最常見(jiàn)的 DDoS攻擊類(lèi)型,包括同步 (SYN) 泛洪等攻擊途徑,以及使用者資料包封包 (UDP) 泛洪等其他反射攻擊。這些攻擊通常數(shù)量龐大,且旨在使網(wǎng)路或應(yīng)用程式伺服器的容量超載。幸運(yùn)的是,這類(lèi)攻擊類(lèi)型都具有清晰的簽章,因此很容易偵測(cè)。
應(yīng)用程式層攻擊
Layer 6 和 7 的攻擊通常歸類(lèi)為應(yīng)用程式層攻擊。雖然這些攻擊較不常見(jiàn),但卻更為復(fù)雜。這些攻擊與基礎(chǔ)設(shè)施層攻擊相比數(shù)量通常較少,但是傾向針對(duì)應(yīng)用程式特定的重要部份進(jìn)行攻擊,使實(shí)際使用者無(wú)法使用應(yīng)用程式。例如,對(duì)登入頁(yè)面或重要搜尋 API 進(jìn)行 HTTP 請(qǐng)求泛洪,或甚至是 WordPress XML RPC 泛洪 (也稱為 WordPress pingback 攻擊)。
DDoS 保護(hù)技術(shù)
1、減少受攻擊區(qū)域
減緩 DDoS攻擊的首選技術(shù)之一,是將可能受攻擊的區(qū)域降到最低,以限制攻擊者的選擇,讓您能夠在單一位置建立保護(hù)。我們要確保應(yīng)用程式或資源不會(huì)公開(kāi)至不應(yīng)收到任何通訊的連接埠、協(xié)定或應(yīng)用程式。從而大幅減少可能的攻擊點(diǎn),讓我們專(zhuān)注于減緩攻擊風(fēng)險(xiǎn)。在某些情況下,可以將運(yùn)算資源放在內(nèi)容分發(fā)網(wǎng)路 (CDN) 或負(fù)載平衡器之後,使網(wǎng)際網(wǎng)路流量無(wú)法直接流向基礎(chǔ)設(shè)施 (例如資料庫(kù)伺服器) 的某些部分。在其他情況下,您可以使用防火墻或存取控制清單 (ACL) 來(lái)控制可流向您應(yīng)用程式的流量。
2、擴(kuò)展計(jì)劃
減緩大規(guī)模 DDoS攻擊的兩個(gè)主要考量是,可承擔(dān)與減緩攻擊的頻寬 (或傳輸) 容量和伺服器容量。
(1)傳輸容量:建立應(yīng)用程式的架構(gòu)時(shí),請(qǐng)確保托管供應(yīng)商提供足以讓您處理大流量的冗余網(wǎng)際網(wǎng)路連線能力。DDoS攻擊的最終目的是影響資源/應(yīng)用程式的可用性,因此您不僅應(yīng)將資源/應(yīng)用程式放置在靠近最終使用者的位置,并且還要靠近大型網(wǎng)際網(wǎng)路交換,讓使用者即使在高流量期間也能輕松存取應(yīng)用程式。此外,Web 應(yīng)用程式可以更進(jìn)一步采用內(nèi)容分發(fā)網(wǎng)路 (CDN) 和智慧 DNS 解析服務(wù),這通常會(huì)從較靠近最終使用者的位置,為服務(wù)內(nèi)容和解析 DNS 查詢提供額外的網(wǎng)路基礎(chǔ)設(shè)施層。
(2)伺服器容量:大多數(shù)的 DDoS攻擊是大規(guī)模攻擊,會(huì)占用大量資源;因此,能夠快速擴(kuò)展或縮減運(yùn)算資源非常重要。實(shí)行的方式包括在較大的運(yùn)算資源執(zhí)行,或在具有更廣泛的網(wǎng)路界面或支援更大流量的增強(qiáng)型聯(lián)網(wǎng)等功能的資源中執(zhí)行。此外,通常也會(huì)使用負(fù)載平衡器,持續(xù)監(jiān)控及轉(zhuǎn)換資源之間的負(fù)載,以防任一資源超載。
了解什么是正常和異常流量
每當(dāng)我們偵測(cè)到攻擊主機(jī)的流量增加時(shí),最基本的底線就是在主機(jī)能夠處理且不影響可用性的情況下,盡可能地接受流量。這個(gè)概念稱為速率限制。更進(jìn)階的保護(hù)技術(shù)可以更進(jìn)一步以智慧型的方式,透過(guò)分析個(gè)別封包僅接受合法的流量。若要這樣做,您必須了解正常流量的特性,目標(biāo)通常可接收正常流量且能夠根據(jù)此底線來(lái)比較每個(gè)封包。
針對(duì)復(fù)雜的應(yīng)用程式攻擊部署防火墻
理想的做法是使用 Web 應(yīng)用程式防火墻 (WAF) 來(lái)防止攻擊,例如 SQL injection 或跨網(wǎng)站請(qǐng)求偽造,這類(lèi)攻擊都會(huì)嘗試?yán)脩?yīng)用程式本身中的漏洞。此外,由于這些攻擊的獨(dú)特性質(zhì),您應(yīng)該能夠針對(duì)非法請(qǐng)求輕松建立自訂風(fēng)險(xiǎn)降低措施,這些請(qǐng)求可能具有偽裝成正常流量或來(lái)自錯(cuò)誤 IP、未預(yù)期地理位置等特徵。在發(fā)生攻擊時(shí),得到經(jīng)驗(yàn)豐富的支援來(lái)研究流量模式以及建立自訂保護(hù)措施,都有助于減緩攻擊。