Web應用防火墻安全大揭秘之“十誡” 上篇 |
發布時間: 2012/9/12 14:52:18 |
WAF(Web application firewall,Web應用防火墻)主要用來保護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對于那些不容易改變的應用程序是非常有用的。雖然一小部分風險承受力低的公司需要采用上述兩種方法進行安全防護,但是對于大多數公司而言,采用其中任意一種方法就足夠了。 本文出自:億恩科技【www.laynepeng.cn】 |