專利名稱:異常文件訪問自適應(yīng)檢測方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機(jī)網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,特別涉及一種異常文件訪問自適應(yīng)檢測方法。
背景技術(shù):
互聯(lián)網(wǎng)的廣泛使用,使聯(lián)網(wǎng)計算機(jī)受到攻擊的風(fēng)險與日俱增,而實踐已經(jīng)證明諸如口令、防火墻以及信息加密等傳統(tǒng)的防御性安全措施不足以應(yīng)對這種日益嚴(yán)峻的安全新形勢。實際中迫切需要像入侵檢測技術(shù)那樣能夠動態(tài)監(jiān)控聯(lián)網(wǎng)計算機(jī)系統(tǒng)安全的保障措施,以便在發(fā)生攻擊的時候進(jìn)行快速響應(yīng),將可能造成的損失降至最小。因此,大量的入侵檢測系統(tǒng)(IDS)被投入實際使用并成為大多數(shù)機(jī)構(gòu)安全體系的必要組成部分。入侵檢測技術(shù)主要分為誤用檢測和異常檢測兩類,誤用檢測是一種比較成熟的技術(shù),目前投入實際使用的入侵檢測系統(tǒng)絕大多數(shù)采用的都是誤用檢測技術(shù),但誤用檢測基于已知特征檢測攻擊,無法有效檢測層出不窮的新攻擊。異常檢測技術(shù)通過建立正常行為模型來檢測異常,可以檢測出新攻擊,但是基于異常的入侵檢測系統(tǒng)通常會產(chǎn)生大量的虛警,該類技術(shù)是當(dāng)前入侵檢測研究的熱點。此外,當(dāng)前誤用檢測系統(tǒng)中攻擊特征庫的建立以及異常檢測系統(tǒng)中正常模型的訓(xùn)練都非常繁瑣復(fù)雜,期間稍有不慎,就會導(dǎo)致檢測系統(tǒng)無法有效工作。
研究實踐表明,行為觀測點的選取以及正常行為的建模方法是異常檢測中的兩個關(guān)鍵性問題。自1996年Forrest等人在國際電氣電子工程師協(xié)會(IEEE)的安全與穩(wěn)私年會上提出基于系統(tǒng)調(diào)用序列進(jìn)行異常檢測的方法以來,大量研究工作都集中在通過系統(tǒng)調(diào)用對計算機(jī)系統(tǒng)中關(guān)鍵進(jìn)程進(jìn)行監(jiān)控的方法上面。但是以系統(tǒng)調(diào)用作為行為觀測點,只能對少數(shù)進(jìn)程進(jìn)行監(jiān)控,無法全面有效的監(jiān)控系統(tǒng)中大量的其它行為。另外,在系統(tǒng)調(diào)用層次上進(jìn)行的檢測往往會對被監(jiān)控系統(tǒng)的性能造成一定的影響。
文件訪問作為絕大多數(shù)系統(tǒng)行為的有機(jī)組成部分,是進(jìn)行異常檢測的另一個很好的觀測點。文件系統(tǒng)中存放了大量對系統(tǒng)安全至關(guān)重要的信息,如機(jī)密文件、系統(tǒng)的安全配置信息以及實施安全配置策略的各種安全工具,對文件訪問進(jìn)行監(jiān)控可以直接有效的保護(hù)這些信息。而且,絕大部分對系統(tǒng)安全產(chǎn)生真正威脅的惡意行為都會一定程度的反映出文件訪問的異常,因此可以通過對相關(guān)文件訪問行為的分析將它們檢測出來。此外,文件訪問發(fā)生在相對的慢媒介之上,監(jiān)控所帶來的負(fù)荷,同實際的文件訪問行為相比基本可以忽略。
但是由于實際系統(tǒng)中文件訪問的復(fù)雜性和時變性,研究人員一直都沒能提出一種可以全面有效的基于文件訪問檢測系統(tǒng)中非法行為的方法。2003年4月,哥倫比亞的研究小組在它們的技術(shù)報告中首次描述了一個基于Bayes模型檢測文件訪問中異常行為的系統(tǒng)FWRAP(File Wrapper Anomaly Detection System),但該系統(tǒng)檢測準(zhǔn)確性不高,內(nèi)存開銷龐大,特別是正常模型訓(xùn)練時仍然需要大量高質(zhì)量的正常數(shù)據(jù),因此該系統(tǒng)只能作為一個研究原型,不具備實用性。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種異常文件訪問自適應(yīng)檢測方法,采用選擇性自學(xué)習(xí)與自適應(yīng)遺忘機(jī)制相結(jié)合,不需人工干預(yù)就可以安全可靠的自動建立正常模型準(zhǔn)確描述變化的正常行為,大大簡化了傳統(tǒng)入侵檢測方法的初始設(shè)置過程,可以高效準(zhǔn)確的檢測出計算機(jī)系統(tǒng)中包括未知攻擊在內(nèi)的大量惡意行為;并且顯著提高了檢測精度。
本發(fā)明的目的是通過如下技術(shù)方案實現(xiàn)的異常文件訪問自適應(yīng)檢測方法包括實時記錄計算機(jī)系統(tǒng)中產(chǎn)生的文件資源訪問請求,其特征在于還包括以下步驟1)對記錄的文件訪問資源請求進(jìn)行預(yù)處理,生成文件訪問記錄;2)用文件訪問關(guān)系樹記錄正常的文件訪問記錄中描述的文件訪問關(guān)系,并使用時間稀缺度t-Rarity,刻畫文件訪問關(guān)系樹各部分隨時間的變化情況;3)根據(jù)時間稀缺度t-Rarity,將文件訪問關(guān)系樹分為固定和變化的兩部分;4)根據(jù)文件訪問關(guān)系樹,對文件訪問記錄進(jìn)行分析當(dāng)出現(xiàn)所描述的文件訪問關(guān)系與文件訪問關(guān)系樹固定部分不相符的文件訪問記錄時,則標(biāo)記為異常;相符合的文件訪問記錄則被標(biāo)記為正常,同時文件訪問關(guān)系樹會記錄下該記錄所描述的文件訪問關(guān)系;5)將異常的文件訪問記錄上報給安全管理員;6)周期性的更新文件訪問關(guān)系樹各部分的時間稀缺度t-Rarity值、其它相關(guān)參數(shù)并刪除文件訪問關(guān)系樹中記錄的過時文件訪問關(guān)系。
本發(fā)明異常文件訪問自適應(yīng)檢測方法有以下優(yōu)點及效果1)安全可靠的自適應(yīng)正常行為建模,妥善處理了正常文件訪問中的時變性,建立的行為模型準(zhǔn)確;2)異常行為檢測準(zhǔn)確,檢測范圍覆蓋最嚴(yán)重的安全威脅;3)利用樹型結(jié)構(gòu)組織正常行為信息,檢測效率高;4)文件訪問行為簡單直觀,上報結(jié)果易于分析。
圖1為實施本發(fā)明所需的異常文件訪問監(jiān)控系統(tǒng)ADSAFA的系統(tǒng)結(jié)構(gòu)圖;圖2為文件訪問關(guān)系樹;圖3為時間稀缺度t-Rarity增長曲線示例;圖4為異常文件訪問監(jiān)控系統(tǒng)ADSAFA實施本發(fā)明的執(zhí)行流程圖;圖5為本發(fā)明實施時,異常文件訪問監(jiān)控系統(tǒng)ADSAFA在實際系統(tǒng)中的部署;圖6為時間稀缺度t-Rarity閾值的設(shè)置。
具體實施例方式
參見圖1,本發(fā)明具體實施可基于一個異常文件訪問監(jiān)控系統(tǒng)ADSAFA(an AdaptiveDetection System for Abnormal File Accesses)進(jìn)行。在ADSAFA中,文件訪問傳感器同時連接被監(jiān)控系統(tǒng)、審計數(shù)據(jù)庫及預(yù)處理模塊,并通過預(yù)處理模塊與檢測模塊連接,檢測模塊與正常文件訪問模型互聯(lián),并通過報警模塊與安全控制終端和警報數(shù)據(jù)庫相連,安全控制終端和報警模塊通過人工或自動響應(yīng)機(jī)制與被監(jiān)控系統(tǒng)連接,更新模塊與正常文件訪問模型相連接,對正常模型進(jìn)行自動的或在安全控制終端命令下的強(qiáng)制修正。
所述的被監(jiān)控系統(tǒng)為個人計算機(jī)、各種網(wǎng)絡(luò)服務(wù)器(例如WWW、DNS、郵件、數(shù)據(jù)庫服務(wù)器等)及各種專用計算機(jī)(例如巨型機(jī)、大型機(jī)、專用工作站等)等配備有文件系統(tǒng)的計算機(jī)。
ADSAFA中的文件訪問傳感器負(fù)責(zé)實時記錄被監(jiān)控系統(tǒng)中產(chǎn)生的文件資源訪問請求,即對發(fā)生的每一個文件資源訪問請求記錄如下信息1)發(fā)生時間;
2)被訪問文件的絕對路徑名;3)描述訪問權(quán)限的訪問用戶真實ID、有效ID、真實組ID及有效組ID;4)訪問進(jìn)程的進(jìn)程ID及該進(jìn)程對應(yīng)的可執(zhí)行文件的絕對路徑名;5)訪問操作的操作類型、操作參數(shù)及操作結(jié)果(此次文件訪問是成功還是失敗)。
預(yù)處理模塊對記錄的文件資源訪問請求進(jìn)行預(yù)處理,生成文件訪問記錄,具體包括1)只使用訪問用戶有效ID描述訪問權(quán)限;2)只使用訪問進(jìn)程對應(yīng)的可執(zhí)行文件的絕對路徑名描述訪問進(jìn)程;3)同時使用操作類型,操作參數(shù)及操作結(jié)果描述訪問操作,得到一個擴(kuò)充的訪問操作屬性;4)生成文件訪問記錄,文件訪問記錄是具有如下格式的五元組發(fā)生時間,被訪問文件,訪問用戶,訪問進(jìn)程,訪問操作其中被訪問文件用被訪問文件的絕對路徑名描述;訪問用戶也即訪問權(quán)限用訪問用戶有效ID描述;訪問進(jìn)程用訪問進(jìn)程對應(yīng)的可執(zhí)行文件的絕對路徑名描述;訪問操作用3)中得到的擴(kuò)充訪問操作屬性描述。
文件訪問記錄中的訪問操作屬性是由文件訪問傳感器所記錄的文件資源訪問請求中包括的操作類型、操作參數(shù)及操作結(jié)果合并得到的。例如,一次文件訪問的操作類型是“打開文件”,操作參數(shù)是“寫模式”,操作結(jié)果是“成功”,經(jīng)過數(shù)據(jù)轉(zhuǎn)換后三者被合并成訪問操作“成功的寫模式文件打開”,該訪問操作與“失敗的寫模式文件打開”以及“成功的讀模式文件打開”是不同的訪問操作。
參見圖2,正常文件訪問模型為文件訪問關(guān)系樹,記錄了正常的文件訪問記錄中描述的文件訪問關(guān)系。這里文件訪問關(guān)系是指由文件訪問記錄所反映的被訪文件,訪問用戶、訪問進(jìn)程以及訪問操作的各種屬性值之間的組合關(guān)系。文件訪問關(guān)系樹是依據(jù)如下的數(shù)據(jù)結(jié)構(gòu)建立的1)基本記錄結(jié)構(gòu)為文件訪問結(jié)構(gòu)FAS(File Access Structure)和目錄訪問結(jié)構(gòu)DAS(Directory Access Structure)。
文件訪問結(jié)構(gòu)FAS分三種類型用戶文件訪問結(jié)構(gòu)u-FAS(FAS of users)
進(jìn)程文件訪問結(jié)構(gòu)p-FAS(FAS of processes)操作文件訪問結(jié)構(gòu)o-FAS(FAS of operations)目錄訪問結(jié)構(gòu)DAS分四種類型文件組成結(jié)構(gòu)f-DAS(DAS of files)用戶目錄訪問結(jié)構(gòu)u-DAS(DAS of users)進(jìn)程目錄訪問結(jié)構(gòu)p-DAS(DAS of processes)操作目錄訪問結(jié)構(gòu)o-DAS(DAS of operations)2)文件組成結(jié)構(gòu)f-DAS是一些由被訪文件或目錄組成的集合,每一個f-DAS都對應(yīng)于文件系統(tǒng)中的一個目錄,記錄了所有被訪問到的直接下屬于該目錄的文件或子目錄。根據(jù)f-DAS中的目錄元素同其它f-DAS的對應(yīng)關(guān)系,所有的f-DAS組成了一個樹形或森林形結(jié)構(gòu),該結(jié)構(gòu)被稱為文件樹,文件樹是文件訪問關(guān)系樹的第一個層次。
3)文件樹上的每一個文件或目錄(f-DAS中的元素)都有一個用戶文件訪問結(jié)構(gòu)u-FAS和進(jìn)程文件訪問結(jié)構(gòu)p-FAS,用于分別記錄訪問該文件或目錄的用戶或進(jìn)程以及一個操作文件訪問結(jié)構(gòu)O-FAS用于記錄訪問該文件或目錄時所使用的訪問操作。對于目錄元素,還另有一個用戶目錄訪問結(jié)構(gòu)u-DAS、一個進(jìn)程目錄訪問結(jié)構(gòu)p-DAS,分別為訪問該目錄下文件或子目錄的用戶或進(jìn)程的總的集合;以及一個操作目錄訪問結(jié)構(gòu)o-DAS,為訪問該目錄下文件或子目錄時所使用的訪問操作的總的集合。這些u-FAS、p-FAS、o-FAS、u-DAS、p-DAS和o-DAS組成了關(guān)系樹的第二個層次。
4)在第二個層次的FAS和DAS之下,還有組成文件訪問關(guān)系樹第三個層次的FAS和DAS在第二個層次u-FAS和p-FAS中的每一個用戶或進(jìn)程之下都有一個o-FAS用于記錄所屬用戶或進(jìn)程訪問相關(guān)文件或目錄時使用的操作;相關(guān)文件或目錄為第二個層次的u-FAS和p-FAS所屬文件或目錄;在第二個層次o-FAS中的每一個訪問操作之下都有一個u-FAS和一個p-FAS分別用于記錄使用所屬操作訪問相關(guān)文件或目錄的用戶或進(jìn)程。相關(guān)文件或目錄為第二個層次的o-FAS所屬文件或目錄;在第二個層次u-DAS和p-DAS中的每一個用戶或進(jìn)程之下都有一個o-DAS用于記錄所屬用戶或進(jìn)程對相關(guān)目錄下的文件或子目錄進(jìn)行訪問時使用的所有操作;相關(guān)目錄為第二個層次的u-DAS和p-DAS所屬目錄;在第二個層次o-DAS中的每一個訪問操作都有一個u-DAS和一個p-DAS分別用于記錄使用所屬操作訪問相關(guān)目錄下文件或子目錄的所有用戶或進(jìn)程。相關(guān)目錄為第二個層次的o-DAS所屬目錄。
5)每一個FAS或DAS都有一個時間稀缺度t-Rarity屬性及一個懲罰時間屬性。t-Rarity用于描述該FAS或DAS隨時間的變化情況;懲罰時間用以表示t-Rarity是否處于懲罰期及剩余懲罰時間的長短。
6)FAS或DAS中的每一個元素都有一個年齡屬性,一個記憶時間屬性以及一個最大記憶時間屬性。
年齡屬性記錄了該元素在文件訪問關(guān)系樹中已經(jīng)存在的時間;記憶時間屬性描述了該元素在文件訪問關(guān)系樹中還會存在的時間;最大記憶時間屬性限定了該元素的記憶時間屬性所能取到的最大值。
文件訪問關(guān)系樹中的每個FAS或DAS的時間稀缺度t-Rarity屬性值被用來描述該FAS或DAS的固定程度。在文件訪問關(guān)系樹記錄正常文件訪問記錄所描述的文件訪問關(guān)系的時候,可能會有新(原先不存在的)元素被加入到一些相關(guān)的FAS或DAS中,或者說一些FAS或DAS可能會被擴(kuò)充。t-Rarity是一個基于時間的啟發(fā)式因子,刻畫了對應(yīng)FAS或DAS擴(kuò)充的頻繁程度,更準(zhǔn)確的說是基于時間尺度刻畫了FAS或DAS擴(kuò)充事件的稀缺度(Rarity inTime)。在本發(fā)明中,t-Rarity的計算包括以下兩步1、懲罰時間的計算每次有新元素被加入到一個FAS或DAS中,該FAS或DAS的t-Rarity的增長進(jìn)入懲罰期,懲罰期長短由懲罰時間描述,且有懲罰時間=t-Rarity*懲罰系數(shù)懲罰系數(shù)為根據(jù)實際情況設(shè)定的大于零常數(shù),一般可取2.02、周期性的對時間稀缺度t-Rarity值進(jìn)行更新每隔一定時間對t-Rarity值進(jìn)行更新,更新時根據(jù)懲罰時間的屬性值,如果該值大于0,則將懲罰時間減1,而t-Rarity的增長被懲罰,該屬性值不變化;如果該值小于或等于0,則對FAS或DAS的t-Rarity屬性值加1,并將懲罰時間設(shè)置為0;參見圖3,當(dāng)FAS或DAS剛創(chuàng)建的時候,其對應(yīng)的t-Rarity屬性值為0。一個頻繁被擴(kuò)充的FAS或DAS的t-Rarity經(jīng)常處于懲罰期,始終比較小;而一個很少被擴(kuò)充的FAS或DAS的t-Rarity值則會隨時間逐漸增大。由于固定的FAS或DAS,一般不會在長時間內(nèi)被頻繁的擴(kuò)充,因此可以根據(jù)一段時間后t-Rarity的大小,將固定的FAS或DAS同固定程度較低的FAS或DAS區(qū)分開來。
ADSAFA中預(yù)先設(shè)定一固定程度閾值,t-Rarity屬性值大于該閾值的FAS或DAS,被認(rèn)為是固定的FAS或DAS并組成了文件訪問關(guān)系樹的固定部分;文件訪問關(guān)系樹中其它的FAS或DAS被認(rèn)為是不穩(wěn)定的FAS或DAS,組成了文件訪問關(guān)系樹的變化部分。
檢測模塊根據(jù)文件訪問關(guān)系樹對文件訪問記錄進(jìn)行分析,如果發(fā)現(xiàn)異常行為就會觸發(fā)報警模塊通過安全控制終端向安全管理員發(fā)出警告;如果未發(fā)現(xiàn)文件訪問記錄有異常,便在文件訪問關(guān)系樹中記錄下該文件訪問記錄中描述的文件訪問關(guān)系。
檢測模塊根據(jù)文件訪問關(guān)系樹對文件訪問記錄進(jìn)行分析,包括以下步驟1)檢查被訪文件絕對路徑上的各目錄以及被訪問文件自身是否被記錄在文件訪問關(guān)系樹中與它們各自的父目錄對應(yīng)的f-DAS中;2)檢查訪問用戶是否被記錄在位于文件訪問關(guān)系樹第二個層次的相關(guān)u-FAS或u-DAS中。相關(guān)的u-FAS是指直接下屬于被訪文件的u-FAS;相關(guān)u-DAS是指直接下屬于被訪文件絕對路徑上各目錄的u-DAS;3)檢查訪問進(jìn)程是否被記錄在位于文件訪問關(guān)系樹第二個層次的相關(guān)p-FAS或p-DAS中。相關(guān)的p-FAS是指直接下屬于被訪文件的p-FAS;相關(guān)p-DAS是指直接下屬于被訪文件絕對路徑上各目錄的p-DAS;4)檢查訪問操作是否被記錄在位于文件訪問關(guān)系樹第二個層次的相關(guān)o-FAS或o-DAS中。相關(guān)的o-FAS是指直接下屬于被訪文件的o-FAS;相關(guān)o-DAS是指直接下屬于被訪文件絕對路徑上各目錄的o-DAS;5)檢查訪問用戶是否被記錄在位于文件訪問關(guān)系樹第三個層次的相關(guān)u-FAS或u-DAS中。相關(guān)u-FAS指作為第4步中相關(guān)o-FAS中元素的本次訪問操作下屬的u-FAS;相關(guān)u-DAS指作為第4步中相關(guān)o-DAS中元素的本次訪問操作下屬的u-DAS;
6)檢查訪問進(jìn)程是否被記錄在位于文件訪問關(guān)系樹第三個層次的相關(guān)p-FAS或p-DAS中。相關(guān)p-FAS指作為第4步中相關(guān)o-FAS中元素的本次訪問操作下屬的p-FAS;相關(guān)p-DAS指作為第4步中相關(guān)o-DAS中元素的本次訪問操作下屬的p-DAS;7)檢查訪問操作是否被記錄在位于文件訪問關(guān)系樹第三個層次的相關(guān)o-FAS或o-DAS中。相關(guān)o-FAS指作為第2步中相關(guān)u-FAS中元素的本次訪問用戶下屬的o-FAS,或者作為第3步中相關(guān)p-FAS中元素的本次訪問進(jìn)程下屬的o-FAS;相關(guān)o-DAS指作為第2步中相關(guān)u-DAS中元素的本次訪問用戶下屬的o-DAS,或者作為第3步中相關(guān)p-DAS中元素本次訪問進(jìn)程下屬的o-DAS。
上述步驟涉及的FAS或DAS被稱為與本次文件訪問記錄相關(guān)的FAS或DAS。如果文件訪問記錄的屬性值在相關(guān)的FAS或DAS中不存在,則稱此文件訪問記錄同這些FAS或DAS不相符。當(dāng)前文件訪問記錄的異常度定義為同其不相符的FAS或DAS的t-Rarity的最大值。如果文件訪問記錄的異常度大于固定程度閾值,即該記錄同固定的FAS或DAS不相符,則該條文件訪問記錄被標(biāo)記為異常。否則,則該條文件訪問記錄被標(biāo)記為正常。
檢測模塊在文件訪問關(guān)系樹中記錄下文件訪問記錄中描述的文件訪問關(guān)系,包括以下步驟1)檢查當(dāng)前被訪問文件絕對路徑上的各目錄及被訪文件本身,是否分別存在于與它們各自的父目錄對應(yīng)的f-DAS中。如果已經(jīng)存在,則激活對應(yīng)f-DAS中已經(jīng)存在的元素;如果不存在,則將該目錄或文件加入對應(yīng)的f-DAS中;當(dāng)前被訪文件指記錄于該條文件訪問記錄中的被訪文件屬性值;2)檢查當(dāng)前訪問用戶,是否存在于相關(guān)u-FAS及相關(guān)u-DAS中。如果已經(jīng)存在,則激活對應(yīng)u-FAS或u-DAS中已經(jīng)存在的元素;如果不存在,則將該訪問用戶加入對應(yīng)的u-FAS或u-DAS中;當(dāng)前訪問用戶指記錄于該條文件訪問記錄中的訪問用戶屬性值;3)檢查當(dāng)前訪問進(jìn)程,是否存在于相關(guān)p-FAS及相關(guān)p-DAS中。如果已經(jīng)存在,則激活對應(yīng)p-FAS或p-DAS中已經(jīng)存在的元素;如果不存在,則將該訪問進(jìn)程加入對應(yīng)的p-FAS或p-DAS中;當(dāng)前訪問進(jìn)程指記錄于該條文件訪問記錄中的訪問進(jìn)程的屬性值;4)檢查當(dāng)前訪問操作,是否存在于相關(guān)o-FAS及相關(guān)o-DAS中。如果已經(jīng)存在,則激活對應(yīng)o-FAS或o-DAS中已經(jīng)存在的元素;如果不存在,則將該訪問操作加入對應(yīng)的o-FAS或o-DAS中;當(dāng)前訪問操作指記錄于該條文件訪問記錄中的訪問操作的屬性值。
在上述步驟中,激活FAS或DAS中已經(jīng)存在的元素是指將該元素的記憶時間屬性值重新設(shè)定為該元素的最大記憶時間屬性值。將新元素加入對應(yīng)的FAS或DAS是指進(jìn)行如下操作1)該元素加入對應(yīng)FAS或DAS表示的集合中;2)新元素的相關(guān)屬性值設(shè)置如下最大記憶時間=所屬FAS或DAS的t-Rarity屬性值*記憶強(qiáng)度系數(shù)+基本記憶時間;記憶時間=最大記憶時間年齡=0其中記憶強(qiáng)度系數(shù)、基本記憶時間為大于零常數(shù),根據(jù)實際需要設(shè)定,記憶強(qiáng)度系數(shù)一般可取為2.0,基本記憶時間一般可取為24小時;3)被加入新元素的FAS或DAS的t-Rarity進(jìn)入懲罰期并且重新設(shè)定該FAS或DAS的懲罰時間屬性值懲罰時間=t-Rarity*懲罰系數(shù)更新模塊負(fù)責(zé)周期性的更新文件訪問關(guān)系樹各部分的t-Rarity尺度值、其它相關(guān)參數(shù)及刪除文件訪問關(guān)系樹中記錄的過時文件訪問關(guān)系,具體包括如下操作1)判斷文件訪問記錄中的發(fā)生時間屬性值與上次更新時間之差是否大于預(yù)先設(shè)定的更新周期,如果是則進(jìn)行步驟2)、3)、4),并把上次更新時間設(shè)置為當(dāng)前的發(fā)生時間屬性值;如果否,則什么也不做;2)檢查文件訪問關(guān)系樹中每個FAS或DAS的懲罰時間屬性值,如果該值大于0,則將懲罰時間減1;如果該值小于或等于0,則對FAS或DAS的t-Rarity屬性值加1,并將懲罰時間設(shè)置為0;3)對所有FAS或DAS中元素的年齡,記憶時間及最大記憶時間進(jìn)行更新對年齡值加1;對記憶時間減1;最大記憶時間設(shè)定為MAX(年齡值,所屬FAS或DAS的t-Rarity屬性值)×記憶強(qiáng)度系數(shù)+基本記憶時間;
4)檢查所有FAS或DAS中元素的記憶時間屬性值,如果記憶時間小于0,則將該元素從其所屬FAS或DAS中刪除,并依據(jù)如下情況刪除該元素下屬的FAS或DASa)如果被刪除元素位于文件訪問關(guān)系樹第三個層次的FAS或DAS中,則無下屬FAS或DAS被刪除;b)如果被刪除元素位于文件訪問關(guān)系樹第二個層次的FAS或DAS中,則刪除下屬于該元素的文件訪問關(guān)系樹第三個層次中的FAS或DAS及其所屬元素;c)如果被刪除元素為文件,則刪除下屬于該文件的所有第二個層次的FAS及其所屬元素;同時根據(jù)a),b)刪除所有被刪除元素的下屬FAS;d)如果被刪除元素為目錄,則刪除對應(yīng)于該目錄的f-DAS、下屬于該目錄的所有第二個層次的FAS和DAS及其這些FAS和DAS中包含的所屬元素;同時根據(jù)a),b),c),d)刪除所有被刪除元素的下屬FAS或DAS。
報警模塊向安全管理員發(fā)出的警告中包括文件訪問傳感器所采集到的關(guān)于此次異常文件資源訪問請求的所有信息文件訪問發(fā)生時間,被訪文件絕對路徑名,訪問用戶的真實ID、有效ID、真實用戶組ID、有效用戶組ID,訪問進(jìn)程的進(jìn)程ID、進(jìn)程可執(zhí)行文件的絕對路徑名,操作類型,操作參數(shù),操作結(jié)果;警告中還包括ADSAFA給出的此次文件訪問的四個子異常度值被訪文件異常度、訪問用戶異常度、訪問進(jìn)程異常度、訪問操作異常度,它們分別為與此次文件訪問相沖突的t-Rarity值最大的f-DAS,u-FAS(或u-DAS),p-FAS(或p-DAS),o-FAS(或o-DAS)的t-Rarity值(或者為0表示沒有沖突的情況)。
安全控制終端將ADSAFA的報警結(jié)果呈現(xiàn)給管理員,并提供多種方式實現(xiàn)報警信息的查詢與關(guān)聯(lián),使報警信息的分析非常容易。安全控制終端還使安全管理員可以對ADSAFA進(jìn)行管理,通過人工的方式使文件訪問關(guān)系樹記錄下誤判的文件訪問記錄中描述的正常文件訪問關(guān)系。
以下結(jié)合ADSAFA處理正常及異常文件訪問事件的過程對本發(fā)明作進(jìn)一步的詳細(xì)說明。
2.1.1之前版本的OpenSSH存在一個嚴(yán)重的安全漏洞(http//www.securityfocus.com/bid/3614),OpenSSH通過login對用戶進(jìn)行認(rèn)證時會使用用戶自定義的環(huán)境變量。這樣,攻擊者通過將LD_PRELOAD環(huán)境變量設(shè)置為一個木馬共享函數(shù)庫,就可以將Login設(shè)置用戶權(quán)限時使用的setuid函數(shù)重載,從而使以普通用戶身份登錄系統(tǒng)的攻擊者能夠擁有管理員的權(quán)限訪問受害計算機(jī)。該攻擊的步驟如下1).攻擊者小李將一個木馬共享函數(shù)庫libroot.so安裝到計算機(jī)系統(tǒng)A中/home/li目錄下;2).攻擊者小李在/home/li/.ssh/authorized_keys2中將LD_PRELOAD環(huán)境變量設(shè)為/home/li/libroot.so3).小李通過OpenSSH重新登錄,由于/sbin/login根據(jù)用戶自定義的環(huán)境變量LD_PRELOAD加載了庫函數(shù)/home/li/libroot.so,login進(jìn)程所使用的setuid函數(shù)被libroot.so中的setuid重載了4).身份驗證成功后,/sbin/login給了小李一個具有root權(quán)限的shell(/bin/bash)。(正常情況下,/sbin/login運(yùn)行/bin/bash時,訪問用戶有效ID應(yīng)已經(jīng)通過setuid函數(shù)設(shè)置為小李)表1是與以上各步對應(yīng)的文件訪問操作表1 OpenSSH攻擊中的文件訪問事件
雖然上述四步組成了整個攻擊過程,但攻擊第1步小李在自己的目錄中創(chuàng)建文件和第4步/sbin/login以root身份運(yùn)行一個shell,僅從文件訪問操作自身來看并無任何異常,可以認(rèn)為是正常是的文件訪問請求。而與第2、3兩步相關(guān)的文件訪問操作則表現(xiàn)出比較明顯的異常性普通使用者一般不會改動sshd的配置文件,/sbin/login也通常只在固定的庫函數(shù)目錄下加載函數(shù)庫。下面以ADSAFA對第1步和第3步的文件訪問事件的處理為例,對本發(fā)明處理正常和異常文件訪問記錄的過程作具體說明。
參見圖4,文件訪問傳感器記錄下的小李第1步操作時產(chǎn)生的文件資源訪問請求如下發(fā)生時間2003.11.20 2:12:23,被訪問文件的絕對路徑名/home/li/libroot.so,訪問用戶真實ID、有效ID、真實組ID及有效組ID均為小李,訪問進(jìn)程的進(jìn)程ID113,該進(jìn)程對應(yīng)的可執(zhí)行文件的絕對路徑名/bin/bash,操作類型打開、操作參數(shù)寫模式,操作結(jié)果成功。
預(yù)處理模塊生成文件訪問記錄2003.11.20 2:12:23,/home/li/libroot.so,小李,/bin/bash,成功的創(chuàng)建打開文件檢測模塊對此記錄進(jìn)行分析,發(fā)現(xiàn)其同文件訪問關(guān)系樹中下屬于目錄“/home/li”的f-DAS不相符,即文件libroot.so未被記錄在“/home/li”對應(yīng)的f-DAS中,顯然文件訪問關(guān)系樹中也不會存在下屬于“/home/li/libroot.so”的FAS。但由于用戶通常都會在自己的目錄下創(chuàng)建一些文件,/home/li目錄對應(yīng)的f-DAS的t-Rarity值不會太高,不妨設(shè)為100。而本次文件訪問行為除了訪問新的文件之外,其它方面反映出的文件訪問關(guān)系均均為正常的訪問關(guān)系,應(yīng)早已被記錄在文件訪問關(guān)系樹中,因此本次文件訪問的異常度即為100。一般情況下,ADSAFA固定程度閾值被設(shè)為240,本次文件訪問的異常度小于固定程度閾值,因此ADSAFA會認(rèn)定本次文件訪問為正常,并將本次文件訪問記錄所描述的文件訪問關(guān)系記錄于文件訪問關(guān)系樹中將“l(fā)ibroot.so”加入“/home/li”對應(yīng)的f-DAS,并且將“小李”、“/bin/bash”、“成功的創(chuàng)建打開文件”分別加入為“l(fā)ibroot.so”新建的u-FAS、p-FAS和o-FAS中。同時,已經(jīng)記錄在與該文件訪問相關(guān)DAS(如目錄“/”,“/home”及“/home/li”下屬的u-DAS,p-DAS及o-DAS)中的元素“小李”,“/bin/bash”及“成功的創(chuàng)建打開文件”會被激活。相關(guān)f-DAS中路徑“/home/li/”上的目錄“home”和“l(fā)i”會被激活。
接下來ADSAFA中的更新模塊會檢查本次文件訪問記錄中的發(fā)生時間與上次更新時間之差是否超過了更新周期,如果是則更新文件訪問關(guān)系樹各部分的t-Rarity尺度值、其它相關(guān)參數(shù)及刪除文件訪問關(guān)系樹中記錄的過時文件訪問關(guān)系,并將上次更新時間設(shè)置為本次文件訪問記錄中的發(fā)生時間;否則什么也不做,并結(jié)束本次文件訪問記錄的處理。
ADSAFA對攻擊第3步涉及的文件資源訪問請求的處理,同上述對第1步的相關(guān)處理類似。文件訪問傳感器采集到的與該次文件資源訪問請求經(jīng)預(yù)處理模塊處理后得到如下記錄2003.11.20 2:12:23,/home/li/libroot.so,Root,/sbin/login,成功的內(nèi)存映射檢測模塊對該事件進(jìn)行分析,由于通常情況下進(jìn)程“/sbin/login”只會對“/usr/lib”目錄下的文件進(jìn)行“內(nèi)存映射”操作,文件訪問關(guān)系樹中記錄進(jìn)程“/sbin/login”在“/home”目錄下行為的任何o-FAS或o-DAS中都不會出現(xiàn)訪問操作“成功的內(nèi)存映射”,而且由于進(jìn)程“/sbin/login”的正常運(yùn)行模式規(guī)范,描述進(jìn)程“/sbin/login”對目錄“/home”及“/home/li”總體訪問行為的兩個o-DAS的t-Rarity值會很大,在這里我們可假設(shè)這兩個值均為480。本次文件訪問記錄與這兩個o-DAS不相符,其異常度至少為480,高于設(shè)定固定程度閾值240,因此ADSAFA會認(rèn)定該次文件訪問為異常,并觸發(fā)報警模塊產(chǎn)生報警。這樣攻擊最關(guān)鍵的第三步就會被ADSAFA成功檢測出來。
以下是基于ADSAFA實施本發(fā)明的一些具體細(xì)節(jié)表2、表3、表4為本實施例所采用的具體實現(xiàn)技術(shù)及基本設(shè)定及參數(shù)設(shè)置。
表2文件訪問數(shù)據(jù)的采集機(jī)制
表3 UNIX系統(tǒng)中重要的文件訪問操作
表4 ADSAFA的基本參數(shù)設(shè)置
ADSAFA的實際部署參照圖5,在分別以Linux、Solaris和Windows為操作系統(tǒng)的三臺服務(wù)器上安裝ADSAFA,對這些服務(wù)器中的文件訪問行為進(jìn)行安全監(jiān)控,檢測的結(jié)果上報給位于局域網(wǎng)內(nèi)另一臺服務(wù)器上的安全控制終端。
圖5所示的安裝于A、B、C三臺服務(wù)器中的ADSAFA,除文件傳感器因為會從操作系統(tǒng)中采集數(shù)據(jù),需要針對具體的操作系統(tǒng)專門設(shè)計之外,其它部分在功能和結(jié)構(gòu)上都是與操作系統(tǒng)無關(guān)的。表2是文件訪問傳感器在各種操作系統(tǒng)中采集文件訪問數(shù)據(jù)所使用的機(jī)制。表3是ADSAFA在UNIX系統(tǒng)(包括Solaris和Linux)中所關(guān)注的重要文件訪問操作。ADSAFA啟動后,即進(jìn)入檢測模式,并同時根據(jù)從被監(jiān)控系統(tǒng)中觀察到的文件訪問行為,安全可靠的自動建立正常行為模型以及不斷的對模型進(jìn)行實時更新,在此過程中基本上不需要人為的干涉。ADSAFA中基本參數(shù)的設(shè)置如表4所示。
t-Rarity閾值是ADSAFA實現(xiàn)自適應(yīng)學(xué)習(xí)和異常檢測的關(guān)鍵參數(shù),文件訪問關(guān)系樹中t-Rarity值超過該閾值的FAS或DAS被認(rèn)為是固定的,組成文件訪問關(guān)系樹的固定部分,并作為檢測異常文件訪問的依據(jù),同時ADSAFA只允許那些非固定的FAS和DAS在線進(jìn)行自適應(yīng)學(xué)習(xí)(記錄下新出現(xiàn)的文件訪問關(guān)系)。在ADSAFA啟動的初期,文件訪問關(guān)系樹中所有FAS或DAS的t-Rarity屬性值都比較小,此時只能根據(jù)t-Rarity值增長的快慢,粗略區(qū)分固定與非固定的FAS或DAS,因此檢測系統(tǒng)投入使用的頭14天,t-Rarity閾值被設(shè)置成是隨時間線性增長的,線性系數(shù)為0.7。之后,固定與非固定的FAS或DAS的t-Rarity值差別日趨顯著,從第14天起t-Rarity閾值被設(shè)置為一個固定值240(單位小時)。t-Rarity閾值的選取如圖6所示。
ADSAFA檢測到異常行為,會通過網(wǎng)絡(luò)實時上報給位于另一臺服務(wù)器上的安全控制終端,以便安全管理員對可能發(fā)生的攻擊及時作出處置。安全控制終端提供多種方式對這些報警信息進(jìn)行關(guān)聯(lián),使報警信息的分析非常容易。
實施效果嚴(yán)重威脅系統(tǒng)安全的攻擊行為一般都涉及異常的文件訪問行為,如網(wǎng)絡(luò)黑客利用安全漏洞獲得本地系統(tǒng)直接訪問權(quán)限,內(nèi)部人員數(shù)據(jù)竊取和破壞行為等等?;趯嶋H系統(tǒng)中采集得到的大量正常行為數(shù)據(jù),以及系統(tǒng)選擇的數(shù)十種典型的攻擊行為,對本發(fā)明方法進(jìn)行的測試結(jié)果表明本發(fā)明方法可以以0.005%的誤報率檢測出90%以上攻擊。而對于同樣的數(shù)據(jù),哥倫比亞大學(xué)的FWRAP模型檢測出90%的攻擊時的誤報率為7%??紤]到實際系統(tǒng)中每天的文件訪問事件數(shù)一般在100萬條左右,ADSAFA誤報水平基本可以控制在每天100條以下,而FWRAP則每天會產(chǎn)生數(shù)萬條誤報。
此外實驗還表明,在正常情況下,實現(xiàn)的ADSAFA原型系統(tǒng)對CPU的占用在2%左右,內(nèi)存消耗在20-30MB之間,可以為大多數(shù)實際系統(tǒng)所接受。而FWRAP僅內(nèi)存消耗就會超過400MB。
實施例中的Solaris系統(tǒng)(圖6中的服務(wù)器A)是中國教育科研網(wǎng)(CERNET)西北網(wǎng)絡(luò)中心的一臺核心服務(wù)器,上面運(yùn)行了許多重要的服務(wù)。ADSAFA在該服務(wù)器上完成了長達(dá)半年時間的試運(yùn)行。在此期間,ADSAFA多次成功檢測出WWW cgi掃描,郵件服務(wù)非法使用等異常行為,產(chǎn)生的虛警數(shù)量基本在每天100個左右(該服務(wù)器每天產(chǎn)生的正常文件訪問事件數(shù)量超過200萬個)。而且在試運(yùn)行期間,ADSAFA沒有對該服務(wù)器的正常運(yùn)行造成任何不良影響。
權(quán)利要求
1.一種異常文件訪問自適應(yīng)檢測方法,包括實時記錄計算機(jī)系統(tǒng)中產(chǎn)生的文件資源訪問請求,其特征在于還包括以下步驟1)對記錄的文件訪問資源請求進(jìn)行預(yù)處理,生成文件訪問記錄;2)用文件訪問關(guān)系樹記錄正常的文件訪問記錄中描述的文件訪問關(guān)系,并使用時間稀缺度t-Rarity,刻畫文件訪問關(guān)系樹各部分隨時間的變化情況;3)根據(jù)時間稀缺度t-Rarity,將文件訪問關(guān)系樹分為固定和變化的兩部分;4)根據(jù)文件訪問關(guān)系樹,對文件訪問記錄進(jìn)行分析當(dāng)出現(xiàn)所描述的文件訪問關(guān)系與文件訪問關(guān)系樹固定部分不相符的文件訪問記錄時,則標(biāo)記為異常;相符合的文件訪問記錄則被標(biāo)記為正常,同時文件訪問關(guān)系樹會記錄下該記錄所描述的文件訪問關(guān)系;5)將異常的文件訪問記錄上報給安全管理員;6)周期性的更新文件訪問關(guān)系樹各部分的時間稀缺度t-Rarity、相關(guān)參數(shù)并刪除文件訪問關(guān)系樹中記錄的過時文件訪問關(guān)系。
2.根據(jù)權(quán)利要求1所述的異常文件訪問自適應(yīng)檢測方法,其特征在于對記錄的文件訪問資源請求進(jìn)行預(yù)處理是指1)只使用訪問用戶有效ID描述訪問權(quán)限;2)只使用訪問進(jìn)程對應(yīng)的可執(zhí)行文件的絕對路徑名描述訪問進(jìn)程;3)同時使用操作類型,操作參數(shù)及操作結(jié)果描述訪問操作,得到一個擴(kuò)充的訪問操作屬性;4)生成具有如下格式的文件訪問記錄發(fā)生時間,被訪問文件,訪問用戶,訪問進(jìn)程,訪問操作其中被訪問文件用被訪問文件的絕對路徑名描述;訪問用戶也即訪問權(quán)限用訪問用戶的有效ID描述;訪問進(jìn)程用訪問進(jìn)程對應(yīng)的可執(zhí)行文件的絕對路徑名描述;訪問操作用3)中的擴(kuò)充訪問操作屬性描述。文件訪問記錄所反映的被訪文件,訪問用戶、訪問進(jìn)程以及訪問操作的各種屬性值之間的組合關(guān)系被稱為文件訪問關(guān)系。
3.根據(jù)權(quán)利要求1所述的異常文件訪問自適應(yīng)檢測方法,其特征在于文件訪問關(guān)系樹是指記錄文件訪問關(guān)系的下述數(shù)據(jù)結(jié)構(gòu),1)基本記錄結(jié)構(gòu)為文件訪問結(jié)構(gòu)FAS和目錄訪問結(jié)構(gòu)DAS,其中文件訪問結(jié)構(gòu)FAS分三種類型用戶正常訪問結(jié)構(gòu)u-FAS;進(jìn)程正常訪問結(jié)構(gòu)p-FAS;操作正常訪問結(jié)構(gòu)o-FAS;目錄訪問結(jié)構(gòu)DAS分四種類型文件組成結(jié)構(gòu)f-DAS;用戶目錄訪問結(jié)構(gòu)u-DAS;進(jìn)程目錄訪問結(jié)構(gòu)p-DAS;操作目錄訪問結(jié)構(gòu)o-DAS;2)f-DAS是一些由被訪文件或目錄組成的集合,每一個f-DAS都對應(yīng)于文件系統(tǒng)中的一個目錄,記錄了所有被訪問到的直接下屬于該目錄的文件或子目錄,根據(jù)f-DAS中的目錄元素同其它f-DAS的對應(yīng)關(guān)系,所有的f-DAS組成了一個樹形或森林形結(jié)構(gòu),該結(jié)構(gòu)被稱為文件樹,文件樹是文件訪問關(guān)系樹的第一個層次;3)文件樹上的每一個文件或目錄(f-DAS中的元素)都有一個u-FAS和p-FAS用于分別記錄訪問該文件或目錄的用戶或進(jìn)程以及一個o-FAS用于記錄訪問該文件或目錄時所使用的訪問操作;對于目錄元素,還另有一個u-DAS及一個p-DAS,分別為訪問該目錄下文件或子目錄的用戶或進(jìn)程的總的集合;以及一個o-DAS,為訪問該目錄下文件或子目錄時所使用的訪問操作的總的集合;這些u-FAS、p-FAS、o-FAS、u-DAS、p-DAS和o-DAS組成了關(guān)系樹的第二個層次;4)在第二個層次的FAS和DAS之下,還有組成文件訪問關(guān)系樹第三個層次的FAS和DAS在第二個層次u-FAS和p-FAS中的每一個用戶或進(jìn)程之下都有一個o-FAS用于記錄所屬用戶或進(jìn)程訪問相關(guān)文件或目錄時使用的操作;相關(guān)文件或目錄為第二個層次的u-FAS和p-FAS所屬文件或目錄;在第二個層次o-FAS中的每一個訪問操作之下都有一個u-FAS和一個p-FAS分別用于記錄使用所屬操作訪問相關(guān)文件或目錄的用戶或進(jìn)程。相關(guān)文件或目錄為第二個層次的o-FAS所屬文件或目錄;在第二個層次u-DAS和p-DAS中的每一個用戶或進(jìn)程之下都有一個o-DAS用于記錄所屬用戶或進(jìn)程對相關(guān)目錄下的文件或子目錄進(jìn)行訪問時使用的所有操作;相關(guān)目錄為第二個層次的u-DAS和p-DAS所屬目錄;在第二個層次o-DAS中的每一個訪問操作都有一個u-DAS和一個p-DAS分別用于記錄使用所屬操作訪問相關(guān)目錄下文件或子目錄的所有用戶或進(jìn)程。相關(guān)目錄為第二個層次的o-DAS所屬目錄。5)每一個FAS或DAS都有一個t-Rarity屬性及一個懲罰時間屬性,t-Rarity用于描述該FAS或DAS隨時間的變化情況;懲罰時間用以表示t-Rarity是否處于懲罰期及剩余懲罰時間的長短;6)FAS或DAS中的每一個元素都有一個年齡屬性,一個記憶時間屬性以及一個最大記憶時間屬性年齡屬性記錄了該元素已經(jīng)在文件訪問關(guān)系樹中存在的時間;記憶時間屬性描述了該元素還能在文件訪問關(guān)系樹中存在時間;最大記憶時間屬性限定了該元素的記憶時間屬性所能取到的最大值。
4.根據(jù)權(quán)利要求1所述的異常文件訪問自適應(yīng)檢測方法,其特征在于用文件訪問關(guān)系樹記錄文件訪問記錄中描述的文件訪問關(guān)系是指將一條文件訪問記錄中的信息記錄到文件訪問關(guān)系樹中相關(guān)的文件訪問結(jié)構(gòu)FAS和目錄訪問結(jié)構(gòu)DAS中。
5.根據(jù)權(quán)利要求4所述的異常文件訪問自適應(yīng)檢測方法,其特征在于所述的文件訪問關(guān)系樹中與一條文件訪問記錄相關(guān)的文件訪問結(jié)構(gòu)FAS和目錄訪問結(jié)構(gòu)DAS是指1)文件訪問關(guān)系樹第一個層次中對應(yīng)于被訪文件絕對路徑上的各目錄的f-DAS;2)文件訪問關(guān)系樹第二個層次中,直接下屬于被訪文件的u-FAS和直接下屬于被訪文件絕對路徑上各目錄的u-DAS;3)文件訪問關(guān)系樹第二個層次中直接下屬于被訪文件的p-FAS和直接下屬于被訪文件絕對路徑上各目錄的p-DAS;4)文件訪問關(guān)系樹第二個層次中直接下屬于被訪文件的o-FAS和直接下屬于被訪文件絕對路徑上各目錄的o-DAS;5)文件訪問關(guān)系樹第三個層次,4)所述o-FAS中當(dāng)前訪問操作下屬的u-FAS;4)所述o-DAS中當(dāng)前訪問操作下屬的u-DAS;當(dāng)前訪問操作指記錄于該條文件訪問記錄中的訪問操作屬性值;6)文件訪問關(guān)系樹第三個層次,4)所述o-FAS中當(dāng)前訪問操作下屬的p-FAS;4)所述o-DAS中當(dāng)前訪問操作下屬的p-DAS;當(dāng)前訪問操作指記錄于該條文件訪問記錄中的訪問操作屬性值;7)文件訪問關(guān)系樹第三個層次,2)所述u-FAS中當(dāng)前訪問用戶下屬的o-FAS;4)所述u-DAS中當(dāng)前訪問用戶下屬的o-DAS;當(dāng)前訪問用戶指記錄于該條文件訪問記錄中的訪問用戶屬性值;8)文件訪問關(guān)系樹第三個層次,3)所述p-FAS中當(dāng)前訪問進(jìn)程下屬的o-FAS;4)所述p-DAS中當(dāng)前訪問進(jìn)程下屬的o-DAS;當(dāng)前訪問進(jìn)程指記錄于該條文件訪問記錄中的訪問進(jìn)程屬性值。
6.根據(jù)權(quán)利要求4所述的異常文件訪問自適應(yīng)檢測方法,其特征在于所述的將一條文件訪問記錄中的信息記錄到文件訪問關(guān)系樹中相關(guān)的文件訪問結(jié)構(gòu)FAS和目錄訪問結(jié)構(gòu)DAS中,包括以下步驟1)檢查當(dāng)前被訪問文件絕對路徑上的各目錄及被訪文件本身,是否分別存在于與它們各自的父目錄對應(yīng)的f-DAS中;如果已經(jīng)存在,則激活對應(yīng)f-DAS中已經(jīng)存在的元素;如果不存在,則將該目錄或文件加入對應(yīng)的f-DAS中;當(dāng)前被訪文件指記錄于該條文件訪問記錄中的被訪文件屬性值;2)檢查當(dāng)前訪問用戶,是否存在于權(quán)利要求5所描述的相關(guān)u-FAS及相關(guān)u-DAS中;如果已經(jīng)存在,則激活對應(yīng)u-FAS或u-DAS中已經(jīng)存在的元素;如果不存在,則將該訪問用戶加入對應(yīng)的u-FAS或u-DAS中;當(dāng)前訪問用戶指記錄于該條文件訪問記錄中的訪問用戶屬性值;3)檢查當(dāng)前訪問進(jìn)程,是否存在于權(quán)利要求5所描述的相關(guān)p-FAS及相關(guān)p-DAS中;如果已經(jīng)存在,則激活對應(yīng)p-FAS或p-DAS中已經(jīng)存在的元素;如果不存在,則將該訪問進(jìn)程加入對應(yīng)的p-FAS或p-DAS中;當(dāng)前訪問進(jìn)程指記錄于該條文件訪問記錄中的訪問進(jìn)程的屬性值;4)檢查當(dāng)前訪問操作,是否存在于權(quán)利要求5所描述的相關(guān)o-FAS及相關(guān)o-DAS中。如果已經(jīng)存在,則激活對應(yīng)o-FAS或o-DAS中已經(jīng)存在的元素;如果不存在,則將該訪問操作加入對應(yīng)的o-FAS或o-DAS中;當(dāng)前訪問操作指記錄于該條文件訪問記錄中的訪問操作的屬性值。
7.根據(jù)權(quán)利要求6所述的異常文件訪問自適應(yīng)檢測方法,其特征在于所述的激活文件訪問結(jié)構(gòu)FAS或目錄訪問結(jié)構(gòu)DAS中已經(jīng)存在的元素是指將該元素的記憶時間屬性值重新設(shè)定為該元素的最大記憶時間屬性值。
8.根據(jù)權(quán)利要求6所述的異常文件訪問自適應(yīng)檢測方法,其特征在于所述的將新元素加入對應(yīng)的FAS或DAS包括如下步驟1)將該元素加入對應(yīng)FAS或DAS表示的集合中;2)新元素的相關(guān)屬性值設(shè)置如下最大記憶時間=所屬FAS或DAS的t-Rarity屬性值*記憶強(qiáng)度系數(shù)+基本記憶時間;記憶時間=最大記憶時間年齡=0其中記憶強(qiáng)度系數(shù)、基本記憶時間為大于零常數(shù),根據(jù)實際需要設(shè)定;3)被加入新元素的FAS或DAS的t-Rarity進(jìn)入懲罰期并且重新設(shè)定該FAS或DAS的懲罰時間屬性值懲罰時間=t-Rarity*懲罰系數(shù)其中懲罰系數(shù)為大于零常數(shù),根據(jù)實際需要設(shè)定。
9.根據(jù)權(quán)利要求1所述的異常文件訪問自適應(yīng)檢測方法,其特征在于使用時間稀缺度t-Rarity,刻畫文件訪問關(guān)系樹各部分隨時間的變化情況是指用文件訪問關(guān)系樹中各個FAS或DAS的t-Rarity屬性值描述該FAS或DAS中的元素組成是否相對固定,對于一給定的t-Rarity閾值,大于或等于該閾值的t-Rarity屬性值表示對應(yīng)FAS或DAS中的元素組成固定;小于該閾值的t-Rarity屬性值表示對應(yīng)FAS或DAS中的元素組成不固定。
10.根據(jù)權(quán)利要求1所述的異常文件訪問自適應(yīng)檢測方法,其特征在于根據(jù)時間稀缺度t-Rarity,文件訪問關(guān)系樹被分為固定和變化的兩部分是指權(quán)利要求9中的依據(jù)一t-Rarity閾值,按t-Rarity屬性值的大小將所有FAS或DAS分為固定和非固定的兩部分,固定的FAS或DAS并組成了文件訪問關(guān)系樹的固定部分;非固定的FAS或DAS,組成了文件訪問關(guān)系樹的變化部分;并且,1)文件訪問記錄所描述的文件訪問關(guān)系與文件訪問關(guān)系樹固定部分不相符是指該條文件訪問記錄與文件訪問關(guān)系樹中某些與該條文件訪問記錄相關(guān)的FAS或DAS不相符同時這些FAS或DAS中包括權(quán)利要求9中所描述的固定FAS或DAS;相關(guān)FAS或DAS指權(quán)利要求5描述的文件訪問關(guān)系樹中與該條文件訪問記錄相關(guān)的FAS或DAS;2)文件訪問記錄所描述的文件訪問關(guān)系與文件訪問關(guān)系樹固定部分相符是指與該條文件訪問記錄不相符的相關(guān)FAS或DAS中不包括權(quán)利要求9中所描述的固定FAS或DAS;相關(guān)FAS或DAS指權(quán)利要求5描述的文件訪問關(guān)系樹中與該條文件訪問記錄相關(guān)的FAS或DAS;3)1)及2)中所述的文件訪問記錄與文件訪問關(guān)系樹中的相關(guān)FAS或DAS不相符,為如下一種或多種情況a)當(dāng)前被訪問文件絕對路徑上的某個目錄及被訪文件本身,在它的父目錄對應(yīng)的f-DAS中不存在;當(dāng)前被訪文件指記錄于該條文件訪問記錄中的被訪文件屬性值;b)權(quán)利要求5所描述的相關(guān)u-FAS或相關(guān)u-DAS中沒有包括當(dāng)前訪問用戶;當(dāng)前訪問用戶指記錄于該條文件訪問記錄中的訪問用戶屬性值;c)權(quán)利要求5所描述的相關(guān)p-FAS及相關(guān)p-DAS中沒有包括當(dāng)前訪問進(jìn)程;當(dāng)前訪問進(jìn)程指記錄于該條文件訪問記錄中的訪問進(jìn)程的屬性值;d)權(quán)利要求5所描述的相關(guān)o-FAS及相關(guān)o-DAS中沒有包括當(dāng)前訪問操作;當(dāng)前訪問操作指記錄于該條文件訪問記錄中的訪問操作的屬性值。
11.根據(jù)權(quán)利要求1所述的異常文件訪問自適應(yīng)檢測方法,其特征在于周期性的更新文件訪問關(guān)系樹各部分的時間稀缺度t-Rarity、其它相關(guān)參數(shù)及刪除文件訪問關(guān)系樹中記錄的過時文件訪問關(guān)系,包括如下步驟1)判斷文件訪問記錄中的發(fā)生時間屬性值與上次更新時間之差是否大于預(yù)先設(shè)定的更新周期,如果是則進(jìn)行步驟2)、3)、4),并把上次更新時間設(shè)置為當(dāng)前的發(fā)生時間屬性值;如果否,則什么也不做;2)檢查文件訪問關(guān)系樹中每個FAS或DAS的懲罰時間屬性值,如果該值大于0,則將懲罰時間減1;如果該值小于或等于0,則對FAS或DAS的t-Rarity屬性值加1,并將懲罰時間設(shè)置為0;3)對所有FAS或DAS中元素的年齡,記憶時間及最大記憶時間進(jìn)行更新對年齡值加1;對記憶時間減1;最大記憶時間設(shè)定為年齡值MAX,所屬FAS或DAS的t-Rarity屬性值×記憶強(qiáng)度系數(shù)+基本記憶時間;4)檢查所有FAS或DAS中元素的記憶時間屬性值,如果記憶時間小于0,則將該元素從其所屬FAS或DAS中刪除,并依據(jù)如下情況刪除該元素下屬的FAS或DASa)如果被刪除元素位于文件訪問關(guān)系樹第三個層次的FAS或DAS中,則無下屬FAS或DAS被刪除;b)如果被刪除元素位于文件訪問關(guān)系樹第二個層次的FAS或DAS中,則刪除下屬于該元素的文件訪問關(guān)系樹第三個層次中的FAS或DAS及其所屬元素;c)如果被刪除元素為文件,則刪除下屬于該文件的所有第二個層次的FAS及其所屬元素;同時根據(jù)a),b)刪除所有被刪除元素的下屬FAS;d)如果被刪除元素為目錄,則刪除對應(yīng)于該目錄的f-DAS、下屬于該目錄的所有第二個層次的FAS和DAS及其這些FAS和DAS中包含的元素;同時根據(jù)a),b),c),d)刪除所有被刪除元素的下屬FAS或DAS。
全文摘要
本發(fā)明公開了一種異常文件訪問自適應(yīng)檢測方法,包括以下步驟1)實時記錄計算機(jī)系統(tǒng)中產(chǎn)生的文件資源訪問請求;2)對記錄的文件訪問資源請求進(jìn)行預(yù)處理;3)用文件訪問關(guān)系樹記錄正常的文件訪問記錄中描述的文件訪問關(guān)系;4)根據(jù)時間稀缺度t-Rarity,將文件訪問關(guān)系樹分為固定和變化的兩部分;5)對文件訪問記錄進(jìn)行分析,并選擇性學(xué)入正常的文件訪問行為;5)將異常的文件訪問記錄上報給安全管理員;6)周期性的更新文件訪問關(guān)系樹并刪除文件訪問關(guān)系樹中記錄的過時文件訪問關(guān)系。該方法采用選擇性自學(xué)習(xí)與自適應(yīng)遺忘機(jī)制相結(jié)合,使其不需人工干預(yù)就可以安全可靠的自動建立正常行為模型,同時自適應(yīng)機(jī)制顯著提高了系統(tǒng)的檢測精度,可以準(zhǔn)確的檢測出包括未知攻擊在內(nèi)的大量惡意行為。
文檔編號H04L12/22GK1627699SQ20041002626
公開日2005年6月15日 申請日期2004年6月24日 優(yōu)先權(quán)日2004年6月24日
發(fā)明者管曉宏, 蔡忠閩, 孫國基, 彭勤科 申請人:西安交通大學(xué)