WAF 網站應用程式防火牆
你網站門口的保全 —— 每位訪客進門前都先檢查一遍,把壞人擋在外面。
WAF 是什麼?
WAF 全名是 Web Application Firewall(網站應用程式防火牆)。它擋在你網站的最前面,檢查每一筆進來的請求(request,瀏覽器向網站發出的要求),把看起來像攻擊的擋掉,正常訪客則放行。
傳統防火牆是用 IP 位址和連接埠(port)來擋;WAF 更聰明,它看得懂網頁流量,能揪出藏在請求裡的把戲 —— 例如有人想透過登入表單偷走你的資料庫內容。
把它想成…
一位拿著黑名單的夜店保全。一般客人正常進場,但只要符合已知麻煩人物的特徵,就會被攔在門口 —— 不管他怎麼喬裝打扮。
為什麼要用它?
網站隨時都被自動化攻擊掃描測試。WAF 讓你不必是資安專家,也能擋下最常見、最危險的那幾類攻擊。
SQL 注入攻擊
攻擊者把資料庫指令偷渡進表單,藉此讀取或刪除你的資料。WAF 會辨識並擋下這類攻擊(SQL 注入)。
跨站腳本攻擊(XSS)
把惡意腳本塞進你的頁面,藉此劫持訪客的登入狀態。WAF 會把它過濾掉。
零時差漏洞
剛被發現、還沒修補的全新漏洞(零時差)。Cloudflare 的託管規則會快速更新來防堵。
外洩帳密
擋下用已知外洩帳號密碼來嘗試登入的行為。
什麼時候該用?
線上商店
只要會處理付款或顧客資料,就該多一層防護。
有登入功能的網站
登入頁是帳密填充與注入攻擊的首要目標。
對外開放的 API
API 會從各處接收資料,正是 WAF 規則最派得上用場的地方。
流量成長中
你越紅,越多機器人和攻擊者會找上門。
怎麼開始用?
只要你的網域已經接上 Cloudflare,WAF 就在儀表板的「Security(安全)」底下。以下教你開啟防護並寫出第一條自訂規則。
把網站加進 Cloudflare
註冊、加入你的網域,把名稱伺服器(nameserver)改指向 Cloudflare,流量就會經過它。
開啟託管規則
進入 Security → WAF → Managed rules(託管規則)。部署 Cloudflare Managed Ruleset(免費方案則是 Free 託管規則組),立刻涵蓋 OWASP Top 10 攻擊。
建立自訂規則
進入 Security → WAF → Custom rules(自訂規則)→ Create rule。設定條件(例如擋掉某國家的訪客,或對 /admin 的請求),再選一個動作,像是 Block(封鎖)或 Managed Challenge(智慧驗證)。
When incoming requests match: (http.request.uri.path contains "/admin") and (ip.src.country ne "TW") Then: Action: Block加上速率限制
進入 Security → WAF → Rate limiting rules(速率限制),限制單一訪客在一段時間內能送出的請求數 —— 對付暴力破解登入超有效。免費方案內含一條速率限制規則。
查看安全事件
打開 Security → Events(安全事件),看看擋下了什麼、為什麼擋,再微調規則,避免誤傷真正的訪客。
重點概念
託管規則
由 Cloudflare 資安團隊維護、會自動更新的現成規則組 —— 不用自己設定就有防護。
OWASP 核心規則組
業界標準規則,採「異常分數」機制:每個可疑訊號加一點分,分數超過門檻就封鎖該請求。
自訂規則
你自己寫的「如果…就…」規則,用 Cloudflare 的篩選運算式語法撰寫。
速率限制
限制每位訪客在一段時間內的請求量,阻止洪水攻擊與暴力破解。
智慧驗證
不直接封鎖,而是請訪客證明自己是真人 —— 機器人通常過不了關。
攻擊分數
機器學習給出的分數(Pro 以上方案),評估一筆請求有多像攻擊,連全新手法也抓得到。
小提示與計費
先用 Log 模式試水溫
新規則先設成 Log(只記錄、不封鎖)跑幾天,觀察事件確認沒誤傷真正使用者,再切換成 Block。
- 免費方案就含一組針對高風險漏洞的託管規則、基本自訂規則,以及一條速率限制規則。
- 進階託管規則組、攻擊分數、更多速率限制規則,要 Pro、Business、Enterprise 方案。
- WAF 跑在 Cloudflare 的 DDoS 防護之後,所以大量洪水攻擊(DDoS,分散式阻斷服務攻擊)在你的規則看到之前就先被濾掉了。
- 敏感資料偵測(在回應中標記出外洩的信用卡號等資料)是 Enterprise 方案功能。