馬 麗
〔摘 要〕入侵防御系統(tǒng)是繼防火墻和入侵檢測技術之后的新一代信息安全保障技術。針對高校圖書館日益增加的數(shù)字資源及存在的網絡安全問題,文章將資源入侵檢測軟件Snort和Linux防火墻Netfilter有機結合在一起,提出一種基于行為的入侵防御系統(tǒng)模型,以木馬攻擊為例,給出系統(tǒng)的具體解決方案及關鍵技術,并對其在圖書館網絡中的應用進行了研究。
〔關鍵詞〕入侵防御系統(tǒng);木馬;圖書館數(shù)字資源;Snort預處理器;行為分析
〔中圖分類號〕G250.72 〔文獻標識碼〕A 〔文章編號〕1008-0821(2009)07-0166-03
Application Research in the Library of Intrusion
Prevention System Based on BehaviorMa Li
(Library,Beijing Institute of Technology,Beijing 100081,China)
〔Abstract〕Intrusion Prevention System(IPS)is a new information security technology following the firewall and intrusion detection system.To counter the increased digital resources of university library and the problems of network security,this paper brought forward a intrusion prevention system frameworks based on behavior combining Snort and Netfilter.In the end,taking the case of Trojan horse,it presented the solution in detail and key technologies,and has carried on research in the application in the network security of the library.
〔Key words〕intrusion prevention system;trojan horse;library digital resources;Snort preprocessor;behavior analysis
隨著Internet技術的快速發(fā)展,數(shù)字圖書館已經成為高校圖書館的重要部分,為讀者提供了便利的信息查找方式,在使計算機網絡資源共享有了進一步加強的同時,隨之而來的圖書館網絡安全問題也日益嚴重。尤其是電子出版物和網絡出版物的推出,高校圖書館的數(shù)字資源也日益增加,而服務器又是信息資源管理與存儲的核心,由于它的應用特性,內部網的非法訪問、濫用等問題很嚴重[1],此外還有一些不法分子大批量下載數(shù)字資源,嚴重侵犯版權問題,所以加強服務器的安全就尤為重要。
圖書館傳統(tǒng)的安全保護方法是對操作系統(tǒng)進行安全加固,通過各種各樣的安全補丁來提高服務器操作系統(tǒng)自身的抗攻擊能力。防火墻和入侵檢測系統(tǒng)一直是圖書館界維護網絡安全的主要工具,然而,它們并不能完全滿足縱深防御對檢測和反應能力的要求[2]。其中,防火墻是粗粒度的訪問控制產品,只能對網絡層的數(shù)據包進行過濾,對于應用級攻擊不具備阻止能力,而且對于內部網的攻擊也無能為力。IDS是一種被動型的防御措施,它監(jiān)聽網絡或系統(tǒng)的活動,并收集相關信息進行分析以判斷是否有入侵行為發(fā)生,它的致命缺點是只能報警而無法阻止攻擊。
防火墻、入侵檢測技術雖然在不同程度上加強了圖書館的網絡信息安全,但是這些技術相對獨立,都存在著局限性。文章旨在針對防火墻和IDS所存在的缺陷,根據網絡動態(tài)安全模型理念,將防火墻、入侵檢測及行為分析技術相結合,提出一個基于行為的入侵防御系統(tǒng)模型,針對目前猖獗的木馬攻擊進行防御研究,并將其應用在圖書館網絡中,用以保護數(shù)字資源。
1 入侵防御系統(tǒng)概述
入侵防御系統(tǒng)IPS(Intrusion Prevention System)也稱為IDP(Intrusion Detection & Prevention,入侵檢測和防御系統(tǒng)),是指不但能檢測入侵的發(fā)生,而且能通過一定的響應方式,實時地中止入侵行為的發(fā)生和發(fā)展,實時地保護信息系統(tǒng)不受實質性攻擊的一種智能化的安全產品[3]。
入侵防御系統(tǒng)(IPS)的主要運行特征如下:
(1)深層檢測。IPS突破傳統(tǒng)防火墻的限制,檢測對應OSI模型4到7層里的封包內容(相當于TCP/IP模型的應用層)。由于新型攻擊的程式碼資料便隱藏在TCP/IP通訊協(xié)議的應用層里,IPS必須具有深入分析能力,以確定哪些惡意流量已經被攔截,根據攻擊類型、策略等來確定哪些流量應該被攔截。
(2)串連模式。IPS必須置于受保護網絡入口的閘道位置,所有進出內部網路的封包都需經過IPS作深層檢測。該特征是IPS與IDS在運行上的最大不同之處。
(3)即時監(jiān)測。IPS必須要能對所有進出受保護內部網絡的數(shù)據包做到即時監(jiān)測。若無法實時檢測,當攻擊包穿過IPS欲再采取防御措施時就為時已晚。
(4)線速運行。由于IPS以嵌入模式串接在內外網之間,它一方面必須對過往的數(shù)據包做即時且深層的檢查和丟棄工作,一方面又讓受保護網絡使用者不能因為IPS的存在而覺得傳輸延遲的情形,所以IPS必須具有高效處理數(shù)據包的能力。
(5)豐富的入侵檢測手段。IPS必須建立豐富且盡量完備的病毒特征庫和入侵特征庫。在檢測手段上,需將基于特征的方法與基于統(tǒng)計的方法相結合。同時,應采取智能化的方法來提高對未知病毒或未知模式攻擊的預警能力。
2 基于行為的入侵防御系統(tǒng)
2.1 系統(tǒng)設計思想
系統(tǒng)選用Linux操作系統(tǒng)作為開發(fā)平臺,將入侵檢測軟件Snort和Linux防火墻有機結合在一起,包含防火墻包過濾技術、入侵檢測技術和行為分析技術。引入行為分析技術主要是為了減少入侵檢測的漏報率。系統(tǒng)主要包括包過濾器、事件分析單元和響應單元。包過濾器根據防火墻規(guī)則進行包過濾,將不匹配規(guī)則的數(shù)據包送到用戶空間排隊,入侵檢測系統(tǒng)Snort抓取用戶空間的數(shù)據包進行包解碼,然后經過預處理器檢測,最后再送入入侵檢測引擎,根據優(yōu)化的檢測規(guī)則庫判斷是否為網絡攻擊以及攻擊的類型,并將其寫入報警事件數(shù)據庫。
本研究以木馬為例,設計編寫木馬行為分析預處理器作為Snort的插件。該預處理器對數(shù)據包進行初步檢測,將檢測結果傳遞給行為分析模塊。然后行為分析模塊進行詳細檢測并將事件結果傳遞給響應單元進行處理。
2.2 系統(tǒng)模型
本入侵防御系統(tǒng)采用通用入侵檢測框架(CIDF)結構,由事件產生器、事件分析器、響應單元和事件數(shù)據庫組成[4],系統(tǒng)結構模型如圖1所示。
系統(tǒng)結構說明如下:
(1)事件產生器:由Netfilter、iptables、ip_queue內核模
塊及netlink接口組成,對網絡數(shù)據包進行過濾并將數(shù)據包從內核態(tài)傳送到用戶態(tài)。
(2)事件分析器:由Snort預處理器、行為分析模塊及入侵檢測規(guī)則構成,使用異常檢測技術和模式匹配技術對事件產生器傳遞過來的數(shù)據包進行檢測,將事件分類。
(3)事件數(shù)據庫:采用MySQL數(shù)據庫儲存作為判斷行為正常的標準數(shù)據及入侵事件的結果信息。
(4)響應單元:根據事件分析器產生的事件結果分別進行響應處理。
2.3 系統(tǒng)的關鍵模塊
2.3.1 木馬行為分析預處理器
木馬行為分析預處理器作為Snort的一個插件,將包解碼后的數(shù)據包按照以下方法產生一個鏈表:當主機對外發(fā)送一個TCP或UDP數(shù)據包時,獲取到對外通信數(shù)據包中的源端口,然后在歷史通信端口鏈表中查找是否存在該端口,如果存在只需要將這次對外通信的字節(jié)總數(shù)增加到該端口對應的通信字節(jié)總數(shù)上,如果不存在就把該端口增加到鏈表中,并把此次通信字節(jié)數(shù)增加到對應的通信字節(jié)總數(shù)上。然后判斷每個端口的通信字節(jié)總數(shù)是否大于設定的閾值,大于閾值的端口被列為可疑端口,最后將TCP和UDP報警端口列表寫入有名管道文件供行為分析模塊讀取,并按時間周期清空鏈表。
2.3.2 行為檢測分析及處理模塊
行為檢測分析及處理模塊是用Perl編寫的獨立進程,通過有名管道FIFO實現(xiàn)其和Snort木馬行為分析預處理器通信。
數(shù)據包經過預處理器分析后,得到可疑端口列表,對于木馬攻擊,行為檢測分析模塊通過監(jiān)控系統(tǒng)上的所有報警通信端口,并把端口與它相對應的應用程序和操作用戶關聯(lián)起來,一旦發(fā)現(xiàn)某個監(jiān)聽端口開始對外通信,就可以跟蹤該端口所對應的應用程序的操作行為[5]。如果是一個未知用戶操作應用程序或一個合法用戶進行非法通信,接著將應用程序的通信端口與數(shù)據庫中的已知木馬通信端口進行匹配,如果端口號相同,則確定該應用程序是木馬,事件響應單元向防火墻添加一條規(guī)則,如果端口號不同,則把該進程列為可疑進程,交給事件響應單元處理。如果是合法用戶在操作合法進程,進一步比較進程的路徑和合法進程數(shù)據庫中對應的路徑是否一致,如果一致就允許通信,反之則說明是個假冒進程,也是由事件響應單元處理。程序在控制臺運行結果如圖2所示。
事件響應單元根據檢測結果進行處理:對于合法進程直接放行,對于可疑進程、假冒進程和已知木馬預處理默認為禁止通信,最終決定權交給用戶處理,提供給用戶三個選項:允許本次通信,將該進程對應端口加入可信端口和禁止通信。事件響應單元根據選項通過更新Linux防火墻iptables規(guī)則實時處理事件。
2.4 基于行為的入侵防御系統(tǒng)在圖書館的應用
配置入侵防御系統(tǒng)工作于串連模式,如圖3所示。所有去往圖書館數(shù)字資源服務器的數(shù)據包或網絡流量都經過入侵防御系統(tǒng)檢查,如果發(fā)現(xiàn)可疑的攻擊數(shù)據流,就采取行動,丟棄或阻斷網絡數(shù)據包,達到防御的目的。
3 結 語
將該基于行為的入侵防御系統(tǒng)應用在圖書館網絡中,對于受保護的數(shù)字資源服務器可以準確地檢測到已知的木馬并且將其禁止通信;對于未知的木馬,本系統(tǒng)也具有預測能力,能夠根據其行為特征將其準確地檢測出來,并阻斷其通信;該系統(tǒng)還可以防御假冒合法進程進行通信的惡意攻擊。
高校圖書館數(shù)字信息資源的安全是一項復雜的工程,除了應用各種技術手段防范外,還需要加強圖書館的內部管理,制定相應的規(guī)章制度,共同維護和諧安全的圖書館網絡。
參考文獻
[1]曾星媛.高校圖書館數(shù)字信息資源系統(tǒng)的安全及解決策略[J].現(xiàn)代情報,2007,(2):90-91,94.
[2]于明.異軍突起的IPS[J].網管員世界,2004,(11):97-99.
[3]馮洪亮.IDP讓防火墻與IDS走向統(tǒng)一融合后的優(yōu)生[N].中國計算機報,2003-04-14.
[4]潘玲,黃云森.一種基于SNORT的入侵防御系統(tǒng)[J].計算機系統(tǒng)應用,2005,(6):29-31.
[5]陳桂清,伍乃騏,滕少華.通過進程監(jiān)視檢測木馬攻擊[J].計算機應用,2003,23(11):130-133.