專利名稱:一種惡意軟件的檢測(cè)方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息安全領(lǐng)域,具體地說涉及惡意軟件的檢測(cè)。
技術(shù)背景現(xiàn)今,隨著信息化程度的提高及各種適用性技術(shù)的不斷推出,用 戶進(jìn)行各種與數(shù)字信息相關(guān)的活動(dòng)也越發(fā)便利,而且不可否認(rèn)的是, 用戶與信息化、數(shù)字化的關(guān)聯(lián)也越發(fā)緊密。然而與此相隨,數(shù)字信息 犯罪諸如攻擊(尤其是通過互聯(lián)網(wǎng))個(gè)人電腦、服務(wù)器、或者其他計(jì) 算機(jī)化裝置的事件卻頻繁發(fā)生。顯然的是,目前地下數(shù)字經(jīng)濟(jì)已曰益 產(chǎn)業(yè)化、規(guī)?;?,而且其相應(yīng)的犯罪行為也越趨隱蔽化,惡意軟件的攻 擊手段得到了極大的發(fā)展。諸如由以前的單個(gè)文件發(fā)展為多模塊、多 組件化的攻擊的形式,更甚至多數(shù)惡意軟件均具有較強(qiáng)的偽裝能力。另外,隨著互聯(lián)網(wǎng)的飛速發(fā)展,整個(gè)互聯(lián)網(wǎng)已經(jīng)成為個(gè)人桌面系 統(tǒng)的一個(gè)自然延展。自然,惡意軟件也充分利用這樣的技術(shù)便利性來 為其惡意行為服務(wù),這樣就出現(xiàn)了 一些系列型的攻擊如木馬下載器等。一般來講,計(jì)算機(jī)惡意軟件(包括病毒、蠕蟲、木馬、流氓軟件 等)的查殺工具或軟件均是針對(duì)單個(gè)文件或某段內(nèi)存,利用事先準(zhǔn)備 好的特征碼進(jìn)行匹配或比對(duì)。這種現(xiàn)有的查殺方法對(duì)于偽裝巧妙的惡 意軟件而言可以輕松避開,更無法清除之。此外,現(xiàn)有的查殺工具或 軟件識(shí)別出某一病毒文件后,但在面對(duì)惡意軟件的變形或多模塊、多 組件的攻擊形式時(shí),也往往只能發(fā)現(xiàn)、解決其表面上的問題,無法起 到全面查殺、根治病毒的作用。這顯然不能滿足用戶對(duì)于信息安全的 需求。發(fā)明內(nèi)容本發(fā)明的目的在于提供能夠解決以上問題的惡意軟件檢測(cè)機(jī)制。 為此,本發(fā)明針對(duì)上述這些惡意軟件的發(fā)展趨勢(shì)提出了一種利用 溯源分析及關(guān)聯(lián)分析的惡意軟件檢測(cè)機(jī)制,利用該機(jī)制能夠?qū)Σ《緩?根源上全面關(guān)聯(lián),避免查殺不徹底或漏網(wǎng),讓用戶的信息安全得到充分保障。在第一方面,本發(fā)明提供一種惡意軟件的檢測(cè)方法,其包括記錄步驟,記錄系統(tǒng)中的載體之間的關(guān)系;溯源步驟,當(dāng)確定一載體為惡意軟件后,基于所述記錄步驟記錄 的載體關(guān)系,追溯其根載體及原始根載體,并獲得與確定的作為惡意 軟件的所述載體相關(guān)的所有載體的集合。在第二方面,本發(fā)明還提供一種惡意軟件的檢測(cè)裝置,其包括記錄系統(tǒng)中的載體之間的關(guān)系的記錄模塊;確定一個(gè)載體為惡意軟件的模塊;以及溯源模塊,用于當(dāng)確定一載體為惡意軟件后,基于所述記錄模塊 記錄的載體關(guān)系,追溯其根載體及原始根載體,獲取與確定的作為惡 意軟件的所述載體相關(guān)的所有載體的集合。與現(xiàn)有技術(shù)相比,本發(fā)明通過上述機(jī)制能夠發(fā)現(xiàn)惡意軟件變形、 偽裝或多組件、多模塊的協(xié)同,從根源上監(jiān)控并記錄惡意軟件的發(fā)展 變化,在出現(xiàn)問題時(shí),能夠及時(shí)、徹底地將惡意軟件連根拔起。在關(guān) 注表象的同時(shí)更注重其實(shí)質(zhì),從而為用戶系統(tǒng)的信息安全提供充分的 保障。
下面將參照附圖對(duì)本發(fā)明的具體實(shí)施方案進(jìn)行更詳細(xì)的說明,其中圖1為惡意軟件演變示意圖;圖2為本發(fā)明的惡意軟件處理流程示意圖;圖3為載體關(guān)系示意圖;圖4為病毒實(shí)例的分析示意圖;圖5為本發(fā)明的惡意軟件處理系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚,以下結(jié)合附圖 以及實(shí)施例對(duì)本發(fā)明的惡意軟件才全測(cè)機(jī)制進(jìn)行詳細(xì)說明。應(yīng)當(dāng)理解, 此處所描述的具體實(shí)施方式
僅僅是用以解釋本發(fā)明的惡意軟件檢測(cè)5機(jī)制的發(fā)明構(gòu)思,并不用于限定本發(fā)明。圖1為惡意軟件演變示意圖。如圖1所示,惡意軟件初始時(shí)表現(xiàn) 為原始根載體M,具有較強(qiáng)的偽裝能力,并且能在用戶系統(tǒng)中運(yùn)行而 產(chǎn)生或釋放(但不僅僅限于這兩種關(guān)系,后文會(huì)有詳細(xì)的描述)至少 一個(gè)或多個(gè)子載體C ...Cln,所產(chǎn)生或釋放的至少一個(gè)子載體Cij又分 別可以作為根載體而產(chǎn)生或釋放一個(gè)或多個(gè)子載體,依次類推。其中,i, j, k,n均為大于等于1的正整數(shù)。對(duì)于一些惡意軟件而言,由于其原始根載體M本身具有較強(qiáng)的隱 蔽性、偽裝性,現(xiàn)有的計(jì)算機(jī)惡意軟件查殺工具或軟件很難發(fā)現(xiàn)其為 病毒的本質(zhì)。此外,惡意軟件的原始根載體M本身也可構(gòu)成為安全的文件,因 而其可不受查殺工具或軟件的限制。 一旦在系統(tǒng)中運(yùn)行,原始根載體 M將產(chǎn)生、釋放或下載一個(gè)或多個(gè)安全的或不安全的載體。查殺工具或軟件可能發(fā)現(xiàn)其中某一個(gè)或幾個(gè)載體,如"為不安全 的文件,即相應(yīng)殺除Cij本身。但顯然,其忽視了這一原始根載體M 及其產(chǎn)生、釋放或下載的其他各載體,從而給惡意軟件留有了或潛伏 或繼續(xù)侵襲的余地。這也正是惡意軟件偽裝/變形技術(shù)多樣化的寫照。圖2為本發(fā)明的惡意軟件處理流程示意圖。如圖2所示,在步驟200中,自系統(tǒng)運(yùn)行之初,即對(duì)系統(tǒng)中存在 的各種載體進(jìn)行監(jiān)控,并記錄載體間可能出現(xiàn)/存在的各種關(guān)系,諸 如,當(dāng)一載體M釋放/創(chuàng)建載體Cu后,即相應(yīng)記錄二者之間的創(chuàng)建關(guān)系。當(dāng)步驟202中發(fā)現(xiàn)某一載體,如Cij為病毒文件后,于步驟2(H 中進(jìn)行溯源分析,其根據(jù)記錄的載體之間的關(guān)系向上追溯其各級(jí)根載 體直至找到原始根載體M。至此,本發(fā)明的溯源分析機(jī)制結(jié)束。對(duì)于單線繁衍的惡意軟件而 言,通過這種追溯根源的方式,即能夠獲得與Cij相關(guān)的全部載體的 集合R。流程直接轉(zhuǎn)入步驟210而結(jié)束。但對(duì)于多線繁衍的惡意軟件而言,其產(chǎn)生/釋放的載體可能有多 個(gè)和/或多級(jí)分支。此時(shí)單靠溯源分析機(jī)制,可能無法找出其相關(guān)的 全部載體。因此,本發(fā)明進(jìn)一步提出與溯源分析機(jī)制相應(yīng)的關(guān)聯(lián)分析機(jī)制。在步驟206中,針對(duì)多線繁衍的惡意軟件,基于原始根載體M, 進(jìn)行關(guān)聯(lián)分析,其利用步驟200中的載體關(guān)系記錄,開始向下關(guān)聯(lián)查 找由原始根載體M直接/間接釋放的所有子載體。此時(shí),我們便能于 步驟210中得到該系統(tǒng)中與發(fā)病病毒載體Cij相關(guān)聯(lián)的所有載體的集 合R,即如圖l所示的(M, Cu…,ClnCu,Cik)。由此,當(dāng)用戶系統(tǒng)中某個(gè)載體被確認(rèn)為病毒文件后,本發(fā)明所做 的不僅是針對(duì)該病毒文件本身,而且還能進(jìn)一步查找并過濾與該病毒 文件關(guān)聯(lián)的所有文件。這樣,即便惡意軟件千變?nèi)f化,也能追根溯源 并關(guān)聯(lián)到其所有的變形或組件,從而從根本上保障了用戶的信息安 全、徹底杜絕了惡意軟件通過偽裝或變形躲避查殺的企圖。這里,惡意軟件的載體可以是系統(tǒng)中運(yùn)行的文件、進(jìn)程、線程, 注冊(cè)表,網(wǎng)址等所有內(nèi)容。在一個(gè)例子中,本發(fā)明在找到與該病毒文件關(guān)聯(lián)的所有文件之 后,除了立即對(duì)集合中的所有載體進(jìn)行殺除的方式之外,還可進(jìn)一步 進(jìn)行過濾操作。在步驟208,過濾上述找到的集合R中的各載體M, Cn…Cik,放 行已知的正常軟件。由此,于步驟210中得到均為惡意軟件的載體的 集合。過濾的優(yōu)勢(shì)在于,當(dāng)集合中某些載體為安全的或有益的文件時(shí), 可以通過過濾的方式得以保存。諸如,某一載體本身為安全載體或者 其與系統(tǒng)的運(yùn)行密切相關(guān),此時(shí)若貿(mào)然進(jìn)行刪除操作,容易引起正常 程序中斷或系統(tǒng)崩潰。因此,通過過濾操作可以使本發(fā)明的優(yōu)勢(shì)得以 進(jìn)一步的體現(xiàn)。過濾操作可以是通過白名單或數(shù)字簽名的方式進(jìn)行安全載體的 放行,也可以是基于人工分析后預(yù)定義的安全載體集合R,對(duì)安全載體 進(jìn)行放行。本發(fā)明中,針對(duì)載體進(jìn)行監(jiān)控并記錄載體之間的關(guān)系的方式可以 是任意的已知方式,諸如以記錄表單或集合的形式分別記錄各原始根 載體及其繁衍的各級(jí)載體。在此,為便于理解記錄載體關(guān)系的方式及其相應(yīng)的溯源、關(guān)聯(lián)分析機(jī)制,優(yōu)選的,以有向邊構(gòu)建的載體關(guān)系為示例進(jìn)行說明,但應(yīng)明 了這并非對(duì)本發(fā)明的限制。圖3為載體關(guān)系示意圖。如圖3所示,在載體I創(chuàng)建了載體J之 后,建立有向邊(I, J)來表示I, J之間的有向載體關(guān)系,其中I指 向J。這樣從操作系統(tǒng)開始運(yùn)行起,我們就能構(gòu)建出一張載體的載體 關(guān)系有向圖。其后,相應(yīng)于有向邊形式的載體關(guān)系記錄,按照以下方式進(jìn)行溯 源分析及關(guān)耳關(guān)分析1、 某一個(gè)載體J被確認(rèn)為惡意軟件或惡意軟件載體;2、 溯源及關(guān)聯(lián)a) 將J加入集合Rb) 對(duì)集合R中的每一個(gè)載體J,遍歷所有已記錄 的載體關(guān)系(1, J)和(J,I)(如果有的話)c) 當(dāng)I不在R中,則將載體I加入集合Rd) 循環(huán)b),直到?jīng)]有新的J。3、 過濾并放行R中的已知安全載體(例如,通過預(yù)先定義的 白名單或數(shù)字簽名或人工分析定義的安全載體集合R,等手段進(jìn)行過 濾并放行)。4、 集合R中均為惡意載體,刪除或清除集合R中的惡意載體。在一個(gè)例子中,過濾并放行R中的已知安全載體的操作可以在上 述溯源分析的c)步驟中先行進(jìn)行,即在c)中,當(dāng)I不在如已知的預(yù)定義的安全載體集合R,內(nèi)且I 不在R中,則將載體I加入集合R。如此,在經(jīng)過溯源和/或關(guān)聯(lián)分析后,其集合R中包含的載體即 均為惡意軟件等。需要指出的是,上述的循環(huán)流程中,因載體關(guān)系是基于具有指向 特性的有向邊構(gòu)建的,因而,當(dāng)以J為基礎(chǔ)循環(huán)遍歷載體關(guān)系(I, J) 或(J, I),即由J尋找I時(shí),前者是依據(jù)指向關(guān)系反向?qū)ふ?,后?則是正向?qū)ふ?。這種循環(huán)遍歷的方式是由有向邊的特性(I指向J) 決定的。此外,優(yōu)選的,為抓住病毒入侵系統(tǒng)的入口或源頭,以便后續(xù)統(tǒng)計(jì)分析惡意軟件入侵的手段及特點(diǎn),可以在最后得到的惡意載體集合 R及各載體關(guān)系(I,J)組成的有向圖中計(jì)算相關(guān)有向圖結(jié)點(diǎn)的入度,入 度為零的一個(gè)或多個(gè)結(jié)點(diǎn)載體就是相關(guān)感染或攻擊的根源,即原始根 載體。由此,可以在包含所有載體的集合R中尋找到并突出原始根載 體,也就是惡意軟件進(jìn)入系統(tǒng)的入口 ,為根絕病毒、屏蔽惡意軟件提 供技術(shù)支持。相應(yīng)的,本發(fā)明還可以具有一顯示手段,如顯示模塊等,其可根 據(jù)用戶的需求,向用戶展現(xiàn)與感染載體有關(guān)的載體關(guān)系圖(如有向圖),并可向用戶展現(xiàn)獲得的集合R中的所有載體,尤其是原始根載體。載體的展現(xiàn)可以包括載體名稱、路徑、大小、創(chuàng)建時(shí)間、修改記 錄、載體本身等。由此,通過顯示手段可以以感觀的形式向用戶表述 感染載體及病毒發(fā)展歷程,并能為惡意軟件的分析及查殺提供便利。 應(yīng)理解的是,當(dāng)以記錄表單、集合等其他方式記錄載體關(guān)系時(shí), 前述的針對(duì)有向邊進(jìn)行的循環(huán)流程并不是必須的溯源及關(guān)聯(lián)手段,而 是可以根據(jù)各記錄方式本身的特性/優(yōu)點(diǎn)相應(yīng)調(diào)整或設(shè)置恰當(dāng)?shù)乃菰?及關(guān)聯(lián)手段。也就是說,當(dāng)發(fā)現(xiàn)某一載體為病毒文件后,只要能追溯 其根源和/或能關(guān)聯(lián)所有其直接或間接繁衍的載體即應(yīng)被認(rèn)為屬于本 發(fā)明的溯源分析及關(guān)聯(lián)分析機(jī)制的范疇之內(nèi)。圖4為病毒實(shí)例的分析示意圖。結(jié)合圖4,利用一病毒實(shí)例對(duì)本 發(fā)明的惡意軟件檢測(cè)機(jī)制做一整體解釋說明。如圖4所示,文件012. exe作為原始根載體在執(zhí)行以后,會(huì)在磁 盤上寫入2個(gè)文件,即其一級(jí)子載體sys.exe、 host.exe: C:\Documents and SeUingsV..\Temp\sys.exe C:\Documents and Settings\…\Temp\host.exe 在012. exe進(jìn)禾呈結(jié)束的時(shí)l夷會(huì)啟動(dòng)進(jìn)禾呈sys. exe, sys. exe又寫 入以下7個(gè)文件(即,二級(jí)子載體,以此類推)tmpl. tmp、 tmp2. tmp、 tmpl.CAB、 tmp2.CAB、 vngwpa61.dll、 vngwpa61. sys、 fn00321.log。 其中前4個(gè)文件圖示為(*.tmp) x2、 (*.CAB) x 2,下同。具體為 C:\Documents and Sett ings\.,. \Temp\tmpl. tmp C:\Documents and Sett ings\... \Temp\tmp2. tmp C:\Documents and Sett ingsV.. \Temp\tmpl. CAB9C:\Documents and Sett ings\... \Temp\tmp2. CAB C: \WIN,S\system32\vngwpa61. dll C: \WIND0WS\system32\...\vngwpa61. sys C: \WINDOWS\fn00321.log之后通過rundl132. exe激活vngwpa61. dll, vngwpa61. dll會(huì)釋 放文件ogzpitcx而ee. t j。隨后sys. exe啟動(dòng)host, exe, host, exe又 寫入以下3個(gè)文件tmp3. tmp、 tmp4. tmp、 11778-7686:C:\Documents and Sett ings\... \Temp\tmp3. tmpC:\Documents and Sett ings\... \Temp\tmp4. tmpC:\WINDOWS\system32\-11778-7686其中tmp3. tmp是一個(gè)PE文件,host, exe啟動(dòng)4. tmp進(jìn)程,4. tmp 又會(huì)寫入以下7個(gè)文件b791.dll、 2bl.dll、 uninstall、 f91. bmp、 lbl. job、 91bl.exe、 lb601,txt,具體為C: \WINDOWS\system32\b791.dllC:\WINDOWS\system32\2bl.dllC:\Documents and Settings\... \Temp\f 4km0\ — uninstal 1C:\WIND0WS\f91. bmpC:\WINDOWS\Tasks\lbl. jobC:\WIND0WS\91bl. exeC:\WINDOWS\lb601. txt之后2bl. dll、 b791. dll又被激活,寫入以下多個(gè)文件(*.dat) x 3、 10178—8676、 51ce、 ( *. dat) x 7、以及79e71. exe。其中 10178-8676、 51ce圖示為(、)x2,具體為C:\Documents and Sett ings\... \Content. IE5\index. dat C:\Documents and Sett ings\... \Cookies\index, dat C:\Documents and SettingsV..\History.IE5\index.dat C: \WINDOWS\system32\-10178-8676 C: \WINDOWS\system32\51ceC:\Documents and SettingsV" \Cookies\index. dat C:\Documents and Settings\Fel ix\... \History. IE5\index. dat C:\Documents and SettingsV..\t\rl701.datC:\Documents and Settings\."\t\bl701. dat C:\Documents and Settings\."\t\kl701. dat C:\Documents and Settings\."\t\al701.dat C:\Documents and Settings\-..\t\pl701.dat C:\WINDOWS\system32\79e71. exe系統(tǒng)記錄上述載體之間的關(guān)聯(lián)關(guān)系。按照有向邊的方式記錄上述 載體之間的寫入關(guān)系為(012.exe, sys.exe) 、 (012.exe, host.exe)……(b791.dll, 79e71.exe)。之后,在被012.exe病毒感染的系統(tǒng)上安裝了查殺工具,如瑞星 殺毒軟件下載版2008 V20. 40. 30,然后進(jìn)行全盤病毒掃描,瑞星殺 毒軟件檢測(cè)出vngwpa61.dll、 vngwpa61. sys為惡意軟件,其病毒名 分別為Trojan. Win32. Undef.bfd、 Trojan. Win32. Undef. bfd。jt匕時(shí),利用上述i己錄的載體關(guān)系,由vngwpa61. dll、 vngwpa61. sys 分另寸進(jìn)4亍溯源分一斤,追^宗vngwpa61. dll、 vngwpa61. sys的才艮載體, 得到sys. exe,將其加入集合R中后,進(jìn)一步追蹤sys. exe的根載體 得到012.exe,將其加入集合R中后。再進(jìn)一步追蹤012. exe的根載 體,但并未發(fā)現(xiàn)新的根載體,由此確定012. exe為原始根載體。在找到原始根載體012. exe后,結(jié)合已記錄的載體之間的關(guān)系, 關(guān)聯(lián)分析查找由原始根載體012. exe而產(chǎn)生、釋放或下載的所有子載 體,4戈至U sys. exe, host, exe, 因sys. exe已^f立于集合R內(nèi),因jt匕3奪 host, exe力口入R中。jt匕后,由sys. exe, hos t. exe作為才艮載體繼續(xù)向 下關(guān)聯(lián)二者產(chǎn)生的所有子載體。如此循環(huán),直至沒有新的載體被發(fā)現(xiàn)。由此,經(jīng)過上述溯源分析及關(guān)聯(lián)分析后,我們得到與病毒載體 vngwpa61.dll、 vngwpa61. sys相關(guān)聯(lián)的所有載體的集合R,如圖4所 示。利用白名單等手段進(jìn)行過濾后,放行已知的確定為安全文件的載 體,從而得到以下文件,并認(rèn)為所有這些文件存在安全問題,應(yīng)予以 刪除^口 012. exe、 tmpl. tmp、 tmp2. tmp、 vngwpa61.dll、 ogzpitcxuwee. tj、 vngwpa61. sys、 fn00321.log、 11778-8676、 index, dat等。由上述示例即可以看出本發(fā)明相對(duì)于現(xiàn)有查殺工具或軟件的優(yōu) 點(diǎn)。此外,本發(fā)明進(jìn)一步的優(yōu)勢(shì)還可以在下述的說明中得以體現(xiàn)?!房趫D4中劃叉的圖才示戶斤示,載體sys.exe, host. exe在釋》文/寫 入多個(gè)載體后,被其它載體做了刪除操作。同樣隨系統(tǒng)運(yùn)行被刪除的 還可能有圖4中其它劃叉的載體,如3. tmp等。也就是說,該惡意軟 件在繁衍出后代之后,做出了自殺行為,造成此時(shí)用戶系統(tǒng)中并不存 在sys.exe, host, exe等纟皮刪除的載體的情況。這也是某些新型惡意 軟件躲避查殺的另一種手段。然而,盡管這種病毒技術(shù)的手段高超,但利用本發(fā)明提出的溯源 分析及關(guān)聯(lián)分析機(jī)制同樣能夠識(shí)破并捕獲其所有的相關(guān)載體。如前文所述,本發(fā)明自系統(tǒng)運(yùn)行之初即已記錄載體之間的關(guān)系。 特別的,這些載體的關(guān)系可以是以下各種關(guān)系的至少一種(但不僅限 于這些關(guān)系)1、 文件創(chuàng)建關(guān)系。例如,惡意代碼可以通過在磁盤上寫入另外一個(gè) 文件的方式把新的惡意代碼載體寫入主機(jī)中去。2、 進(jìn)程線程創(chuàng)建關(guān)系。例如,惡意代碼在寫入其它病毒后可能會(huì)以 創(chuàng)建進(jìn)程的形式使之運(yùn)行起來。3、 模塊的加載關(guān)系。例如,惡意代碼可能加載其它惡意代碼載體模 塊到其它進(jìn)程來進(jìn)一步控制系統(tǒng)。4、 注冊(cè)表寫入關(guān)系。例如,惡意代碼可能通過寫入某些注冊(cè)表項(xiàng)來 使某些惡意代碼載體在操作系統(tǒng)啟動(dòng)的時(shí)候被激活。5、 其它通訊關(guān)系。例如,惡意代碼可能通過其它方式與其它惡 意代碼載體進(jìn)行通訊,等等。對(duì)于具有自殺行為的惡意軟件,本發(fā)明通過記錄上述至少 一 種的 載體關(guān)系,可以繞開其載體本身,而關(guān)注于其載體間的諸如創(chuàng)建、調(diào) 用、加載等等的各種關(guān)系或其各種可能出現(xiàn)的關(guān)系組合。由此,即便 此時(shí)這些載體于系統(tǒng)中不存在(已被刪除),因本發(fā)明不需關(guān)心載體 本身的存在與否,故而同樣可以基于上述記錄的一種或多種載體關(guān)系 利用溯源分析機(jī)制找出其各根載體以及原始根載體,也同樣可以利用 關(guān)聯(lián)分析機(jī)制找出其繁衍的各子載體。應(yīng)理解的是,雖然以上列舉了本發(fā)明可適用的各種載體和載體關(guān) 系,但是本發(fā)明不應(yīng)限于此,它同樣適用于未來可能發(fā)展出的其它載 體和/或載體關(guān)系。應(yīng)理解的是,本發(fā)明的上述各具體實(shí)施例中涉及的各處理流程可以構(gòu)建為相應(yīng)的裝置或模塊。圖5為本發(fā)明的惡意軟件處理系統(tǒng)結(jié)構(gòu)示意圖。如圖5所示,惡 意軟件處理系統(tǒng)500包括記錄模塊502,用于記錄載體之間的關(guān)系; 溯源模塊504,用于追溯分析載體的根載體直至原始根載體;關(guān)聯(lián)模 塊506,用于關(guān)聯(lián)分析載體的各級(jí)子載體;過濾模塊508,用于通過 白名單等的方式放行已知的安全載體;顯示模塊510,用于向用戶顯 示載體關(guān)系(如有向圖)、集合R、原始根載體等內(nèi)容。上述各模塊顯而易見,在此描述的本發(fā)明可以有許多變化,這種變化不能認(rèn) 為偏離本發(fā)明的精神和范圍。因此,所有對(duì)本領(lǐng)域技術(shù)人員顯而易見 的改變,都包括在本權(quán)利要求書的涵蓋范圍之內(nèi)。
權(quán)利要求
1、一種惡意軟件的檢測(cè)方法,其特征在于包括以下步驟記錄步驟,記錄系統(tǒng)中的載體之間的關(guān)系;溯源步驟,當(dāng)確定一載體為惡意軟件后,基于所述記錄步驟記錄的載體關(guān)系,追溯其根載體及原始根載體,并獲得與確定作為惡意軟件的所述載體相關(guān)的所有載體的集合。
2、 根據(jù)權(quán)利要求l的方法,其特征在于還包括基于所述原始根載體獲取其各子載體的關(guān)聯(lián)步驟。
3、 根據(jù)權(quán)利要求l的方法,其特征在于,所述載體為系統(tǒng)中運(yùn)行的文件,進(jìn)程,線程,注冊(cè)表,和網(wǎng)址中的一個(gè)或多個(gè)。
4、 根據(jù)權(quán)利要求l的方法,其特征在于,所述的載體關(guān)系為以下至少一種文件創(chuàng)建關(guān)系,進(jìn)程線程創(chuàng)建關(guān)系,模塊的加載關(guān)系,注冊(cè)表寫入關(guān)系,和其它通訊關(guān)系。
5、 根據(jù)權(quán)利要求1-4之一的方法,其特征在于還包括過濾集合內(nèi)的所有載體,并放行其中的安全載體的過濾步驟。
6、 根據(jù)權(quán)利要求5的方法,其特征在于,所述過濾步驟是基于白名單、數(shù)字簽名或人工分析后預(yù)定義的安全載體集合進(jìn)行放行。
7、 根據(jù)權(quán)利要求6的方法,其特征在于,所述過濾步驟在獲得與確定的作為惡意軟件的所述載體相關(guān)的所有載體的集合之前進(jìn)行。
8、 根據(jù)權(quán)利要求1或2的方法,其特征在于所述載體之間的關(guān)系的記錄為有向圖,記錄表,或數(shù)據(jù)集合。
9、 根據(jù)權(quán)利要求8的方法,其特征在于包括計(jì)算所述有向圖的結(jié)點(diǎn)的入度的步驟,其中入度為零的一個(gè)或多個(gè)結(jié)點(diǎn)的載體為所述原始根載體。
10、 根據(jù)權(quán)利要求l的方法,其特征在于,所述溯源步驟包括a)將作為惡意軟件的載體加入集合;b)對(duì)集合中的每一個(gè)載體,尋找已記錄的載體關(guān)系;c)當(dāng)載體關(guān)系中的另一載體不在集合中,則將載體加入集合;d)重復(fù)b)步驟,直到各載體關(guān)系中的載體均在集合中。
11、 根據(jù)權(quán)利要求1的方法,其特征在于還包括顯示與確定作為惡意軟件的所述載體相關(guān)的載體、和/或所述載體之間的關(guān)系的步驟。
12、 一種惡意軟件的檢測(cè)裝置,其特征在于包括記錄系統(tǒng)中的載體之間的關(guān)系的記錄模塊;確定一個(gè)載體為惡意軟件的模塊;以及溯源模塊,用于當(dāng)確定一載體為惡意軟件后,基于所述記錄模塊記錄的載體關(guān)系,追溯其根載體及原始根載體,獲取與確定的作為惡意軟件的所述載體相關(guān)的所有載體的集合。
13、 根據(jù)權(quán)利要求12的裝置,其特征在于還包括基于所述原始根載體獲取其各子載體的關(guān)聯(lián)模塊。
14、 根據(jù)權(quán)利要求12的裝置,其特征在于,所述載體為系統(tǒng)中運(yùn)行的各種載體,包括進(jìn)程,線程,注冊(cè)表,和/或網(wǎng)址。
15、 根據(jù)權(quán)利要求12的裝置,其特征在于,所述的載體關(guān)系為以下全部或至少一種文件創(chuàng)建關(guān)系,進(jìn)程線程創(chuàng)建關(guān)系,模塊的加載關(guān)系,注冊(cè)表寫入關(guān)系,和其它通訊關(guān)系。
16、 根據(jù)權(quán)利要求12-15之一的裝置,其特征在于還包括過濾集合內(nèi)的所有載體并放行其中的安全載體的過濾模塊。
17、 根據(jù)權(quán)利要求16的裝置,其特征在于,所述過濾模塊是基于白名單、數(shù)字簽名或人工分析后預(yù)定義的安全載體集合進(jìn)行放行。
18、 根據(jù)權(quán)利要求17的裝置,其特征在于,所述過濾模塊在獲得與確定的作為惡意軟件的所述載體相關(guān)的所有載體的集合之前進(jìn)行。
19、 根據(jù)權(quán)利要求12或13的裝置,其特征在于,所述載體之間關(guān)系的記錄為有向圖,記錄表,或數(shù)據(jù)集合。
20、 根據(jù)權(quán)利要求19的裝置,其特征在于還包括,計(jì)算所述有向圖的結(jié)點(diǎn)的入度,將入度為零的一個(gè)或多個(gè)結(jié)點(diǎn)的載體定為所述原始根載體的模塊。
21、 根據(jù)權(quán)利要求12的裝置,其特征在于所述溯源模塊以下述方式工作a)將作為惡意軟件的載體加入集合;b )對(duì)集合中的每一個(gè)載體,尋找已記錄的載體關(guān)系;c)當(dāng)載體關(guān)系中的另一載體不在集合中,則將載體加入集合;d)重復(fù)b),直到各載體關(guān)系中的載體均在集合中。
22、 根據(jù)權(quán)利要求12的裝置,其特征在于還包括,顯示與確定作為惡意軟件的所述載體相關(guān)的載體、和/或所述載體之間的關(guān)系的模塊。
全文摘要
本發(fā)明涉及一種惡意軟件的檢測(cè)方法及裝置,用于惡意軟件的檢測(cè)。利用本發(fā)明能夠監(jiān)控并記錄惡意軟件的發(fā)展變化,在出現(xiàn)問題時(shí),能追溯病毒的根源并能相應(yīng)檢測(cè)出與該惡意軟件相關(guān)聯(lián)的變形或所有組件。本發(fā)明在關(guān)注惡意軟件偽裝表象的同時(shí),更注重其內(nèi)在變化與聯(lián)系,從而為用戶系統(tǒng)的信息安全提供了充分的保障。
文檔編號(hào)G06F21/00GK101604361SQ200810114709
公開日2009年12月16日 申請(qǐng)日期2008年6月11日 優(yōu)先權(quán)日2008年6月11日
發(fā)明者曹家鑫, 李子拓, 健 武, 潘劍鋒, 翔 袁, 鄒貴強(qiáng), 陸劍鋒 申請(qǐng)人:北京奇虎科技有限公司