開發與網路

WAF 是什麼?會檢查請求內容的進階版警衛

WAF(Web Application Firewall,網站應用程式防火牆)是一種專門保護網頁應用程式的防火牆。它運行在應用層,能理解 HTTP 與 HTTPS 協定,檢查請求的網址、參數、標頭與內容,攔截針對網站與 AI 應用的攻擊。跟傳統防火牆最大的差別是:傳統防火牆管的是通訊埠與來源位址,WAF 管的是請求裡面裝了什麼。
WAF 是什麼?會檢查請求內容的進階版警衛:文章重點卡

WAF 是什麼?會檢查請求內容的進階版警衛

你把 AI 服務放到網路上之後,來敲門的不只有使用者。有些請求的目的是騙它吐出不該吐的東西。

WAF 就是站在門口那個會拆包檢查的警衛。這篇講清楚它跟一般防火牆的分界,以及它擋得住什麼。

你將學到什麼

定義

運行在應用層的防火牆,檢查請求內容,攔截惡意攻擊。

白話比喻

傳統防火牆只管你走哪個門,WAF 會打開你的包包看裡面裝什麼。

擋得住什麼

資料庫注入、跨站腳本、提示詞注入、路徑穿越、暴力破解與異常流量。

怎麼運作

檢查請求、比對規則與威脅特徵,合法放行、惡意阻擋並記錄日誌。

定義

WAF 是一種專門保護網頁應用程式的防火牆。它運行在應用層,能理解 HTTP 與 HTTPS 協定,檢查請求內容,阻擋針對網站與 AI 應用的攻擊。

一句話重點:WAF 檢查的是請求的內容,過濾惡意攻擊,只讓合法的請求進入你的應用程式。

白話比喻

傳統防火牆是大樓門口的門禁,只管你有沒有卡、走哪個門。刷得過就進去了。

WAF 是進階版警衛:他會打開你的包包,看裡面裝了什麼。刀子藏在合法的包包裡,門禁攔不住,警衛攔得住。

跟傳統防火牆差在哪?

比較項目傳統防火牆WAF
防護層級網路層與傳輸層應用層
檢查內容來源位址、通訊埠、協定請求的網址、參數、標頭與內容
防禦對象網路掃描、連線控制應用程式攻擊
理解能力不理解請求內容理解網址、參數、內容與 Cookie
精準度粗略,管門號精準,管內容
部署位置網路邊界負載平衡器或 API 閘道器之後

它擋得住哪些攻擊

  • 資料庫注入:試圖操控資料庫查詢,偷走或竄改資料。
  • 跨站腳本:在網頁中執行惡意程式碼,竊取使用者的憑證。
  • 提示詞注入:誘導 AI 忽略原本規則,洩漏機密或執行越權操作。
  • 路徑穿越:試圖讀取伺服器上的系統敏感檔案。
  • 暴力破解與異常流量:大量嘗試登入,用速率限制與封鎖來擋。

實際用例

沒有 WAF 的風險很具體:AI 服務被提示詞注入誘導洩漏機密、資料庫被非法存取、使用者的憑證被竊取。這三件事都不會有明顯的前兆。

實務建議:一定要搭配加密連線使用、定期更新規則集、開啟日誌與告警、針對 AI 應用加入專屬防護規則,並且只開放必要的路徑。

常見誤解

最常見的誤解是「裝了 WAF 就安全了」。它是其中一層,不是全部。沙盒隔離、最小權限、輸入驗證都要各自做好。

第二個誤解是把它當成純粹的擋牆。它的日誌價值很高:被擋下來的請求會告訴你有人正在試什麼,那是最早的預警訊號。

本文源起本文內容出自酒Ann 的「AI 實戰陪跑班」課程教材,由酒Ann 編寫成彙編條目。想系統性搞懂 AI 名詞,歡迎追蹤 酒Ann 的 Facebook

延伸學習

把這篇文章分享給需要的人FacebookLINEThreadsX

常見問答

有防火牆了還需要 WAF 嗎?
需要,兩者管的層級不同。傳統防火牆在網路層與傳輸層,看的是來源位址與通訊埠,不理解請求內容。WAF 在應用層,能看懂網址、參數與內容,才擋得住針對應用程式本身的攻擊。實務上是搭配使用,不是二選一。
WAF 真的能擋提示詞注入嗎?
可以擋一部分,但不能當唯一防線。WAF 可以用自訂規則偵測明顯的越權指令與惡意提示詞樣式。真正的防護要多層:應用端也要做輸入處理與 <a href="/blog/glossary-guardrails">防護欄</a>,並且限制 AI 能碰到的資料範圍。
WAF 裝在哪裡?
通常放在負載平衡器或 API 閘道器的後方、應用服務的前方。外網進來的請求先經過它,過濾完才進入內網的服務。這樣後端的應用程式、資料庫與向量資料庫都在受保護的那一側。