全部產品
Search
文件中心

Elastic Compute Service:使用Web Application Firewall抵禦Web攻擊

更新時間:Oct 31, 2025

如果部署了Web服務並向Internet提供服務,建議使用WAF(Web Application Firewall,Web Application Firewall)結合RASP(Runtime Application Self-Protection,運行時應用自防護),防禦網頁掛馬、WebShell、資料庫攻擊、跨站攻擊、遠程命令執行、檔案上傳漏洞利用等常見攻擊。

安全風險

任何面向互連網提供服務的Web應用(如網站、API介面),都不可避免地會暴露在攻擊之下。攻擊者利用Web應用程式中普遍存在的漏洞(如參數未嚴格校正、動態代碼執行),可以發起多種攻擊:

  • SQL注入 (SQL Injection): 攻擊者通過在輸入欄位中插入惡意的SQL代碼,騙取伺服器執行非預期的資料庫操作,從而竊取、篡改或刪除您的核心資料。

  • 跨站指令碼攻擊 (XSS): 攻擊者將惡意指令碼注入到網頁中,當其他使用者訪問該網頁時,指令碼會在其瀏覽器中執行,可能導致工作階段劫持、個人資訊泄露。

  • WebShell上傳: 攻擊者利用檔案上傳漏洞,將一個惡意的伺服器端指令碼(WebShell)上傳至您的伺服器,從而獲得對伺服器的遠端控制權。

  • 其他常見攻擊: 還包括命令注入、路徑遍曆、檔案包含、跨站請求偽造(CSRF)等,這些都可能對您的業務造成毀滅性打擊。

Web Application Firewall是一種專門設計用來保護Web應用程式免受各種安全威脅的防護系統,能夠深入檢查HTTP/HTTPS請求和響應的內容,識別並阻止針對Web應用程式的具體攻擊。使用Web Application Firewall能有效降低Web攻擊。更進一步可以疊加部署RASP,RASP是嵌入到應用程式運行環境中,通過Hook關鍵函數來監視應用程式的行為、擷取豐富的上下文資訊從而更準確發現和阻斷攻擊。相比WAF,RASP對0day漏洞、處理加密流量、記憶體馬等威脅更有優勢。

最佳實務

第一道防線 - Web Application Firewall (WAF)

WAF工作在您的Web應用之前,是流量進入的第一道關卡。它像一名專業的“網路門衛”,負責檢查所有傳入的HTTP/HTTPS請求。通過內建的、持續更新的規則庫,WAF能夠識別並攔截絕大多數已知的攻擊流量,例如檢測URL中是否包含惡意的SQL注入代碼。這是一種在網路層實現的、非侵入式的防護,能有效過濾掉大部分惡意請求,極大減輕後端伺服器的壓力。

  1. 開通和購買:根據自己網站規模和訪問量購買不同版本WAF(進階版、企業版、旗艦版)。更多資訊,請參見套餐和版本說明

  2. 接入防護:您的Web網站需要接入WAF才能受到保護,WAF支援的接入方式(以WAF3.0為例)如下:

    接入方式

    原理

    適用情境

    CNAME接入

    將Web網站的DNS網域名稱解析記錄修改為WAF提供的CNAME地

    址,使所有公網訪問流量先經過WAF叢集。

    支援雲上(阿里雲/非阿里雲)或雲下IDC的服務

    器的防護。例如,通過CNAME接入為網站開啟

    WAF防護

    雲產品接入

    支援ALB、CLB、NLB、ECS、APIG、MSE、FC、SAE快速

    接入WAF防護。不同的雲產品接入方式不同,參見。

    阿里雲產品接入WAF防護。例如,為ECS執行個體開

    啟WAF防護

    混合雲接入

    在使用者自建的統一接入層網關(如Nginx、APISIX)部署WAF SDK外掛程式。複製業務流量至旁路部署的WAF防護叢集進行檢測,不參與流量轉寄。

    混合雲,web伺服器線下部署。

第二道防線 - 運行時應用自防護 (RASP)

對於經過加密的流量、利用未知漏洞的0day攻擊,或繞過網路檢測的複雜攻擊,WAF可能難以察覺。此時,就需要更深入的第二道防線——RASP。

RASP以探針或模組的形式直接嵌入到您的應用程式運行環境中(例如Java的JVM)。它通過Hook關鍵函數來監控應用內部的實際行為。例如,當一個請求即將觸發資料庫查詢時,RASP能直接分析將要執行的SQL語句,判斷其是否具有惡意行為,而不是像WAF那樣只能從網路流量中猜測。這種“身處內部”的視角,使其在防禦0day漏洞、記憶體馬等新型威脅時具有天然優勢,是WAF的完美補充。更多資訊,請參見接入應用防護