安全顧問(wèn)公司Cobweb Applications的創(chuàng)始人Michael Cobb說(shuō),WAF(Web應(yīng)用)旨在保護(hù)Web應(yīng)用程序避免受到跨站腳本攻擊和SQL注入攻擊等常見(jiàn)的威脅。網(wǎng)絡(luò)防火墻是防御網(wǎng)絡(luò)周邊環(huán)境的,然而,WAF位于Web客戶端和之間,分析違反計(jì)劃的安全政策的應(yīng)用層通訊。
安全顧問(wèn)公司Security Curve的創(chuàng)始人Diana Kelley說(shuō),雖然一些傳統(tǒng)的防火墻提供了某種程度的應(yīng)用程序熟悉能力,但是,傳統(tǒng)防火墻沒(méi)有WAF提供的那樣精細(xì)和具體。例如,WAF能夠檢測(cè)一個(gè)應(yīng)用程序是否按照它設(shè)計(jì)的方式工作,它能夠讓你編寫具體的規(guī)則防止再次發(fā)生這種工具。
Gartner分析師Greg Young說(shuō),WAF與防御系統(tǒng)不同。它是一個(gè)完全不同的技術(shù),不是以特征為基礎(chǔ)的,而是以行為為基礎(chǔ)的,防止你自己意外制造的安全漏洞。
目前,WAF的主要推動(dòng)因素之一是支付卡行業(yè)數(shù)據(jù)安全標(biāo)準(zhǔn)(PCI DSS)。這個(gè)標(biāo)準(zhǔn)定義兩方面的遵守法規(guī)的情況:WAF和審查代碼。但是,另一個(gè)推動(dòng)因素是人們?nèi)找嬲J(rèn)識(shí)到攻擊正在從網(wǎng)絡(luò)向應(yīng)用程序轉(zhuǎn)移。在WhiteHat Security發(fā)表的研究報(bào)告中,82%的受訪者至少有一個(gè)高度的、重要的或者緊迫的嚴(yán)重問(wèn)題。WhiteHat Security從2006年1月至2008年12月評(píng)估了877個(gè)網(wǎng)站。
主要WAF屬性Burton Group分析師Ramon Krikken說(shuō),Web應(yīng)用防火墻市場(chǎng)仍然沒(méi)有定義,這個(gè)市場(chǎng)中還有許多不一樣的產(chǎn)品。許多產(chǎn)品提供的功能都超過(guò)了一般防火墻的功能。這使這類產(chǎn)品很難評(píng)估和對(duì)比。此外,新的廠商正在進(jìn)入這個(gè)市場(chǎng),把現(xiàn)有的非WAF產(chǎn)品擴(kuò)展到集成的市場(chǎng)。
據(jù)研究和咨詢公司Xiom的創(chuàng)始人Ofer Shezaf提供的一個(gè)列表,下面是WAF應(yīng)該具有的屬性:。深入理解HTTP.WAF需要更有效地全面地解析和分析HTTP.。提供一個(gè)積極的安全模式。積極的安全政策僅允許合法的通訊通過(guò)。有時(shí)候這叫作“白名單”,這個(gè)功能對(duì)應(yīng)用程序提供一個(gè)外部輸入驗(yàn)證層。。應(yīng)用層規(guī)則。由于很高的維護(hù)成本,使用基于特征的系統(tǒng)應(yīng)該會(huì)增強(qiáng)積極的安全模式。但是,由于Web應(yīng)用程序是客戶化編碼的,傳統(tǒng)的真對(duì)已知安全漏洞的特征是沒(méi)有效的。WAF規(guī)則應(yīng)該是普通的并且能夠檢測(cè)到SQL注入等任何攻擊的變體。?;跁?huì)話的保護(hù)。HTTP最大的缺點(diǎn)之一是缺乏內(nèi)置的可靠的會(huì)話機(jī)制。一個(gè)WAF必須輔助應(yīng)用會(huì)話管理,保護(hù)它防止基于會(huì)話的攻擊。。允許精細(xì)的政策管理。例外情況僅適應(yīng)于極少部分應(yīng)用程序。此外,誤報(bào)會(huì)產(chǎn)生更大的安全漏洞。
Web應(yīng)用程序防火墻選擇規(guī)定
以改善應(yīng)用軟件安全為重點(diǎn)的開(kāi)放團(tuán)體OWASP(開(kāi)放Web軟件安全計(jì)劃)建議按照下列原則選擇WAF:
·很少誤報(bào)(應(yīng)該永遠(yuǎn)不會(huì)不允許授權(quán)的請(qǐng)求);
·強(qiáng)大的默認(rèn)的防御能力;
·強(qiáng)大的和容易學(xué)習(xí)的模式;
·它能夠防御的安全漏洞的類型;
·能夠保持個(gè)人用戶遵守他們?cè)诋?dāng)前的會(huì)話中看到的情況;
·能夠經(jīng)過(guò)設(shè)置之后防御具體的問(wèn)題,如緊急的補(bǔ)丁。
·形狀:軟件與硬件(一般首選硬件)。
Web應(yīng)用防火墻的主要考慮
WAF與源代碼掃描。實(shí)時(shí)保護(hù)應(yīng)用程序(而不是過(guò)后修復(fù)應(yīng)用程序)的WAF過(guò)去曾引起一些批評(píng)。Kelley說(shuō),一些廠商對(duì)WAF這個(gè)詞匯比較謹(jǐn)慎。他們喜歡用“應(yīng)用程序熟悉”或者“應(yīng)用層智能”這樣的詞匯。然而,人們現(xiàn)在越來(lái)越多地認(rèn)識(shí)到,如果正確地實(shí)施,WAF能夠作為一個(gè)多層次的安全模式的一個(gè)重要的部分,因?yàn)樗鼈兡軌蛟谀阈迯?fù)應(yīng)用程序安全漏洞的時(shí)候提供保護(hù)。
正如WhiteHat Securit安全公司創(chuàng)始人Jeremiah Grossman在博客中指出的那樣,安全漏洞太多了,代碼本身很難改正這些安全漏洞。他主張通過(guò)這樣的方法發(fā)現(xiàn)安全漏洞:把評(píng)估作為客戶化的規(guī)則植入到一個(gè)WAF,先提出緩解安全漏洞的意見(jiàn),以后再解決這個(gè)問(wèn)題的根源。
Gartner勸告用戶考慮一些刪除應(yīng)用程序安全漏洞的做法。Young說(shuō),在你花第一筆錢之前,你要考慮一下是否能夠通過(guò)一個(gè)更強(qiáng)大的系統(tǒng)開(kāi)發(fā)生命周期和使用源代碼掃描器等工具清除這些安全漏洞。WAF對(duì)于很難或者不可能修改的應(yīng)用程序或者非常動(dòng)態(tài)的應(yīng)用程序是非常有用的。
他說(shuō),對(duì)于大多數(shù)來(lái)說(shuō),選擇一個(gè)方法或者其它一種方法都是不充分的,盡管有少數(shù)容忍風(fēng)險(xiǎn)程度很低的企業(yè)需要同時(shí)使用這兩個(gè)方法。
硬件設(shè)備對(duì)軟件。Jarden Consumer Solutions公司負(fù)責(zé)全球網(wǎng)絡(luò)服務(wù)和運(yùn)營(yíng)的IT經(jīng)理Jack Nelson說(shuō),選擇Check Point軟件技術(shù)公司的配置集成的Web智能技術(shù)的“-1/FireWall-1”的最大理由是它有這兩種配置。Jarden公司有一個(gè)沒(méi)有配備IT人員的遠(yuǎn)程辦公室,因此,Nelson使用軟件解決讓那個(gè)辦公室的員工簡(jiǎn)單地把任何PC重新設(shè)置為WAF,如果現(xiàn)有的WAF崩潰的話。這是一種比購(gòu)買第二個(gè)防火墻更靈活的方法,并且比支付快速反應(yīng)維修的費(fèi)用更便宜。他說(shuō),這個(gè)接口非常簡(jiǎn)單,不需要防火墻專家。這個(gè)軟件許可證是以密鑰為基礎(chǔ)的,因此你可以遠(yuǎn)程使用這個(gè)軟件。
WAF該做的和不該做的
一定要理解單獨(dú)和集成的產(chǎn)品之間的區(qū)別。重要的是理解把WAF功能集成到自己現(xiàn)有的應(yīng)用程序交付產(chǎn)品和網(wǎng)絡(luò)安全產(chǎn)品的那些廠商與專業(yè)應(yīng)用程序廠商之間的區(qū)別。要根據(jù)許多因素決定哪一個(gè)廠商適合你。這些因素包括:你已經(jīng)安裝了什么、你需要的安全水平、你更適合專門的產(chǎn)品和具有廣泛功能的產(chǎn)品。
不要把WAF當(dāng)作萬(wàn)靈藥。許多企業(yè)為了遵守PCI法規(guī)轉(zhuǎn)向WAF。然而,分析師Young警告稱,不要把WAF當(dāng)作一個(gè)實(shí)驗(yàn)的項(xiàng)目。我看到許多錯(cuò)誤和正在實(shí)施的糟糕的投資。人們以為“如果我購(gòu)買了防火墻,審計(jì)者就會(huì)走開(kāi)?!钡?,購(gòu)買防火墻在這方面還是不夠的。你必須客戶化你的應(yīng)用程序防御使其適合你的環(huán)境。
一定要使眼光超越傳統(tǒng)的WAF功能。雖然傳統(tǒng)的WAF客戶是企業(yè)的安全團(tuán)隊(duì),但是,許多產(chǎn)品現(xiàn)在對(duì)于更廣泛的用戶都更有吸引力,因?yàn)檫@些產(chǎn)品有分析功能、支持單點(diǎn)登錄并且集成了Web服務(wù)安全功能。因此,Krikken說(shuō),他建議企業(yè)進(jìn)行WAF評(píng)估應(yīng)該讓那些復(fù)雜企業(yè)架構(gòu)、應(yīng)用程序交付和軟件開(kāi)發(fā)的人員參加。這有助于提高人們對(duì)解決方案安全方面的信心,減輕人們對(duì)可用性和性能方面的擔(dān)心。
一定要考慮WAF性能監(jiān)視。應(yīng)用程序監(jiān)視是日益流行的WAF的非傳統(tǒng)的應(yīng)用方式之一,因?yàn)閃AF能夠檢測(cè)到性能問(wèn)題或者這個(gè)應(yīng)用程序是否由于損壞的鏈接而提供了錯(cuò)誤的網(wǎng)頁(yè)。
不要認(rèn)為WAF是一勞永逸的。Krikken說(shuō),雖然你能夠使用現(xiàn)成的黑名單規(guī)則用于基本的安全,但是,你要準(zhǔn)備為最簡(jiǎn)單的Web應(yīng)用程序投入時(shí)間和努力。即使采用規(guī)則模板和學(xué)習(xí)引擎,最初的調(diào)整和正在進(jìn)行的客戶化一般都需要優(yōu)化效率和減少誤報(bào)。
一定要考慮一個(gè)學(xué)校引擎功能。采用學(xué)習(xí)引擎功能,WAF能夠了解應(yīng)用程序以便創(chuàng)建、甚至強(qiáng)制執(zhí)行規(guī)則。Krikken說(shuō),在一個(gè)非常動(dòng)態(tài)的環(huán)境,WAF最好是提醒你異常的行為,而不是封鎖這個(gè)行為。
一定要考慮企業(yè)級(jí)的能力。Jarden公司的Nelson選擇Check Point公司產(chǎn)品的部分原因就是其企業(yè)級(jí)的控制臺(tái)。這個(gè)控制臺(tái)能夠?qū)arden所有的防火墻提供集中的管理。Nelson非常喜歡把許多防火墻組合在一個(gè)他稱之為“集裝箱”的東西中,并且在這些集裝箱中采用不同的政策。
Nelson要向用戶提供一個(gè)單個(gè)的URL以便訪問(wèn)電子郵件,無(wú)論這些電子郵件在什么地方。他要在不中斷系統(tǒng)的情況下對(duì)系統(tǒng)進(jìn)行升級(jí)。由于他能夠增加額外的WAF設(shè)備并且不給這個(gè)設(shè)備新的IP地址,這對(duì)用戶來(lái)說(shuō)將是透明的。如果工作量開(kāi)始過(guò)載,我們必須做的就是再增加一個(gè)WAF設(shè)備,并且把這個(gè)設(shè)備與原來(lái)的連接在一起。這樣,我們的容量就增加了一倍。