簡介
預防系統(IPS: Intrusion Prevention System)是計算機網路
安全設施,是對防病毒軟體(Antivirus Programs)和防火牆(Packet Filter, Application Gateway)的補充。 入侵預防系統(Intrusion-prevention system)是一部能夠監視網路或網路設備的網路資料傳輸行為的計算機網路安設備,能夠即時的中斷、調整或隔離一些不正常或是具有傷害性的網路資料傳輸行為。
網路安全
隨著計算機的廣泛套用和網路的不斷普及,來自網路內部和外部的危險和犯罪也日益增多。20年前,計算機病毒(電腦病毒)主要通過軟碟傳播。後來,用戶打開帶有病毒的電子信函附屬檔案,就可以觸發附屬檔案所帶的病毒。以前,病毒的擴散比較慢,防毒軟體的開發商有足夠的時間從容研究病毒,開發防病毒、殺病毒軟體。而今天,不僅病毒數量劇增,質量提高,而且通過網路快速傳播,在短短的幾小時內就能傳遍全世界。有的病毒還會在傳播過程中改變形態,使防毒軟體失效。
目前流行的攻擊程式和有害代碼如DoS(Denial of Service),DDoS (Distributed DoS),暴力猜解(Brut-Force-Attack),連線埠掃描(Portscan),嗅探,病毒,蠕蟲,垃圾郵件,木馬等等。此外還有利用軟體的漏洞和缺陷鑽空子、幹壞事,讓人防不勝防。
網路入侵方式越來越多,有的充分利用防火牆放行許可,有的則使防毒軟體失效。比如,在病毒剛進入網路的時候,還沒有一個廠家迅速開發出相應的辨認和撲滅程式,於是這種全新的病毒就很快大肆擴散、肆虐於網路、危害單機或網路資源,這就是所謂Zero Day Attack。
防火牆可以根據英特網地址(IP-Addresses)或服務連線埠(Ports)過濾數據包。但是,它對於利用合法網址和連線埠而從事的破壞活動則無能為力。因為,防火牆極少深入數據包檢查內容。
每種攻擊代碼都具有隻屬於它自己的特徵 (signature), 病毒之間通過各自不同的特徵互相區別,同時也與正常的應用程式代碼相區別。除病毒軟體就是通過儲存所有已知的病毒特徵來辨認病毒的。
在ISO/OSI網路層次模型(見OSI模型) 中,防火牆主要在第二到第四層起作用,它的作用在第四到第七層一般很微弱。而除病毒軟體主要在第五到第七層起作用。為了彌補防火牆和除病毒軟體二者在第四到第五層之間留下的空檔,幾年前,工業界已經有入侵偵查系統(IDS: Intrusion Detection System)投入使用。入侵偵查系統在發現異常情況後及時向網路安全管理人員或防火牆系統發出警報。可惜這時災害往往已經形成。雖然,亡羊補牢,尤未為晚,但是,防衛機制最好應該是在危害形成之前先期起作用。隨後應運而生的入侵反應系統(IRS: Intrusion Response Systems) 作為對入侵偵查系統的補充能夠在發現入侵時,迅速作出反應,並自動採取阻止措施。而入侵預防系統則作為二者的進一步發展,汲取了二者的長處。
入侵預防系統也像入侵偵查系統一樣,專門深入網路數據內部,查找它所認識的攻擊代碼特徵,過濾有害數據流,丟棄有害數據包,並進行記載,以便事後分析。除此之外,更重要的是,大多數入侵預防系統同時結合考慮應用程式或網路傳輸重的異常情況,來輔助識別入侵和攻擊。比如,用戶或用戶程式違反安全條例、數據包在不應該出現的時段出現、作業系統或應用程式弱點的空子正在被利用等等現象。入侵預防系統雖然也考慮已知病毒特徵,但是它並不僅僅依賴於已知病毒特徵。
套用入侵預防系統的目的在於及時識別攻擊程式或有害代碼及其克隆和變種,採取預防措施,先期阻止入侵,防患於未然。或者至少使其危害性充分降低。入侵預防系統一般作為防火牆 和防病毒軟體的補充來投入使用。在必要時,它還可以為追究攻擊者的刑事責任而提供法律上有效的證據 (forensic)。
入侵預防技術
* 異常偵查。正如入侵偵查系統, 入侵預防系統知道正常數據以及數據之間關係的通常的樣子,可以對照識別異常。
* 在遇到動態代碼(ActiveX, JavaApplet,各種指令語言script languages等等)時,先把它們放在沙盤內,觀察其行為動向,如果發現有可疑情況,則停止傳輸,禁止執行。
* 有些入侵預防系統結合協定異常、傳輸異常和特徵偵查,對通過網關或防火牆進入網路內部的有害代碼實行有效阻止。
* 核心基礎上的防護機制。用戶程式通過系統指令享用資源(如存儲區、輸入輸出設備、中央處理器等)。入侵預防系統可以截獲有害的系統請求。
* 對Library、Registry、重要檔案和重要的資料夾進行防守和保護。
類型
投入使用的入侵預防系統按其用途進一步可以劃
分為單機入侵預防系統(HIPS: Hostbased Intrusion Prevension System)和網路入侵預防系統(NIPS: Network Intrusion Prevension System)兩種類型。
網路入侵預防系統作為網路之間或網路組成部分之間的獨立的硬體設備,切斷交通,對過往包裹進行深層檢查,然後確定是否放行。網路入侵預防系統藉助病毒特徵和協定異常,阻止有害代碼傳播。有一些網路入侵預防系統還能夠跟蹤和標記對可疑代碼的回答,然後,看誰使用這些回答信息而請求連線,這樣就能更好地確認發生了入侵事件。
根據有害代碼通常潛伏於正常程式代碼中間、伺機運行的特點,單機入侵預防系統監視正常程式,比如Internet Explorer,Outlook,等等,在它們(確切地說,其實是它們所夾帶的有害代碼)向作業系統發出請求指令,改寫系統檔案,建立對外連線時,進行有效阻止,從而保護網路中重要的單個機器設備,如伺服器、路由器、防火牆等等。這時,它不需要求助於已知病毒特徵和事先設定的安全規則。總地來說,單機入侵預防系統能使大部分鑽空子行為無法得逞。我們知道,入侵是指有害代碼首先到達目的地,然後幹壞事。然而,即使它僥倖突破防火牆等各種防線,得以到達目的地,但是由於有了入侵預防系統,有害代碼最終還是無法起到它要起的作用,不能達到它要達到的目的。
成熟的產品
目前市場上成熟的入侵預防系統產品很多,主要有如下幾種:
* Reflex Security MG10 (為高端Network Base IPS,資料吞吐量高達10GB*Reflex Security Intrusion Prevention System,
* Cisco IPS 4200 Series Sensors (Cisco),
* InterSpect 610 (CheckPoint),
* FortiGate- 3600 (FortiNet),
* Proventia G1000-400 (ISS),
* NetScreen IDP 1000 (Juniper Networks),
* UnityOne 1200 (TippingPoint, 3Com)。
雖然它們在商業意義上都是已經充分成熟的產品,但是,至今卻還沒有一等一級的佼佼者。它們之間重要的差別大多數在於,有的偏於保守,只有它認為很重要的事件才採取行動; 有的則過於敏感,就象名人的保鏢一樣,把每件雞毛蒜皮的不正常小事 (event) 都當作攻擊的苗頭來看待(false positive),給安全管理人員留下大量的事件記載。在選購入侵預防系統時還應該注意,比如在網路傳輸量很大時,它能不能正常運行,對已經確認的攻擊能不能有效阻止,是不是方便使用,以及價格等等。儘量做到既不忽視它的作用,又要根據自己的需要,經過試用對比,仔細選取合適的產品。