
什麼是WAF的偽陽性,為什麼我需要關心,以及我該如何解決它們?
介紹
捍衛網站和網頁應用程式不受攻擊的重要性比以往任何時候都來得更高。每個月都會有新的報導,說明許多組織遭受到從尷尬到災難性的網路攻擊。在2025年4月,英國零售商Marks & Spencer遭受攻擊,造成了約4億美元的營收損失。
應對這些持續威脅的最有效風險管理方式是什麼呢?
網站和網頁應用程式最佳的防禦方式是採用多層獨立的防禦措施。這可以想像成洋蔥的層次,安全的應用程式位於中心。如果攻擊繞過了一層防禦,那麼仍有其他防禦層在持續提供安全保障。

加入WAF:優點與缺點
優勢
網路應用程式防火牆(WAF)是一個重要的防禦層範例。WAF 能夠監控網路流量,偵測看起來有惡意的流量並主動阻擋它。這有助於防止對外公開的網站和應用程式成為駭客的低架可得目標。所有公開互聯網上的網路服務都應該實施 WAF。許多安全標準(例如 PCI DSS)和組織都有健全的安全政策,要求防禦必須使用 WAF。
缺點
如果部署 WAF 的安全優勢如此顯著,那麼有什麼陷阱呢?
加入 WAF 所提供的安全規則和檢查可能會引發 誤判:這些錯誤會干擾位於 WAF 後面的網路服務的正常運作。這些錯誤有可能讓使用者和負責修復的工程師都感到痛苦,就像無止境的打地鼠遊戲一樣。
這篇部落格文章是探討 WAF 功能系列的第一篇。它討論了在使用 WAF 時出現的誤報問題,並探討如何利用 Progress LoadMaster 360 中強化的 WAF 功能輕鬆減輕誤報的影響。文章內容包括:
- 什麼是偽陽性(false positive)?
- 為什麼偽陽性會成為一個問題?
- 我們可以如何修正偽陽性,LoadMaster 360 的增強工具又如何協助?
偽陽性是什麼?
使用 WAF(例如內建於 Progress Kemp LoadMaster 的 WAF)時,基本的作業流程是相似的。對於每個來自使用者的 HTTP 網頁請求,都會針對每個請求執行一系列的 規則。這些「WAF 規則」皆是為了偵測不同的惡意或異常行為而設計的。
WAF 規則的範例包括:
- 請求是否缺少主機標頭?(這是網路請求的一個標準部分)
- 請求是否在試圖存取可疑的檔案類型?(例如 .bat、.conf、.ini)
- 請求是否包含 SQL 指令?(可能是注入攻擊)
一個合法的 HTTP 請求應該可以通過 WAF 的檢測規則,並被視為正常的請求。WAF 應該接受這個合法的請求,並允許它繼續前往應用伺服器,像這樣:

| 你知道嗎? 一個合格的WAF——包括LoadMaster WAF——應該具備處理和檢查HTTP回應的能力。這樣就可以檢查敏感資訊是否洩漏,例如。然而,回應檢查遠比請求檢查少見。為了簡單起見,這篇文章將專注於請求。 |
當一個合法的請求導致 WAF 的偵測規則匹配時會發生什麼呢?這被視為一種錯誤,稱為 false positive(誤判)。這個錯誤的規則使得合法請求被視為可能的惡意請求,結果 WAF 可能會 拒絕 這個請求:

為什麼誤報會成為一個問題?
不佳的使用體驗
錯誤的正面結果最直接的問題就是造成不佳的用戶體驗。想像一下,在網路商店中按下「提交訂單」的按鈕卻遇上「403 存取被拒」的錯誤,然後就陷入死胡同。這樣的結果會讓人感到非常惱火。當錯誤的正面結果導致請求被阻擋時,真正的用戶就無法順利完成他們需要做的事情。

感到不滿的使用者可能會提出抱怨,造成來自利益關係者的壓力,要求停用甚至移除 WAF,以解決根本問題。這樣的做法將會是為了使用性而重大犧牲安全性。
警報疲勞
如果 WAF 產生太多誤報,那麼 真正的攻擊很容易在雜訊中被忽略。 這樣可能會造成關鍵的安全情報流失。此外,若 WAF 總被認為不斷發出誤報,操作和安全團隊自然會對它的警報減少關注:這又會導致真正的攻擊被忽略。

假陽性的原因通常是來自使用者提交的資料,例如使用者名稱、密碼、寄送地址等等。當 WAF 規則錯誤地匹配到這些使用者輸入時,問題資料會被紀錄到 WAF 的日誌檔案中,這意味著敏感的密碼、地址或其他資訊會以明文形式紀錄下來。這樣可能會違反像是 GDPR、CCPA、PCI DSS 等資料保護規範,因此需要針對假陽性進行修正,以幫助防止這種情況的發生。
以下是一個個人資訊導致誤報並被記錄的範例:

