古語有云「道高一尺,魔高一丈」,隨著網際網路發達,攻擊者的入侵手法也日新月異,由早期的OS Layer、Protocol Layer、Service Layer,漸漸轉向現今的Application Layer,其中又以應用愈來愈廣泛的Web Application最常成為攻擊者的目標。網頁應用程式防火牆(WAF)與IPS究竟有什麼差異?企業在選擇導入WAF方案時總是存在著迷思,什麼樣的企業要用WAF?而什麼樣的狀況之下選擇IPS?
古語又云「正邪不兩立」,為了對抗邪惡的網路怪客、捍衛網站會員的權益、保護重要的機密資料,資安廠商紛紛推出各式各樣的網站防護機制,其中較具代表性的有:
(1) 具部份防禦功能的入侵防禦系統(IPS, Intrusion Prevention System)
(2) 針對HTTP行為作深層檢查的網頁應用程式防火牆(WAF, Web Application Firewall)
(3) 從治本作起,使用自動化的源碼檢測工具找出有問題的程式碼(Static Code Analysis)
(4) 模擬攻擊者行為找出網站漏洞的滲透測試(PT, Penetration Test)
(5) 使用掃描工具檢測的網站VA(Web Vulnerability Assessment)
據世界各知名調查單位的統計,這些需求在近幾年均顯著的提升,表示在資安事件頻傳、以及政府對個人隱私資料的保護日益提升的情況下,使各單位均開始重視資安之防護。
WAF與IPS互補
本文旨在探討有關資安防護設備(不含主機式軟體)中的IPS及WAF之差異,以瞭解什麼情況下需要WAF來作防禦。以下以一表說明各階層防禦設備之比較。(見表1)
表1 網頁攻擊防禦能力比較表
|
Firewall
|
IPS
|
WAF
|
一般差異
|
封包檢查深度
|
Layer 3 ~ 4
|
Layer 7
|
Layer 7
|
封包檢查目標
|
僅檢查 IP/PORT
|
檢查至應用層資料
|
檢查應用層之http/https封包內容
|
防護目標
|
網路層存取限制
|
保護大部份服務
(含網站及非網站)
|
僅保護網頁應用程式
|
攻擊偵測模式
|
僅檢查 IP/PORT
|
負向表列
|
負向表列 + 正向表列
|
攻擊偵測方式
|
僅檢查 IP/PORT
|
攻擊特徵(Signature)比對
|
攻擊特徵(Signature)比對
+
正常行為模式檢查
|
網站應用層防護能力
|
無
|
中
|
高
|
非網站服務防護能力
|
無
(僅能限制存取)
|
高
|
無
|
網頁應用程式攻擊防護能力差異
|
網站存取檢查
|
僅能設定是否允許存取,無法檢查其中的惡意攻擊
|
可掃描是否含已知攻擊特徵
|
可掃描是否含已知攻擊特徵及是否符合網站正常行為
|
網頁攻擊偵測率
|
無
|
中
(較易被繞過)
|
高
(較不易繞過)
|
網頁攻擊誤判率
|
無
|
中
|
低
透過學習模式降低誤判率
|
上傳檔案檢測
|
無
|
僅能掃描已知的異常檔案特徵
|
可防止後門程式類型上傳
(但仍難作到偵測內容是否含惡意語法)
|
SSL 解密
|
無
|
大多數無法解密
|
可解密SSL封包檢查
|
Cookie、表單之防護
|
無
|
無
|
可追蹤Cookie/表單,防止竄改
|
(資料來源:本文作者整理)
其中可見,IPS亦有一定的網站防禦能力,惟其由於運作模式的特性,會有一些目前無法克服的問題:
(1) 大部份不處理 SSL 解密,攻擊可能在加密封包中進行而無法檢查。
(2)無法防禦於正常網頁語法下的惡意行為(例如上傳惡意文件、竄改Cookie、表單等)
(3) 較易因網址或參數編碼而避過其攻擊特徵檢查。
筆者曾於實際測試案例中發現,當受測單位網站規模小、知名度較不高時,若WAF佈建於IPS後,所觀察到的攻擊量就十分有限,因大多數的非針對型無差別式掃描攻擊,皆已被IPS所阻擋。但亦曾於案例中實際進行滲透測試驗證,即使網站前佈建了IPS,仍可用各種人為手法繞過其檢測機制而成功入侵。甚至有了WAF,但在安全規則設定不妥當的情況下,仍有避過防護而成功入侵的可能。
此外,許多人會有的一個疑問是,是否佈建了IPS就不需要WAF?或有了WAF就不需要IPS?何者的重要性較高?佈建順序又應為何?
「IPS是一種通用的應用層服務檢查設備,可防護大量的正規化攻擊或掃描行為,但對客製化、變種的攻擊,偵測率會較低」,而「WAF是一種專用的網頁行為檢查設備,可防護大量的網頁攻擊行為,且可透過學習模式設定正常網站存取模式,以防止客製化、變種的攻擊」。
因此兩者可說是一種「互補」關係,透過IPS先過濾大多數已知攻擊特徵的正規化行為,若有變種的、客製化的、或其他針對網頁應用程式的特殊攻擊,則由WAF處理。故常見的網站佈署架構示意圖(見圖1)
但由於科技的進步,目前市面上有許多複合式產品,可涵蓋單一專用設備之功能,常見的組合如
(1) Router + Firewall
(2) Firewall + IPS
(3) Router + Firewall + IPS
(4) IPS + WAF
(5) WAF + SLB
這樣的組合又衍伸出許多不同的差異,此部份不於本文中說明,讀者可諮詢各資安廠商規劃所適合的解決方案。
佈署評估4大關鍵
我的網站需要WAF嗎?結論是這個問題見仁見智,可分為幾個層面來探討:
(1)對資安防護的決心:
許多單位目前皆已佈建IPS,例若要再加裝WAF,在初期建置、及後續的維護費用上均十分可觀,需有單位高層的重視,及願意支持去投入經費,才有推動的基本資格。
(2)保護資料的價值:
一般情況下,投入的成本不需高於欲保護目標的價值。但在現實情況有許多非量化的東西是無法估計價值的,例如商譽、個資、研發資料、交易內容、公文、及任何具機密性質之電子資料。因此愈是具有重要資料的網站,對WAF的需求會愈高。
(3)網站的複雜度及功能性:
若是單純、簡單、不涉及太多政治或商業競爭的網站,通常受針對式攻擊的機會較低,此時IPS即可提供不錯的防護能力。但愈是複雜、與使用者有豐富互動介面的網站,所進行的網站行為愈多樣化,便愈可能產生網頁弱點,此時WAF則可提供較完整的防護。
(4)治標或治本:
談到網頁應用程式的防護,通常有透過防禦機制先治標作阻擋、或修正程式弱點作治本這兩種截然不同的作法,治標較快速、治本較耗時,因此先防護、再儘快作修復的流程是較為恰當的。惟在經費、或人力不足的情況下,有的單位會選擇佈建WAF先擋了再說,有些單位則是希望將程式中的問題徹底修正。這部份即要視各單位的狀況而定。
最後,因筆者同時身為滲透測試人員及資安設備佈署人員身份,在測試過這麼多防禦機制後認為,沒有什麼東西是萬靈藥或可以保證100%的防護,唯有「人」的意識、與能力,才是資安防護的關鍵所在!
(本文作者為系統整合廠商資深資安顧問)