如何評價、選擇和實施Web應用防火墻
Web應用防火墻(Web application firewall,WAF)主要用來保護Web應用免遭跨站腳本和SQL注入等常見攻擊。WAF位于Web客戶端和Web服務器之間,分析應用程序層的通信,從而發現違反預先定義好安全策略的行為。
盡管某些傳統防火墻也能提供一定程度的應用認知功能,但是它不具備WAF的精度和準度。舉例來說,WAF可以檢測一個應用程序是否按照其規定的方式運行,而且它能讓你編寫特定的規則來防止特定攻擊行為的再次發生。
WAF也不同于入侵防御系統(IPS),兩者是完全不同的兩種技術,后者是基于簽名,而前者是從行為來分析,它能夠防護用戶自己無意中制造的漏洞。
目前WAF的主要推動因素之一是支付卡行業數據安全標準(PCI DSS),該標準主要通過兩個辦法來驗證是否合規:WAF和代碼審查。另外一個推動因素是,人們越來越多的認識到攻擊已經開始由網絡轉移到應用程序。根據WhiteHat Security公布的一份研究報告,從2006年1月到2008年12月間對877個網站進行了評估,結果發現82%的網站至少存在一個高危或緊急安全漏洞。
WAF的主要特性
Web應用防火墻市場仍然不確定,有很多不同的產品被歸類到WAF范疇。研究機構Burton Group的分析師Ramon Krikken表示,“很多產品提供的功能遠遠超出了我們通常認為防火墻應該具有的功能,這使得產品的評價和比較難以進行。”此外,通過將已有的非WAF產品整合到綜合產品中的方式,新廠商開始進入市場。
根據研究和咨詢公司Xiom創始人Ofer Shezaf提供的清單,下面列出Web應用防火墻應該具備的特性:
·深入理解HTTP。WAF必須全面深入分析和解析HTTP的有效性。
·提供明確的安全模型。明確的安全模型只允許已知流量通過,這就給應用程序提供了外部驗證保護。
·應用層規則。由于高昂的維護費用,明確的安全模型應該配合基于簽名的系統來運作。不過由于web應用程序是自定義編碼,傳統的針對已知漏洞的簽名是無效的。WAF規則應該是通用的,并且能夠發現像SQL注入這樣的攻擊變種。
·基于會話的保護:HTTP的最大弱勢之一在于缺乏嵌入式的可靠的會話機制。WAF必須實現應用程序會話管理,并保護應用程序免受基于會話的攻擊和超時攻擊。
·允許細粒度政策管理。例外政策應該只對極少部分的應用程序執行,否則,可能會造成重大安全漏洞。
WAF的選擇標準
開放網絡應用安全計劃組織(OWASP)主要工作是改進應用軟件的安全性。以下是OWASP提出的WAF的選擇標準:
·幾乎不出現誤報(即,從不拒絕授權請求)
·默認防御強度
·具備易學模式
·預防的攻擊類型
·具備將單個用戶限定在當前對話中可見的能力
·配置預防像緊急補丁等特定問題的能力
·波形因數:軟件與硬件(通常硬件優先)
選擇WAF首要考慮的問題
WAF與源代碼掃描
WAF不能修復應用程序只能進行實時保護的特點,過去一直備受指責。有些廠商甚至避免使用“WAF”術語形容他們的產品,而是代之以“應用層意識”或“應用層智能”。不過,現在人們已經越來越普遍地認為,通過正確的實施,WAF能夠成為多層安全模型中的重要組成部分,因為當人們修補應用程序漏洞的時候WAF可以提供保護。
正如WhiteHat Security公司的創始人Jeremiah Grossman在博客中堅持的那樣,應用程序中攻擊和漏洞太多,根本來不及修復代碼本身。他主張,通過評估發現的漏洞應該作為自定義規則嵌入WAF中,這樣就能為減輕當前狀況并為過后再修復問題提供選擇。
Gartner公司則建議客戶考慮采用技術手段消除應用程序漏洞。在花錢購買設備之前,用戶首先應該考慮一下,是否通過更強大的系統開發生命周期和使用源代碼掃描器等工具來消除漏洞。WAF對于那些不容易改變的應用程序是非常有用的。
雖然一小部分風險承受力低的公司需要采用上述兩種方法進行安全防護,但是對于大多數公司而言,采用其中任意一種方法就足夠了。
硬件設備與軟件
Jarden Consumer Solutions公司負責全球網絡服務和運作的IT主管Jack Nelson表示,他們之所以選擇Check Point軟件技術VPN-1/FireWall-1集成網絡智能技術的一大原因在于,能夠有效的對這兩者進行配置。Jarden公司有個沒有配備IT維護人員的遠程辦公室,因此Nelson使用基于軟件的版本解決方案,當現有WAF失效的時候辦公室管理人員就可以輕松地將任何電腦配置為WAF。Nelson表示:“這比再買一個防火墻更靈活,比快速反應維護費更便宜。”這種界面足夠簡單,不需要防火墻專家配置,另外授權是基于密鑰的,因此可以遠程應用。
在北美的幾個小辦公室里,Nelson使用Check Point設備,因為他發現這種設備更便于管理和提供支持。
內置與外帶
決定部署內置WAF還是外帶的WAF是非常關鍵的,并不是所有WAF都支持這兩種模式。包含不同部署模式的產品并不多見。
選擇WAF的宜與忌
宜:切實弄懂單機和集成產品的不同
弄清兩種供應商的不同是非常重要的,一種供應商將WAF功能集成到現有應用交付和網絡安全產品中,而另一種供應商則專門生產應用程序安全產品。選擇供應商的決定因素很多,如系統中已經安裝的程序,客戶需要的安全級別,客戶需要專有產品還是功能齊全的產品等。
安全專家表示,致力于應用交付的產品對于應用安全而言是遠遠不夠的,因為這類產品不包括像了解引擎和會話意識等計算密集型功能。了解引擎可以使WAF了解應用軟件的行為并生成政策建議。會話認知可以讓WAF實時地建立動態的、基于會話的規則,并使用這些規則來判斷隨后的請求是否有效。
Nelson在公司的虛擬專用網絡和外部網絡應用程序中使用Check Point的集成產品。集成產品可以處理廣泛的安全組件,而不只是一個特定于應用程序的防火墻,這一點是非常重要的。“我們希望在不犧牲性能和可管理性的前提下能夠加強功能性。”他說。
同時,汽車零部件供應商AutoAnything.com公司則采取相反的做法,他們使用Breach Security的單機WAF來保護電子商務的安全。 “一個公司將很多事情都做好是不可能的。 ”其CTO Parag Patel表示。
忌:不要把WAF當成靈丹妙藥
許多公司為了PCI合規的目的開始使用WAF,然而,分析師警告稱,不要將WAF作為通過合規檢測的產品項目。
“我見過很多錯誤的做法,”Young補充說,“很多人認為,只要買了防火墻就可以打發審計員,但是事實并非如此,必須定制適合自身環境的應用程序防御配置才行。”
宜:看看超越傳統WAF功能的增強功能
Krikken表示,雖然傳統的WAF客戶都是安全團隊,不過現在很多WAF產品開始引起了更多普通客戶的關注,這要歸功于WAF新增加的的分析功能、單點登陸支持和Web服務安全的集成功能。這也是為什么他建議WAF評價應該包括企業架構、應用實施和軟件開發的負責人的原因。“這將改善解決方案安全方面的信心,以及減輕可用性和性能問題。 ”他說。
事實上,一家全球性能源公司決定應用WAF的目的是滿足該公司服務導向架構(SOA)部署安全服務的需要。該公司的總設計師決定采用Reactivity XML加速器安全裝置,在該業務被思科收購后,思科將其轉變為ACE WAF。當能源公司決定購買一個面向因特網的WAF時,思科向其保證可以利用ACE將兩種功能整合在一起,既滿足其內部的SOA需求,又保護其Web應用程序的安全。
宜:關注WAF的性能監測功能
應用監測作為WAF的非傳統用法,正日益流行和普及。WAF能夠檢測性能問題,或者是檢測應用程序是否因為無效鏈接而造成錯誤網頁等問題。
忌:不要認為有了WAF就一勞永逸
Krikken表示,雖然可以使用黑名單規則來保證基本的安全,但是還是需要準備好為最簡單的web應用程序投入持續的時間和精力。“即使有規則模板和學習引擎,為了提高有效性和降低報錯,還是需要經常對系統進行初步調整和持續定制。”他說。
在全球能源公司,總設計師稱用思科的WAF可以在兩小時內配置一個應用實例。不過,他希望有更多的像特點過濾等配置方面的最佳操作指南,而不是客戶自己摸索著操作。
”
宜:關注學習引擎功能
有了學習引擎,WAF可以學習和了解應用程序,進而創建甚至執行規則。Krikken表示,在動態環境中,最好讓WAF對異常行為作出提醒而不是直接阻止。
Patel用了幾個月Breach的學習引擎,他稱其為簡化的網絡應用程序。Patel的團隊回顧那段時間的工作時發現,Breach的學習引擎可以標記不規則行為。Patel表示:“你需要一定程度的舒適性,它會作出正確的決定 ”然而,隨著時間的推移,Patel希望實現自動攔截功能。“隨著我們網站流量的增大,WAF判斷違規操作并第一時間關閉那些企圖是非常必要的。 ”他說。
舉例來說,WAF阻止其競爭對手處理網站上的產品數據,其中包括數以百萬計的庫存(SKUs)和價格信息。 “如果我們看到有人按周或按月檢查數據,這表示我們的競爭情報蒙受了重大損失。 ”Patel說。
宜:關注企業級應用
Jarden公司的Nelson選擇Check Point安全產品的部分原因就是為了滿足企業級應用,其控制臺功能可以實現對全公司所有防火墻的集中管理。他特別喜歡的功能就是將所有的防火墻集中到所謂的“容器”中,并在這些容器內應用不同的策略。
與此同時,一家營養品制造商的安全通訊工程師表示,其使用的梭子魚系統(Barracuda system)的最大優勢在于它的可擴展性。該公司使用WAF的主要動機是為那些需要接收來自世界各地郵件的用戶提供安全的web電子郵件界面。同時WAF也被用來阻止應用層攻擊。
安全工程師希望,不管用戶在什么地方,只要向用戶提供一個單一的URL,他們就可以接收電子郵件,他還希望在不中斷的情況下能夠擴大系統范圍。因為他可以在不需要新IP地址的情況下添加額外的WAF設備。“如果開始被重載,我們必須做的事情就是使用另外一個設備,將兩個設備整合在一起,獲得雙倍能力。”他說。