Mark Ku's Blog
首頁 關於我
Prevent Http DDoS With Cloudflare - 黑五檔期 DDoS 防禦筆記
Security
Prevent Http DDoS With Cloudflare - 黑五檔期 DDoS 防禦筆記
Mark Ku
Mark Ku
November 27, 2022
1 min

時空背景 - Background

我目前在一家的電子商務公司工作,公司的產品主要服務於美國、德國及加拿大,事情發生在黑色星期五前幾天,就有觀察到,網站經常受到 DDoS 攻擊,直到有一天我們的網站被打掛了,就開始做進一步的調查。

先前有寫一篇文章 也是有關防禦 DDoS 觀念,此篇將防禦規則實踐在 Cloudfalre WAF。

接著參考 Cloudflare 的安全報表,得知在12日,有著約 2000 萬個惡意請求發送到我們的網站。


同時站在網管人員角度思考,腦袋跑出很多疑惑 ? 為何會有單一IP可以有非常大的請求

且為何有許多未運營的國家,對我們網站發出的大量請求。

雖然我們的 Cloudflare是企業版的,看起來靠預設的設定,Cloudflare 雖然擋掉大部份的DDoS,但攻擊的量太大,仍有漏網之魚,然後我花了很多時間學習 Cloudflare,查看 Cloudflalre 所有設置,並和我的老闆討論,接著我制定了一個防止DDoS的計劃,採用 Web 應用程序防火牆規則以在黑色星期五期間保護我們的生意,並取我們得美國老闆的許可。

考量誤判而影響到生意,僅對大量請求的單一IP 進行封鎖,下圖為封鎖畫面。

避免誤判,並在加入 IP 黑名單前,會先用abuseipdb查詢及回報可疑 IP。

其餘規則,避免誤判影響訂單,僅開啟人類驗證,驗證通過才能進入網站

接著,開始建立 WAF 規則 - Create Firewall rules

至Cloudflare 後台 > Secuity > WAF > Create firewall rule

規則1. 白名單- WhiteL ist

規則2. 黑名單 - IP Block ( attacker )

規則3. 國家挑戰 - Country challenge

規則4. 指定IP挑戰 - IP Challenge( suspicious )

規則99. 機械人挑戰 - Automated ( last resort )

規則99. 疑似機械人挑戰 - Likely automated ( last resort )

規則99. 請求頻率限制 - Request Rate ( last resort )

規則100. 僅運營國家能訪問 - Non-operating country

另外可以調 DDOS 敏感度 (Security > Settings > DDos > Configure > Security Level > Medium

若真的都抵擋不下來,可以啟用 I’m Under Attack mode,所有的使用者都會等待五秒才能進入網站,但使用完記得調整回原設定。 Security > Settings > DDos > Configure > Security Level > Enable I’m Under Attack mode

效益 - Effective

從感恩節 - 黑五檔期(三天),一共遇到 7 次 DDoS 攻擊,累積收到1300多萬惡意流量,最高一次攻擊瞬間收到300萬個請求,直到第五次攻擊後,網站跳停約30秒,從報表中發現攻擊型態轉變,從集中的 IP、 國家,從大量集中變成小量又分散的攻擊,最後決定透過 Cloudfalre 精準的械器學習結果規則做限制,在不影響生意下,除了單一 IP大量請求是直接封鎖,其他都是送他人類驗證,順利的度過今年的黑五檔期。的黑五很精彩,很多外部服務都出現異常狀況。

總共收到1363萬的請求

WAF 幫忙也阻擋了 500 多萬的請求

Bot 分析報表


Tags

Mark Ku

Mark Ku

Software Developer

8年以上豐富網站開發經驗,直播系統、POS系統、電子商務、平台網站、SEO、金流串接、DevOps、Infra 出身,帶過幾次團隊,目前專注於北美及德國市場電商網站開發團隊。

Expertise

前端(React)
後端(C#)
網路管理
DevOps
溝通
領導

Social Media

facebook github website

Related Posts

DDOS 防禦筆記
DDOS 防禦筆記
January 16, 2022
1 min

Quick Links

關於我

Social Media