本文列舉了Web Application Firewall(Web Application Firewall,簡稱WAF)3.0版本接入可能遇見的問題。
概覽
接入前能力與配置諮詢
接入過程中可能遇到的問題
接入後可能遇到的問題
WAF中的來源站點IP與回源IP有什麼區別?
WAF的回源IP WAF的回源IP是指WAF在將經過防護處理的正常流量轉寄到來源站點伺服器時所使用的IP位址區段。這些IP地址是由阿里雲分配的,用於標識WAF作為Proxy 伺服器向來源站點發起請求的來源。
回源IP段通常是一個固定的IP位址範圍。
在來源站點伺服器看來,所有來自用戶端的請求都會被WAF攔截並轉寄,而真實的用戶端IP會被記錄在HTTP頭部欄位(如
X-Forwarded-For或自訂Header)中。
來源站點IP 來源站點IP是指實際承載業務的後端伺服器的公網IP地址或網域名稱解析出的IP地址。它是使用者訪問網站時最終接收請求並返迴響應的目標地址。
來源站點IP可以是單個IP地址,也可以是多個IP地址(支援負載平衡)。
來源站點IP是使用者網站的真實服務地址,可能部署在阿里雲ECS、SLB、OSS或其他雲端服務商上。
同一個網域名稱能不能同時使用雲產品接入和CNAME接入?
不推薦。每個網域名稱只能使用雲產品接入或CNAME接入兩種模式之一,重複接入會導致轉寄衝突防護失效。如果您已通過CNAME接入開啟WAF防護的網域名稱,需要切換為雲產品接入,您必須先刪除該網域名稱的CNAME接入配置,然後在雲產品接入模式下重新接入該網域名稱。
WAF能夠保護在一個網域名稱下的多個來源站點IP嗎?
可以,一個WAF網域名稱配置中最多支援配置20個來源站點IP地址。
WAF是否支援健全狀態檢查?
WAF預設啟用健全狀態檢查。WAF會對所有來源站點IP進行接入狀態檢測,如果某個來源站點IP沒有響應,WAF會將訪問請求轉寄至其他來源站點IP。
來源站點IP無法響應時,WAF將為該來源站點IP自動化佈建一個靜默時間。靜默時間結束後,新的訪問請求可能仍然會被轉寄至該來源站點IP。
WAF的獨享IP是否能夠防禦DDoS攻擊?
獨享IP,可避免當一個網域名稱遭受大流量DDoS攻擊,導致其他接入的網域名稱也無法訪問的情況。更多資訊請參見獨享IP的價值。
WAF能和CDN或DDoS高防一起接入嗎?
WAF完全相容CDN和DDoS高防服務。WAF與DDoS高防或CDN一起接入時,只要將WAF提供的CNAME地址配置為DDoS高防或CDN的來源站點即可。這樣就可以實現流量在經過DDoS高防或CDN之後,被轉寄到WAF,再通過WAF最終轉寄至來源站點,從而對來源站點進行全面的安全防護。更多資訊,請參見通過聯合部署DDoS高防和WAF提升網站防護能力、部署WAF和CDN為開啟內容加速的網域名稱提供WAF防禦。
WAF是否支援跨帳號使用CDN+高防+WAF的架構?
支援,您可以跨帳號使用CDN、高防、WAF產品組合成抵禦DDoS攻擊和Web應用攻擊的安全架構。
WAF如何保證上傳認證及密鑰的安全性?是否會解密HTTPS流量並記錄訪問請求的內容?
阿里雲Web Application Firewall在防護HTTPS業務時,需要您上傳對應的SSL認證及密鑰,用於解密HTTPS流量並檢測流量中的攻擊特徵。我們使用了專用的認證伺服器(Key Server)來儲存和管理密鑰。Key Server依託於阿里雲密鑰管理系統KMS(Key Management Service),能夠保護認證和密鑰的資料安全性、完整性和可用性,符合監管和等保合規要求。關於KMS的詳細介紹,請參見什麼是Key Management Service。
WAF使用您上傳的SSL認證及密鑰解密HTTPS業務流量,只用於即時檢測。我們只會記錄包含攻擊特徵(payload)的部分請求內容,用於攻擊報表展示、資料統計等,不會在您未授權的情況下,記錄全量的請求或響應內容。
阿里雲Web Application Firewall已通過ISO 9001、ISO 20000、ISO 22301、ISO 27001、ISO 27017、ISO 27018、ISO 27701、ISO 29151、BS 10012、CSA STAR、等保三級、SOC 1/2/3、C5、HK金融、OSPAR、PCI DSS等多項國際權威認證,且作為標準的阿里雲雲產品,在雲平台層面具備與阿里雲同等水平的安全合規資質。詳細內容,請參見阿里雲信任中心。
網站已接入WAF防護,為什麼在網域名稱列表中查詢不到?
您的網站備案資訊可能已經失效,導致網域名稱不符合接入要求,已被WAF自動清除。您需要為該網域名稱完成ICP備案,並重新將網站接入WAF防護。關於阿里雲ICP備案的更多資訊,請參見ICP備案流程。
您在將網站接入中國內地WAF執行個體防護前,必須保證網域名稱備案資訊的有效性。為符合相關法律法規要求,中國內地WAF執行個體會定期清除備案失效的網域名稱。
WAF如何通過自訂Header擷取用戶端源IP和記錄用戶端IP?
自訂Header擷取用戶端源IP:如果網站業務在WAF前有其他七層代理服務(例如,DDoS高防、CDN等),為了避免攻擊者偽造XFF欄位,躲避WAF的檢測規則,提高業務的安全性,可在業務中使用自訂Header存放用戶端IP,將用戶端源IP放置在某個自訂的Header欄位(例如,X-Client-IP、X-Real-IP),並在WAF中配置對應Header欄位,WAF擷取指定Header欄位的值作為用戶端源IP。如果設定多個Header欄位,WAF將按順序嘗試讀取用戶端IP。
自訂Header記錄用戶端IP:在添加網站到WAF防護時,通過開啟流量標記,使WAF在用戶端請求的自訂Header欄位中寫入用戶端IP,後端伺服器可以從WAF回源請求的指定Header欄位中擷取用戶端IP,適用於後端伺服器需要從指定的自訂Header中擷取用戶端IP進行業務分析的情境。
同一個網域名稱解析指向了多個雲產品執行個體,該如何接入?
使用雲產品接入:需要同時接入這些雲產品執行個體(例如CLB執行個體的服務連接埠),實現WAF對這幾個執行個體同時引流。
使用CNAME接入:CNAME接入此網域名稱後,所有雲產品執行個體都將受到WAF預設防護策略的防護。
多個網域名稱解析指向了同一個雲產品執行個體,該如何接入?
使用雲產品接入:您接入此雲產品執行個體後,執行個體上的所有網域名稱都將受到WAF預設防護策略的防護。但如果您希望單獨為這些網域名稱配置不同的防護規則,則需要手動將網域名稱添加為防護對象,詳細資料,請參見手動添加防護對象。
使用CNAME接入:逐一接入多個網域名稱。
CNAME接入支援接入哪些網域名稱尾碼?
WAF3.0支援接入大部分網域名稱尾碼,包括中文網域名稱尾碼,具體支援的中文尾碼列表請參見iana.org。
WAF3.0支援的網域名稱尾碼多於WAF2.0,若您發現某網域名稱在WAF2.0不支援接入,建議升級至WAF3.0。
WAF是否支援HTTPS雙向認證?
CNAME接入和透明接入暫不支援,使用WAF3.0服務化接入方案可以支援HTTPS雙向認證,目前支援服務化接入的雲產品包括ALB、MSE、FC、SAE,可以在WAF控制台雲產品接入一欄中配置接入。
WAF是否支援Websocket、HTTP 2.0或SPDY協議?
WAF支援WebSocket協議。訂用帳戶企業版及以上和隨用隨付版本支援監聽HTTP 2.0協議。暫不支援SPDY協議。
為避免攻擊者通過HTTP 2.0明文走私來繞過WAF,您可以通過建立自訂規則,攔截Header名稱為Upgrade,且值為h2c的請求。具體操作,請參見設定自訂規則防禦特定請求。
HTTP 2.0業務接入WAF防護是否會對來源站點有影響?
有影響。HTTP 2.0業務接入WAF防護表示WAF可以處理用戶端的HTTP 2.0請求,而WAF目前僅支援以HTTP 1.0/1.1協議轉寄回源請求,即WAF與來源站點間暫不支援HTTP 2.0。因此,如果您將HTTP 2.0業務接入WAF防護,則來源站點的HTTP 2.0特性將會受到影響,例如,來源站點HTTP 2.0的多工特性可能失效,造成來源站點業務頻寬上升。
WAF是否支援接入採用NTLM協議認證的網站?
不支援。如果網站使用NTLM協議認證,經WAF轉寄的訪問請求可能無法通過來源站點伺服器的NTLM認證,用戶端將反覆出現認證提示。建議您使用其他方式進行網站認證。
WAF的QPS限制規格是針對整個WAF執行個體匯總的QPS,還是配置的單個網域名稱的QPS上限?
WAF的QPS限制規格針對整個WAF執行個體。
例如,您在WAF執行個體上配置防護了3個網域名稱,則這3個網域名稱累加的QPS不能超過規定上限。如果超過已購買的WAF執行個體的QPS限制,執行個體可能會進入沙箱。實際QPS超過規格或進入沙箱時,將不再保證產品遵循服務等級協議(Service Level Agreement,簡稱“ SLA”)。
如何查看WAF回源IP段與WAF提供的CNAME?
可以在接入列表頁的下圖位置找到WAF的回源IP段以及WAF為每個接入網域名稱提供的CNAME地址。
接入配置頁面找不到需要接入的CLB執行個體、NLB執行個體或ECS執行個體的排查方法
可能原因 | 相關操作 |
要接入的CLB執行個體、NLB執行個體或ECS執行個體不滿足限制條件 | 參考執行個體接入限制條件,排查執行個體。具體限制條件,請參見CLB執行個體接入限制、NLB執行個體接入限制、ECS執行個體接入限制。 |
要接入的CLB執行個體未添加對應監聽 |
|
WAF未同步CLB、NLB或ECS執行個體 | 同步資產的具體步驟請參見手動同步資產。 |
添加HTTPS引流連接埠時,顯示CLB認證不全,該如何處理?
問題現象
添加HTTPS引流連接埠時,WAF會對該連接埠配置的認證進行來源校正。添加連接埠後出現以下提示:連接埠號碼為XXX的CLB認證不全,請到CLB控制台重新選擇來源是SSL認證服務的認證。
可能原因
配置的認證不是通過阿里雲Certificate Management Service (Original SSL Certificate)購買的,且未上傳到阿里雲Certificate Management Service (Original SSL Certificate)。
CLB執行個體配置該HTTPS連接埠監聽的認證通過CLB控制台上傳,然而,這種上傳方式導致認證資訊無法自動同步到數位憑證管理服務(原 SSL 憑證管理)。由於 WAF(Web Application Firewall)僅從數位憑證管理服務擷取認證資訊,這就造成了 WAF 無法擷取到完整的認證內容,進而出現認證不全的提示。
曾上傳到數位憑證管理服務的認證被手動刪除,當前Certificate Management Service (Original SSL Certificate)中沒有您的認證。
解決方案
將您的認證上傳到Certificate Management Service (Original SSL Certificate)。具體操作,請參見上傳SSL認證。
在CLB控制台建立認證,並選擇認證來源為阿里雲簽發認證。具體操作,請參見選擇阿里雲簽發認證。
在CLB控制台,選擇已上傳的伺服器憑證。具體操作,請參見步驟二:配置SSL認證。
WAF中的來源站點IP填寫ECS公網IP還是內網IP?
公網IP。WAF通過公網進行回源,不支援直接填寫內網IP。
來源站點伺服器公網IP暴露,攻擊者直接攻擊來源站點公網IP繞過WAF怎麼辦?
方式一:CNAME接入方式下,配置來源站點伺服器僅允許存取WAF回源IP段,確保僅有WAF能與來源站點伺服器建立通訊。具體操作請參見允許存取WAF回源IP段。
方式二:使用雲產品接入。
接入WAF後返回502狀態代碼的多種情境
問題現象
接入WAF後訪問後端服務,返回502狀態代碼;查閱日誌中出現狀態代碼為502的請求。
問題原因與解決方案
情況一:CNAME接入方式下返回502
情況二:7層CLB開啟雲產品接入出現偶發5XX
情況三:URI 超長導致偶發502
情況四:WAF回源多個四層CLB出現偶發502
接入WAF後檔案上傳失敗
可能由於檔案上傳超過2GB的最大限制,目前WAF最大支援2GB的檔案上傳,當請求body超過2GB時,WAF會返回413狀態代碼,可以根據返回狀態代碼來判斷是否達到了檔案傳輸大小上限。
認證即將到期如何更新?
不同的接入方式更新方式不同:
如果是CNAME接入,請參見更新網域名綁定的認證。
如果是雲產品接入ECS執行個體,請參見更新ECS引流連接埠綁定的認證。
如果是雲產品接入CLB執行個體,請參見更新CLB引流連接埠綁定的認證。
如果是雲產品接入NLB執行個體,請參見更新NLB引流連接埠綁定的認證。
如果是雲產品接入ALB執行個體,不需要在WAF控制台更新,只需在數位憑證管理服務(原 SSL 憑證)控制台部署認證到ALB執行個體。具體操作,請參見部署SSL認證到阿里雲產品。
雲產品接入後,來源站點可以擷取用戶端的真實IP嗎?
可以。WAF會向雲產品執行個體直接提供真實的用戶端IP。



