唐言
(黑龍江省教育學院,黑龍江 哈爾濱 150080)
二十一世紀,隨著計算機網絡技術的飛速發展,一個實時網絡通訊、資源信息共享的網絡時代已經來臨,可以說現在人們的工作、生活己經和它密不可分了。但是計算機網絡在給我們提供快捷、方便、可靠服務的同時,也帶來了不容忽視的網絡安全問題。計算機網絡不僅要保護計算機網絡設備安全和計算機網絡系統安全,還要保護數據安全。目前,運用較廣泛的網絡安全的主要技術有防火墻技術、入侵檢測技術。本文集兩種技術之所長提出了一種將防火墻與網絡入侵檢測系統進行聯動的體系框架。
隨著網絡安全技術的整體發展和網絡應用的不斷變化,現代防火墻技術也在不斷發展,防火墻所采用的主要技術為。
包過濾技術是對數據包實施有選擇的通過,包過濾技術的核心是安全策略,即過濾算法的設計。它能攔截和檢查所有進出的數據,通過包檢查模塊驗證包否符合過濾規則,符合的包允許通過,不符合規則的數據包要進行報警或通知管理員。另外,不管是否符合過濾規則,防火墻一般都要記錄數據包的情況。對于丟棄的數據包,防火墻可以給發送方一個消息,也可以不發,這要取決于包過濾策略。包檢查模塊能檢查包中的所有信息,一般是網絡層的IP 頭和傳輸層的頭。
代理型防火墻也可以被稱為代理服務器。代理服務器位于客戶機與服務器之間,完全阻擋了二者的數據交換。從客戶機來看,代理服務器相當于一臺真正的服務器;而從服務器來看,代理服務器又是一臺真正的客戶機。當客戶機需要使用服務器上的數據時,首先將數據請求發給代理服務器。代理服務器再根據這一請求向服務器索取數據,然后由代理服務器將數據傳輸給客戶機。由于外部系統與內部服務器之間沒有直接的數據通道,外部的惡意侵害也就很難危害到企業內部網絡系統。代理防火墻通常支持的一些常見的應用協議有HTTP、SISSL、SMTP、POP3 等。
傳統的包過濾防火墻只是通過檢測IP 包頭的相關信息來決定數據流的通過或拒絕,而狀態檢測技術采用的是一種基于連接的狀態檢測機制,將屬于同一連接的所有包作為一個整體的數據流看待,構成連接狀態表,通過規則表與狀態表的共同配合,對表中的各個連接狀態因素加以識別。這里動態連接狀態表中的記錄可以是以前的通信信息,也可以是其他相關應用程序的信息。因此,與傳統包過濾防火墻的靜態過濾規則表相比,它具有更好的靈活性和安全性。
網絡地址轉換是把IP 地址轉換成臨時的、外部的、注冊的IP 地址標準。它允許具有私有IP 地址的內部網絡訪問因特網。它還意味著用戶不需要為其網絡中每一臺機器取得注冊的IP地址。當受保護網絡連到Internet上時,受保護網絡可以使用非正式IP 地址,為此網絡地址轉換器在防火墻上裝一個合法IP 地址集。當內部某一用戶訪問Internet 時,防火墻動態地從地址集中選一個未分的地址分配給該用戶,該用戶即可使用這個合法地址進行通信。同時,對內部的某些服務器,網絡地址轉換器允許為其分配一個固定的合法地址。外部網絡的用戶就可以通過防火墻來訪問內部的服務器。這種技術即緩解了少量的IP 地址和大量的主機之間的矛盾,又對外隱藏了內部主機的IP 地址,提高了安全性。
個人防火墻是一種能夠保護個人計算機系統安全的軟件,它可以直接在用戶計算機上運行,使用與狀態防火墻相同的方式,保護一臺計算機免受攻擊。通常,這些防火墻安裝在計算機網絡接口的較低級別上,使得它們可以監視傳入、傳出網卡的所有網絡通信。對遇到的每一種的網絡通信,個人防火墻都會提示用戶一次,詢問如何處理那種通信。然后個人防火墻便記住響應方式,并應用于以后遇到的相同的網絡通信。
專用的攻擊檢測設備一般是監聽網絡傳輸的信息,不是串接在其中,不能保證能夠切斷檢測出來的攻擊。只有將攻擊檢測和防火墻結合才一能夠保證網絡不受攻擊。入侵檢測系統與防火墻聯動實現的過程如圖所示。互聯網上的黑客開始對受保護網絡內的主機發動攻擊,這時位于網絡監聽狀態的入侵檢測系統檢測到黑客對內網主機的攻擊行為后,入侵檢測系統通過它與防火墻之間的‘公共語言’發送通知報文通知防火墻,防火墻收到并驗證報文后生成動態規則實現對攻擊行為的控制和阻斷。