我們該如何修正誤報?
‘Turn Down the Volume’: 我們可以忽略偽陽性嗎?
為了盡可能簡單且無摩擦,一些商業的WAF供應商對於錯誤正報的問題採取了大部分忽略的方式。這通常表現為低報告(隱藏規則匹配,除非它們導致完全阻擋事件)以及將WAF設置為低敏感度(要求請求觸發多個規則才會被阻擋)。
這種方法可以打造一個「設定後就不必理它」的 WAF 解決方案,這樣的解決方案相對安靜,對使用者造成的困擾也極少。雖然這聽起來很理想,但主要問題在於低敏感度使得 WAF 更容易被迴避,並且很可能無法提供預期的安全性。因為敏感度較低,攻擊必須更加激烈,才能引起注意並被偵測到。此外,隱藏假陽性使得正確調查和解決這些問題變得非常困難(甚至不可能)。

過濾雜音:徹底解決偽陽性問題
最佳且最安全的方法是當遇到假陽性時進行“調整”。當偵測規則錯誤匹配並發生偽陽性時,則應對此進行調查。
例如,造成誤報的規則是否與所防護的網路應用程式無關(例如,一個 PHP 注入規則,但在任何地方都沒有使用 PHP)?如果是這樣,則可以停用該規則,造成的噪音或誤報就會立即消失。
這條造成問題的規則是只有在網頁應用程式的某一部份出現問題,其他地方都正常運作嗎?可以透過針對造成問題的區域(例如:/webstore/quote-form)停用這條規則來進行調整,這樣誤報就會消失。
是否有特定的用戶輸入經常導致某些規則出現假陽性?例如,一個自由文本框,讓用戶可以撰寫並提交送貨通知。假陽性可以通過將自由文本框排除在引發問題的規則之外來進行調整(如果它在各方面都造成顯著的問題,甚至可以將其從所有檢測規則中排除)。
透過有條不紊的工作方式,以及過濾掉那些雜訊般的誤報,剩下的就是那些明顯可見且易於阻擋的攻擊,這些攻擊在調整良好的 WAF 上變得相當容易對付。

修正偽陽性:傳統方法
調整 WAF 規則以解決誤報的過程涉及檢查日誌檔案,尋找誤報並加以解決。一般策略是先處理最嚴重的誤報:找到這些誤報,徹底解決它們,然後再重複這個過程。
在理想的情況下,這個初步調整過程應該在一個獨立的測試環境中進行,以消除將真正的攻擊誤判為錯誤警報的可能性。然而,時間和資源往往無法滿足這個需求,因此從第零天開始就必須處理來自真實流量的情況也是常有的。
辨識真正的假陽性需要一定的經驗。一些有用的指標包括:
- 觸發的規則(會不會經常或偶爾造成錯誤警報 經常 或 偶爾?)
- 來源 IP 位址(這是預期中的地址嗎?位置在哪裡?)
- 正在存取的資源(看起來像合法的地點還是假的?)
- 時間(在上班時間存取的業務應用程式與凌晨四點的比較)
一旦識別出偽陽性,就可以透過撰寫新的指令或規則來調整該攻擊性規則的行為。理想上,這個過程要保守地進行,讓被攔截的合法流量能夠通過,同時又不會在WAF中留下漏洞,讓攻擊能夠潛入而不被發現。
LoadMaster 360 中的超強偽陽性工具
LoadMaster 360平台具備一套專屬的增強型WAF報告和工具。這些設計專門為了讓識別和解決WAF誤報的過程變得更快速和更簡單。
省時智慧濾鏡
為了在誤報調校過程的初期提供協助,WAF 日誌資料會透過一系列智慧過濾器進行預過濾,盡可能自動化繁重的工作。絕大多數的 WAF 事件會被過濾掉,只留下最有可能的誤報候選項供人類操作員進行關注。
請考慮這個範例:

手動檢視並對 1584 個 WAF 事件進行判斷的想法似乎是不可能的。不過,在應用 LoadMaster 360 智能過濾器之後,只有13 個可能的誤報被標出來進行人工檢閱。相比於 1,584(甚至完整的 83,000+),13 是一個更容易處理的起始點。
自動規則調整器
LoadMaster 360 WAF 透過在發現誤報時自動生成正確的指令來簡化調整過程。這項自動化功能消除了對技術知識的需求,讓非專業人士也能輕鬆配置 WAF。

自動規則調整器擁有多樣的選項和功能,值得深入探討。使用它時需要一些基本的知識,以便能有效地操作。常見的問題包括:
- 如何使用規則調整器(rule tuner)?
- 使用哪些是最佳且最安全的選項?
- 什麼時候該選擇某種 “規則排除類型(rule exclusion type)” 而不是其他的,它們分別代表什麼?
接下來的一系列部落格文章將詳細探討 rule tuner 的使用方法及其各種選項,並將從頭到尾逐步帶您走過一系列的範例。
立即開始使用 LoadMaster WAF 與 LoadMaster 360
你的負載平衡器有在處理公開的網路流量嗎?如果有的話,你可能想要了解一下 LoadMaster WAF 的功能,以增強你的網路應用程式安全性。
您現在有 LoadMaster Enterprise Plus 訂閱嗎?如果有的話,您已經可以完全使用 LoadMaster WAF 的功能。
你有在使用 LoadMaster 360 嗎?你是否試過它的增強型 WAF 功能?如果還沒有,現在正是開始的好時機。請跟著這系列的 WAF 教學,開始熟悉 LoadMaster 360 的 WAF 增強功能。獲得一個調整良好的 WAF 解決方案所帶來的安全優勢,輕而易舉就能達成!
發佈於 2025年8月7日 文章來源: What Are WAF False Positives, Why Should I Care and How Can I Fix Them?


