DDoS教學(上):識破L7 DDoS攻擊,看懂監控數據的門道

本文分上下兩篇
之前在我們在〈殭屍網路猖獗,被動防守沒用!懂分析CDN Log才能預防!〉這篇文章中提到Log對於防禦DDoS攻擊的重要性,包括了CDN服務需提供客戶的請求資訊有哪些等內容,因為記錄下了所有請求的詳細資訊,所以一站式CDN管理平台,能更一步提供各式各樣的視覺化報表,幫助網站資安人員確實掌握每分鐘的流量變化與CDN防禦效能。
通常,管理人員能在「監控面板」找到這些報表,以下將分享:
- 為何監控面板是識破第七層攻擊的必要工具?
- 必要的視覺化報表有哪些?
- 如何分析報表判斷是否有異常流量(DDoS攻擊)?
- 如何看出CDN緩存效能?
- 如何了解CDN防禦情形(WAF防火牆)?(下篇)
- 何謂「回源延遲」?(下篇)
- 「自定義」監控面板的重要性(下篇)
DDoS攻擊有哪些?監控面板4大必看數據!
通訊協定攻擊:主要以OSI的第三層與第四層的漏洞為目標進行攻擊,常見的例如:SYN洪水攻擊、死亡Ping攻擊等,使伺服器的容量或網路超載,癱瘓目標的服務。
應用層攻擊:主要以OSI的第七層為目標進行攻擊,第七層的攻擊更為複雜,例如:不斷重新整理頁面、登入頁面、API使用,使伺服器不斷為了回應HTTP/S的請求而泛洪,造成伺服器效能降低或服務中斷。
以配置Tb級DDoS清洗服務的防禦型CDN來說,第三、四層攻擊將會被自動導向至清洗中心。而第七層的攻擊,因為型態複雜,有時甚至難以察覺,需配合請求日誌、呈現各式數據的流量趨勢報表、WAF規則、告警機制等,判斷與配置不同強度的阻擋規則,精準過濾異常流量,同時讓正常用戶擁有最佳的網站瀏覽體驗。
此時,一站式CDN管理平台的監控面板(視覺化報表)就成為了辨識第七層攻擊的重要工具。
⬛延伸閱讀:這篇就夠!DDoS是什麼意思?有哪些類型?OSI對照!完全解析

第7層DDoS型態複雜,判讀報表之重要性
因第七層DDoS攻擊,變幻莫測又難以發現,很難透過系統自動判斷,因此能整合第七層以及源伺服器相關數據的監控面板,甚至是個人化的數據報表與介面,最能有效幫助判斷可疑的攻擊。以下是CDN平台的必要監測資訊:
- 外部請求:總請求數、訪客數、資料使用量、WAF攔截次數等,藉由數據判斷是否攻擊以及防禦成效。
- 趨勢分析:Domains、Source IP、Http Code、Upstream Http Code & Response Time,針對以上條件分析流量趨勢。
- 回源延遲:Group Origin Latency、Origin Latency、Origin Http Health Status,針對以上條件確認CDN回到源站(源伺服器)時的延遲、狀況。
- 自定義面板:可自訂數據、條件、圖形、篩選,建立個人化的監控面板與視覺化報表。
善用篩選器,觀察特定域名的細部資訊
從監控面板,針對篩選條件如域名或群組,觀察以下重要數據。
- 總請求數:整體的請求數,例如:觀察指定時間段內的流量是否有驟升來判斷異常。
- 訪客數:整體的每個IP(Unique IP)數量,例如:該域名來訪的IP量是否有異常。
- 資料使用量:整體的數據使用量、平均頻寬以及緩存率,了解源伺服器的節省流量。
- WAF攔截次數:利用以防禦為目的或客製化用途的WAF規則的被觸發次數,了解CDN防禦或WAF規則是否有效。
⬛延伸閱讀:WAF是什麼(Web Application Firewall)?傳統防火牆不管用了?

DDoS防禦教學:如何從「請求趨勢」判斷是否為攻擊?
一般來說,從一站式CDN管理平台檢視報表,判斷是否為第七層攻擊時,首先須查看外部請求流量,包括:總請求數趨勢、Top 5 域名、Top 3 站點、國家分佈、WAF攔截次數、攔截類型等。此外,除了DDoS攻擊外,CDN最重要的加速任務:「緩存」的效能是了解CDN表現的關鍵指標,因此,以下將說明,CDN平台使用者該如何解讀外部請求相關數據,發現異常流量、評估緩存策略。
從外部請求報表,看出DDoS攻擊
總請求數的圖表:從總請求數的折線圖觀察出平均請求量中,一天內有哪段時間出現異常高峰。
- Top 5 域名:觀察出時間段排名前5的域名,判斷哪條域名有異常請求量。
- Top 3 站點:查看請求量排名前3的站點,並比對排名前5的域名,來立即判斷域名所在的站點是否異常。
- 國家分佈:可以藉由國家分佈了解每個IP的來源國家,判斷是否有需要限制的國家請求。
例如:報表中,第一條域名流量相比其他域名異常的高,因此可以觀察這筆域名的總請求量,與過去相比,是否有異常峰值,若有異常,判斷為攻擊。如分佈在TW,可以限制TW的請求。

⬛延伸閱讀:DDoS攻擊是什麼?6種DDoS解決方法,使用CDN省下資安成本
DDoS攻擊警訊:WAF是否已被觸發?
從WAF欄截類型與WAF事件類型,看出是否有WAF被觸發,進一步判斷是否為攻擊。
攔截類型:從折線圖中,可以觀察篩選的時間段內,每個時間點觸發的WAF數據,如,1小時內,以每秒呈現被攔截的WAF數據,亦可切換查看原始數據。
WAF事件類型:從環形圖上可觀察篩選的時間段內,被觸發的WAF類型,如,1小時內,被不同WAF規則攔截的比例,亦可透過右下角的檢視功能查看確切數據。
例如:可以由攔截類型與WAF事件類型,查看出有觸發到某個WAF規則,代表WAF規則生效。

資料使用量與緩存率解析
資料使用量&節省流量:藉由折線圖表,比對兩者之前的差別,可以觀察出CDN替(源伺服器)節省了多少流量。
- 資料使用量:用戶端請求整體(單一客戶所有域名)的資料使用量。
- 節省流量:透過緩存,直接將資料回給用戶端,不須回到源伺服器存取資源,替源伺服器省下的流量。
- 結論:資料使用量-節省流量=CDN回到源伺服器存取的量。
- 緩存率:透過圓環圖表,可以知道緩存與不緩存的數據。
- cached(已緩存):深藍色標示為已被CDN緩存的量。
- uncached(未緩存):深紅色為不被CDN緩存的量。
例如:查看某域名整體緩存流量的狀態,可以發現還是有少部分未被緩存。

下篇內容:
⬛延伸閱讀:WAF防火牆規則全攻略!攻擊型態破解、防禦邏輯、佈署策略