圖1 防火墻和入侵檢測系統聯動
聯動控制是基于客戶服務器模式,通過擴展入侵檢測系統和防火墻的功能,在防火墻中駐留一個Server 程序,在IDS 端駐留一個Client端程序,Client 端在發現需防火墻阻斷的攻擊行為后,產生控制信息,將控制信息傳送給Server端,Server 端接到Client 的控制消息后,動態生成防火墻的過濾規則,最終實現聯動,攔截攻擊后且攻擊停止時,添加的防火墻規則自動超時刪除。

圖2 聯動軟件框架
聯動控制模塊啟動或停止防火墻入侵檢測報告的接收,在一個入侵檢測系統向多個防火墻的發送數據的情況下,可以控制每個防火墻入侵報告的接收的啟、停狀態。防火墻報告接受模塊啟動報告接受線程,負責接收入侵檢測系統實時發送的入侵報告,并對發送來的報告進行解析。入侵檢測報告發送模塊根據入侵檢測系統的告警,實時發送入侵報告給注冊的防火墻系統。
SSL 協議即安全套接層協議能使用戶/服務器應用之間的通信不被攻擊者竊聽,并且始終對服務器進行認證,還可選擇對用戶進行認證。SSL 協議要求建立在可靠的傳輸層協議(TCP)之上。SSL 協議的優勢在于它是與應用層協議獨立無關的,高層的應用層協議(例如:HTTP、FTP、TELNET 等)能透明地建立于SSL 協議之上。SSL 協議在應用層協議通信之前就已經完成加密算法、通信密鑰的協商及服務器認證工作。在此之后應用層協議所傳送的數據都會被加密,從而保證通信的私密性。通過以上敘述,SSL 協議提供的安全信道有以下三個特性。
數據的保密性。信息加密就是把明碼的輸入文件用加密算法轉換成加密的文件以實現數據的保密。加密的過程需要用到密鑰來加密數據然后再解密。沒有了密鑰,就無法解開加密的數據。數據加密之后,只有密鑰用一個安全的方法傳送。加密過的數據可以公開地傳送。
數據的一致性。加密也能保證數據的一致性。例如:消息驗證碼(MAC,能夠校驗用戶提供的加密信息,接收者可以用MAC 來校驗加密數據,保證數據在傳輸過程中沒有被篡改過。
安全驗證。加密的另外一個用途是用來作為個人的標識,用戶的密鑰可以作為他的安全驗證的標識。SSL 是利用公開密鑰的加密技術(RSA)來作為用戶端與服務器端在傳送機密資料時的加密通訊協定。
SSL 安全協議為網絡應用層通信提供了認證、數據保密和數據完整性的服務,較好地解決了聯動系統數據傳輸的安全問題。聯動系統的數據交互利用了OpenSSL 提供的開發庫,其通信過程和HTTP 協議類似,在客戶端和服務器建立TCP 連接(connet 和accept)成功之后,SSL開始運行,首先進行安全握手連接即SSL cornet和SSL_accept,以確定協議版本、密碼算法、密鑰和壓縮方式等密碼學參數,并實現了防火墻與入侵檢測系統數據交互前的身份認證;握手成功之后,入侵檢測系統的使用SSL write 函數對應用層數據進行加密并將密文向其TCP 層發送,而后系統通過網絡將報文向對等TCP 層(防火墻服務端)傳送。防火墻使用SSL read 函數對其TCP 層傳上來的數據進行解密,然后再將明文向上層發送,從而實現了防火墻與入侵檢測系統數據交互的保密性。
[1]劉文濤,網絡安全開發包詳解,電子工業出版社,2005
[2]李曉鶯,協議分析在入侵檢測系統中的應用,網絡安全技術與應用,2002
[3]韓東海等著,《入侵檢測系統實例剖析》[M],清華大學出版社,2002