觀點 · 資訊分享
Cloudflare 外洩密碼偵測補上 Basic 驗證:瀏覽器跳出的登入框也會自動檢查,免費方案也有
Cloudflare WAF 的外洩帳密偵測開始檢查 HTTP Basic 驗證的 Authorization 標頭。已開啟偵測的網站自動套用、不用改設定,用外洩密碼登入的請求現在也抓得到。
- 發布
- 2026-08-21
- 篇幅
- 約 4 分鐘 · 1,775 字
- 結構
- 7 節 + 3 題常見問題
- 標籤

一句話看懂:Cloudflare 的外洩密碼偵測,現在連「瀏覽器跳出小視窗要你輸入帳密」的 Basic 驗證也一起檢查,已開啟的網站自動生效。

先用白話講:外洩帳密偵測是什麼?
很多人在不同網站用同一組密碼。某個網站被駭、帳密外流後,壞人就會拿這份名單到處試,這叫撞庫攻擊。
Cloudflare 的外洩帳密偵測就像大樓警衛手上有一份「已經流出去的鑰匙清單」:有人拿著清單上的鑰匙來開門,警衛就會注意到,再由你決定要不要攔下來。
問題是,警衛以前只檢查「正門」,也就是常見網站程式的登入表單。用 Basic 驗證(瀏覽器直接跳出帳密小視窗的那種)走進來的人,預設不會被檢查。
發生什麼事
Cloudflare 在 8 月 20 日的更新日誌宣布:
- 外洩帳密偵測新增一個預設掃描位置:
Authorization請求標頭裡的 Basic 驗證帳密 - 系統會把
Authorization: Basic <帳密>解開,取出帳號與密碼,跟其他位置一樣拿去比對外洩資料庫 - 比對結果寫進原本就有的欄位(例如
cf.waf.credential_check.password_leaked),舊的自訂規則、速率限制規則不用改 - 已經開啟外洩帳密偵測的網站自動套用,不需要任何設定
哪些方案用得到?
依官方文件目前的方案表(節錄):
| 方案 | 外洩帳密偵測 | 可用欄位 |
|---|---|---|
| Free | 可以 | 密碼已外洩 |
| Pro、Business | 可以 | 密碼已外洩、帳密組合已外洩 |
| Enterprise | 可以 | 全部欄位,另可設 10 個自訂偵測位置 |
內建支援的網站程式有 7 款:Drupal、Joomla、Ghost、Magento、Plone、WordPress、Microsoft Exchange OWA,另外還有一般常見登入模式的通用規則。
給開發者的技術細節
偵測本身只會「標記」,要擋要放得自己寫規則。例如在自訂規則裡,對後台路徑上密碼已外洩的請求跳出驗證:
(http.request.uri.path contains "/admin" and cf.waf.credential_check.password_leaked)
動作:Managed Challenge
- 也可以開啟官方的 managed transform,讓 Cloudflare 在請求加上
Exposed-Credential-Check標頭,後端收到後提醒使用者改密碼 - 官方文件寫明:檢查時不儲存、不記錄明文密碼,密碼會先雜湊再比對
- 外洩資料庫包含 Have I Been Pwned 的密碼資料集,以及 Cloudflare 自己收集的帳號與帳密組合
我的看法
Basic 驗證在接案現場其實很常見:測試站、客戶的簡易後台、NAS 上自架服務的管理頁,常常就是在反向代理前面加一層 Basic 驗證了事。它設定簡單,但沒有登入失敗鎖定,也沒有什麼防撞庫的機制。
這次更新的價值在於「不用改程式就多一層檢查」。如果你的網站已經接在 Cloudflare 後面,建議做兩件事:第一,確認外洩帳密偵測有打開;第二,替後台路徑加一條「密碼已外洩就跳驗證」的規則。長遠來看,重要的後台還是該換成有雙因素驗證的登入方式,Basic 驗證只適合當第一道門。
名詞小辭典
- WAF(網頁應用程式防火牆):擋在網站前面、檢查每個請求有沒有攻擊行為的防護層。
- 撞庫攻擊:拿其他網站外洩的帳密,大量到別的網站嘗試登入。
- Authorization 標頭:請求裡用來放登入憑證的欄位。
- 雜湊(Hash):把密碼轉成一串無法還原的字串,用來比對而不必看到原文。