張風(fēng)雷 霍旺
【摘要】 隨著網(wǎng)絡(luò)通信與計(jì)算機(jī)技術(shù)的飛速發(fā)展,新的Web技術(shù)以突出的互動性和實(shí)時性等眾多優(yōu)點(diǎn)迅速普及,新技術(shù)和新應(yīng)用也引入了新的安全問題。在對各種Web攻擊深入分析的基礎(chǔ)上,結(jié)合攻擊模型設(shè)計(jì)了基于入侵檢測系統(tǒng)和防火墻阻斷聯(lián)動的防御體系。測試結(jié)果表明,聯(lián)動的防御體系架構(gòu)可以很好地抵御典型的Web攻擊。
【關(guān)鍵詞】 IDS Web攻擊 防火墻
一、引言
當(dāng)前,WEB類應(yīng)用系統(tǒng)部署越來越廣泛,但是由于WEB安全事件頻繁發(fā)生,既損害了WEB系統(tǒng)建設(shè)單位的形象,也可能直接導(dǎo)致經(jīng)濟(jì)上的損失,甚至產(chǎn)生嚴(yán)重的政治影響。2011年底曝出多網(wǎng)站泄密事件,事故發(fā)生主要原因在于網(wǎng)站存在漏洞,從而遭到黑客入侵拖庫。通過360網(wǎng)站安全檢測的統(tǒng)計(jì),目前國內(nèi)存在高危漏洞2011年底曝出多網(wǎng)站泄密事件,事故發(fā)生主要原因在于網(wǎng)站存在漏洞,從而遭到黑客入侵拖庫。通過360網(wǎng)站安全檢測的統(tǒng)計(jì),目前國內(nèi)存在高危漏洞的網(wǎng)站約站36%,中危漏洞的網(wǎng)站約占16%,而相對比較安全的網(wǎng)站僅有48%[1]。而根據(jù)CNCERT監(jiān)測數(shù)據(jù),2012年9月境內(nèi)被篡改網(wǎng)站數(shù)量多達(dá)2219個,數(shù)量最多的仍是COM類網(wǎng)站。其中,GOV類網(wǎng)站有182個(約占境內(nèi)8.2%)[2]。網(wǎng)站安全是一個綜合性多元化問題,如何通過專業(yè)技術(shù)保障而減少對系統(tǒng)安全的威脅為本文所探討的重要內(nèi)容。
二、常見WEB系統(tǒng)攻擊方式
如今黑客攻擊的趨勢逐漸由傳統(tǒng)的網(wǎng)絡(luò)層偏向應(yīng)用層,應(yīng)用WEB化趨勢更進(jìn)一步加劇了WEB安全威脅的影響。Web應(yīng)用系統(tǒng)的安全涵蓋了網(wǎng)絡(luò)安全、主機(jī)安全、數(shù)據(jù)庫安全、中間件安全、Web服務(wù)器安全與Web應(yīng)用安全等多個層面。
2.1 SQL注入和XSS攻擊
SQL注入攻擊是一種傳播范圍廣、危害嚴(yán)重的主動攻擊方式。由于應(yīng)用程序?qū)νㄟ^SQL語句提交的用戶輸入內(nèi)容缺乏必要的過濾機(jī)制,攻擊者可以在輸入的內(nèi)容中加入SQL語句以及參數(shù),從而實(shí)現(xiàn)數(shù)據(jù)庫操作,如查詢、插入、修改等[3]。利用SQL注入漏洞,攻擊者只需找到一個參數(shù)傳遞的地方,在應(yīng)該輸入?yún)?shù)的地方同時輸入數(shù)據(jù)庫命令,使數(shù)據(jù)庫執(zhí)行命令,就可以輕松獲得非法的信息,導(dǎo)致信息泄漏、數(shù)據(jù)丟失、記錄篡改。
XSS攻擊(Cross.Site Scripting,跨站腳本攻擊)現(xiàn)在應(yīng)用最廣泛,殺傷力也很大的漏洞。注入漏洞是因?yàn)樽址^濾不嚴(yán)謹(jǐn)所造成的,可以得到管理員的帳號密碼等相關(guān)資料。在WEB應(yīng)用中, 當(dāng)用戶提交數(shù)據(jù)與服務(wù)器進(jìn)行交互時, 攻擊者將惡意腳本隱藏在用戶提交的數(shù)據(jù)中,破壞服務(wù)器正常的響應(yīng)頁面。通過社會工程學(xué)等方法,誘騙用戶點(diǎn)擊和訪問虛假的頁面,達(dá)到偷竊用戶信息、下載惡意腳本等目的。
2.2 訪問控制
缺少經(jīng)驗(yàn)的系統(tǒng)管理員往往沒有正確的設(shè)置服務(wù)器文件系統(tǒng)的權(quán)限當(dāng)一個入侵者獲得到Web服務(wù)器上的較低的權(quán)限時,通常會想方設(shè)法的提升自己的權(quán)限,而服務(wù)器文件系統(tǒng)的權(quán)限系統(tǒng)沒有正確設(shè)置時,可以通過較低的權(quán)限下獲取到服務(wù)器上的敏感信息,為提升權(quán)限提供了條件。攻擊者在動態(tài)網(wǎng)頁的輸入中使用各種非法數(shù)據(jù),以實(shí)現(xiàn)獲取服務(wù)器敏感數(shù)據(jù)的目的,沒有經(jīng)過嚴(yán)密的代碼審核和測試就放到網(wǎng)上進(jìn)行應(yīng)用,一旦攻擊者發(fā)現(xiàn)漏洞,就可以訪問未授權(quán)的內(nèi)容,還可以進(jìn)行刪除、修改網(wǎng)站內(nèi)容,甚至控制整個網(wǎng)站和服務(wù)器。
2.3 拒絕服務(wù)和緩沖區(qū)溢出攻擊
攻擊者通過構(gòu)造大量的無效請求或利用系統(tǒng)漏洞構(gòu)造非法請求,耗盡WEB服務(wù)器或帶寬的資源,導(dǎo)致WEB服務(wù)器崩潰,使Web服務(wù)器不能響應(yīng)正常用的訪問。對于一個網(wǎng)絡(luò)應(yīng)用程序而言,它不會很容易地分辨出攻擊和正常網(wǎng)絡(luò)通訊之間的差別,有許多的因素造成了這種情況,但是其中最重要的一點(diǎn)就是至今還沒有一種可靠的方法來確定請求來自何方,這也就為過濾掉那些惡意的請求造成了巨大的困難。對于分布式拒絕服務(wù)攻擊,Web應(yīng)用程序很難區(qū)別這是一個真正的攻擊,還是成千上萬個用戶同時訪問[4]。
除了上面所列的幾種Web服務(wù)器常見的攻擊威脅外,Web服務(wù)器上所運(yùn)行的動態(tài)腳本(ASP、ASP.NET、JSP和PHP等等)自身所帶的Bug也會給Web服務(wù)器的安全帶來極大的威脅[5]。惡意的攻擊者可能可以利用這些腳本中的Bug輕易的獲得Web服務(wù)器的權(quán)限。而有的管理員因?yàn)樵O(shè)置上的疏忽(數(shù)據(jù)庫的路徑?jīng)]有保護(hù)等等),給入侵者創(chuàng)造了攻擊條件。
三、安全模型
著名的美國互聯(lián)網(wǎng)安全系統(tǒng)公司ISS在PDR 模型的基礎(chǔ)上,提出以安全策略為中心的PPDR 模型。PPDR 的組成部分主要包括安全策略、防護(hù)、檢測和響應(yīng)四個方面,其中安全策略作為整個模型的核心和安全實(shí)施的依據(jù),其他各部分圍繞著安全策略,在網(wǎng)絡(luò)安全的不同層面上發(fā)揮著各自的作用。PPDR 安全模型以安全策略為中心,各環(huán)節(jié)相互影響、相互促進(jìn)。防火墻處于內(nèi)網(wǎng)網(wǎng)絡(luò)數(shù)據(jù)的出入口,通過預(yù)先設(shè)定的安全策略對進(jìn)入內(nèi)網(wǎng)的數(shù)據(jù)包進(jìn)行檢查,過濾掉一部分入侵攻擊,而由于安全策略和防火墻的一些缺陷的存在,另一部分入侵者騙過了防火墻或者繞過防火墻成功進(jìn)入到內(nèi)部網(wǎng)絡(luò)。成功進(jìn)入到內(nèi)網(wǎng)的攻擊在內(nèi)部網(wǎng)絡(luò)中再一次受到入侵檢測系統(tǒng)的排查。
當(dāng)入侵檢測系統(tǒng)發(fā)現(xiàn)相關(guān)網(wǎng)絡(luò)異常之后,立即做出相應(yīng),向防火墻發(fā)出報(bào)警并傳送報(bào)警事件的相關(guān)信息。防火墻在接收到安全事件報(bào)警后,立即采取諸如阻斷連接之類的響應(yīng)措施以阻止當(dāng)前攻擊的進(jìn)一步動作,并根據(jù)報(bào)警的相關(guān)內(nèi)容及時調(diào)整安全策略,以防止類似的入侵事件再一次發(fā)生。
四、入侵防御系統(tǒng)架構(gòu)的設(shè)計(jì)和測試結(jié)果
通過 PPDR 安全模型我們可以看出,防火墻和入侵檢測系統(tǒng)都是網(wǎng)絡(luò)安全體系中非常重要的一環(huán)。但單純的防火墻或是入侵檢測系統(tǒng)都不足以構(gòu)成一個完整的網(wǎng)絡(luò)安全防御體系。防火墻執(zhí)行訪問控制策略,阻止來自外部網(wǎng)絡(luò)的攻擊行為,為內(nèi)部網(wǎng)絡(luò)提供安全保護(hù),可認(rèn)為是PPDR 中的防護(hù)環(huán)節(jié)。顯然,將防火墻與入侵檢測系統(tǒng)相結(jié)合,在防護(hù)和檢測兩個環(huán)節(jié)中加入響應(yīng)環(huán)節(jié),將它們有效的結(jié)合起來,協(xié)同工作,相互補(bǔ)充,組成一個堅(jiān)實(shí)的整體,才能為網(wǎng)絡(luò)提供充實(shí)的安全性保障。
4.1 防火墻及其局限性
防火墻(Firewall)是指設(shè)置在不同網(wǎng)絡(luò)(如可信任的企業(yè)內(nèi)部網(wǎng)和不可信的公共網(wǎng))或網(wǎng)絡(luò)安全域之間的一系列安全部件的組合。從防火墻技術(shù)來分,可以分為包過濾型和應(yīng)用代理型兩大類。盡管防火墻經(jīng)過幾代的發(fā)展,在主動性檢測力面有所提高,仍然不能有效檢測數(shù)據(jù)包。如果利用防火墻對數(shù)據(jù)包進(jìn)行檢測會導(dǎo)致網(wǎng)絡(luò)效率大大降低,網(wǎng)絡(luò)費(fèi)用相應(yīng)提高。
4.2 入侵檢測系統(tǒng)及其局限性
入侵檢測系統(tǒng)(IDS,Intrusion Detection System)是對防火墻有益的補(bǔ)充,作為一種積極主動的安全防御技術(shù),入侵檢測技術(shù)能夠協(xié)助系統(tǒng)對付來自網(wǎng)絡(luò)內(nèi)部和外部的各種入侵攻擊以及合法用戶的誤操作行為,盡可能的降低入侵對網(wǎng)絡(luò)帶來的危害。
4.3 防火墻與入侵檢測聯(lián)動防御系統(tǒng)設(shè)計(jì)
動態(tài)的網(wǎng)絡(luò)需要動態(tài)的安全防御措施。防火墻與入侵檢測聯(lián)動防御系統(tǒng)的流程圖如圖 1所示。入侵檢測系統(tǒng)積極主動的收集網(wǎng)絡(luò)中的數(shù)據(jù)包及主機(jī)相關(guān)日志,實(shí)時監(jiān)視網(wǎng)絡(luò)狀況,以發(fā)現(xiàn)網(wǎng)絡(luò)中存在的入侵攻擊行為,并把發(fā)現(xiàn)了的攻擊行為傳送給防火墻進(jìn)行有效的攔截處理。
首先,防護(hù)環(huán)節(jié)實(shí)施安全策略,對網(wǎng)絡(luò)系統(tǒng)實(shí)施保護(hù);IDS檢測監(jiān)視網(wǎng)絡(luò)的現(xiàn)行狀況,發(fā)現(xiàn)網(wǎng)絡(luò)中的異常狀況,防火墻監(jiān)督安全策略的有效實(shí)施。當(dāng)發(fā)現(xiàn)問題時,檢測轉(zhuǎn)向響應(yīng)環(huán)節(jié),通過各種應(yīng)急措施減小安全事故對系統(tǒng)帶來的危害,并修正防護(hù)環(huán)節(jié)存在的缺陷,達(dá)到對防護(hù)環(huán)節(jié)的有利補(bǔ)充。整個系統(tǒng)通過不斷的“防護(hù)——檢測——響應(yīng)——再防護(hù)”的循環(huán)往復(fù),使得系統(tǒng)的安全性呈現(xiàn)一種螺旋上升的趨勢。
典型的應(yīng)用部署內(nèi)容層包括Web類應(yīng)用系統(tǒng)生成、處理、存儲或傳輸?shù)拿舾行畔?nèi)容,例如客戶隱私信息與公司機(jī)密等。應(yīng)用層特指Web應(yīng)用程序,通常由HTML、Javascript、Java、ASP.NET、PHP等語言編寫而成,運(yùn)行于Web服務(wù)器或應(yīng)用服務(wù)器環(huán)境,并向用戶瀏覽器提供業(yè)務(wù)功能訪問界面。設(shè)備層主要包含承載Web類應(yīng)用系統(tǒng)的服務(wù)器、網(wǎng)絡(luò)連接設(shè)備和存儲設(shè)備。例如Web服務(wù)器、應(yīng)用服務(wù)器、中間件、數(shù)據(jù)庫服務(wù)器、操作系統(tǒng)、路由器與防火墻等。網(wǎng)絡(luò)層包括Web類應(yīng)用系統(tǒng)的網(wǎng)絡(luò)架構(gòu)與互聯(lián)網(wǎng)出口設(shè)計(jì)。例如安全域劃分、冗余設(shè)計(jì)、邊界防護(hù)等。物理層包括維護(hù)Web類應(yīng)用系統(tǒng)的機(jī)房物理安全與訪問控制等。同時入侵系統(tǒng)所檢測的結(jié)果在一定程度上為防火墻技術(shù)的安全管理作業(yè)提供了最可靠的依據(jù),從而將防火墻技術(shù)的智能控制訪問能力得到大幅度的提升。
五、結(jié)論
把防火墻安全技術(shù)跟入侵檢測系統(tǒng)結(jié)合起來,實(shí)行防火墻安全技術(shù)不但能獲取入侵檢測系統(tǒng)反應(yīng)出的網(wǎng)絡(luò)安全數(shù)據(jù),還可以將傳統(tǒng)入侵系統(tǒng)檢測不可以自主控制的難題給完美解決掉;由于防火墻技術(shù)與入侵檢測技術(shù)有較強(qiáng)的互補(bǔ)性,實(shí)現(xiàn)防火墻與入侵檢測的聯(lián)動是目前較理想的網(wǎng)絡(luò)安全防御措施。
入侵檢測作為一種積極主動地安全防護(hù)技術(shù),提供了對內(nèi)部攻擊、外部攻擊和誤操作的實(shí)時保護(hù),在網(wǎng)絡(luò)系統(tǒng)受到危害之前攔截和響應(yīng)入侵。入侵檢測系統(tǒng)面臨的最主要挑戰(zhàn)有兩個:一個是虛警率太高,一個是檢測速度太慢。現(xiàn)有的入侵檢測系統(tǒng)還有其他技術(shù)上的致命弱點(diǎn)。因此,可以這樣說,入侵檢測產(chǎn)品仍具有較大的發(fā)展空間,從技術(shù)途徑來講,除了完善常規(guī)的、傳統(tǒng)的技術(shù)(模式識別和完整性檢測)外,應(yīng)重點(diǎn)加強(qiáng)統(tǒng)計(jì)分析的相關(guān)技術(shù)研究。