本公開(kāi)一般涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及網(wǎng)絡(luò)信息安全領(lǐng)域,尤其涉及一種用于檢測(cè)惡意代碼的方法和系統(tǒng)。
背景技術(shù):
隨著互聯(lián)網(wǎng)的快速發(fā)展,惡意代碼的黑色利益鏈已經(jīng)形成。惡意代碼是以危害信息的安全等不良意圖為目的的程序,通常都潛伏在受害計(jì)算機(jī)中實(shí)施破壞或竊取信息。由于每日新增的惡意代碼樣本已經(jīng)數(shù)以萬(wàn)計(jì),傳統(tǒng)的客戶端檢測(cè)方式逐步轉(zhuǎn)變?yōu)樵撇闅⒌臋z測(cè)方式。
云查殺是云計(jì)算技術(shù)在反病毒中的應(yīng)用。云計(jì)算是一種服務(wù)交付模型,用于對(duì)共享的可配置計(jì)算資源池進(jìn)行方便、按需的網(wǎng)絡(luò)訪問(wèn)。簡(jiǎn)單地說(shuō),云計(jì)算是由云計(jì)算服務(wù)提供商來(lái)搭建云計(jì)算存儲(chǔ)和運(yùn)算中心,用戶通過(guò)網(wǎng)絡(luò)來(lái)訪問(wèn)“云”,將“云”作為數(shù)據(jù)存儲(chǔ)和應(yīng)用服務(wù)的中心。云查殺是指反病毒廠商建立云端在線服務(wù)器集群,用于存儲(chǔ)海量檢測(cè)特征和檢測(cè)規(guī)則,并使用各種鑒定器進(jìn)行匹配檢測(cè)。軟件客戶端則將要檢測(cè)對(duì)象的信息通過(guò)互聯(lián)網(wǎng)上傳到云端服務(wù)器,等待服務(wù)器檢測(cè)的結(jié)果。
然而,各種鑒定器的檢測(cè)方式都有自己的長(zhǎng)處和不足,檢測(cè)結(jié)果也可能存在誤報(bào)的情況,這就會(huì)影響云端最終的鑒定結(jié)果。
技術(shù)實(shí)現(xiàn)要素:
鑒于現(xiàn)有技術(shù)中的上述缺陷或不足,期望提供一種能夠有效提高惡意代碼檢測(cè)精準(zhǔn)度的方案。
第一方面,本申請(qǐng)實(shí)施例提供了一種檢測(cè)惡意代碼的方法,包括:接收檢測(cè)樣本;利用多種惡意代碼鑒定器分別對(duì)檢測(cè)樣本進(jìn)行檢測(cè)以獲得多個(gè)檢測(cè)結(jié)果;確定檢測(cè)結(jié)果的可信度和信譽(yù)值,其中可信度表 示檢測(cè)結(jié)果是否具有惡意性和/或安全性,信譽(yù)值為對(duì)應(yīng)可信度的量化信任程度;以及基于檢測(cè)結(jié)果的可信度和信譽(yù)值確定檢測(cè)樣本的最終鑒定結(jié)果。
第二方面,本申請(qǐng)實(shí)施例還提供了一種檢測(cè)惡意代碼的系統(tǒng),包括:云檢測(cè)服務(wù)器,用于接收檢測(cè)樣本;多個(gè)不同類型的惡意代碼鑒定器,用于從云檢測(cè)服務(wù)器接收檢測(cè)樣本并對(duì)檢測(cè)樣本分別進(jìn)行檢測(cè)以獲得多個(gè)檢測(cè)結(jié)果;以及文件信譽(yù)判定器,用于確定檢測(cè)結(jié)果的可信度和信譽(yù)值,以及基于檢測(cè)結(jié)果的可信度和信譽(yù)值確定檢測(cè)樣本的最終鑒定結(jié)果,其中可信度表示檢測(cè)結(jié)果是否具有惡意性和/或安全性,信譽(yù)值為對(duì)應(yīng)可信度的量化信任程度。
本申請(qǐng)實(shí)施例提供的檢測(cè)惡意代碼的方案,通過(guò)對(duì)多個(gè)惡意代碼鑒定器的檢測(cè)結(jié)果分配可信度和信譽(yù)值,能夠充分利用各種惡意代碼鑒定器的特性,提供惡意代碼檢測(cè)的精準(zhǔn)度。在一些實(shí)施例中,檢測(cè)結(jié)果的信譽(yù)值體現(xiàn)了惡意代碼鑒定器的誤報(bào)率,基于信譽(yù)值對(duì)檢測(cè)結(jié)果進(jìn)行判定,降低了對(duì)樣本鑒定結(jié)果的誤報(bào)率。在另一些實(shí)施例中,按照可信度和信譽(yù)值判定策略,可以根據(jù)檢測(cè)結(jié)果的可信度和信譽(yù)值細(xì)粒度調(diào)整鑒定結(jié)果。
附圖說(shuō)明
通過(guò)閱讀參照以下附圖所作的對(duì)非限制性實(shí)施例所作的詳細(xì)描述,本申請(qǐng)的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:
圖1示出了其中可以應(yīng)用本申請(qǐng)實(shí)施例的示例性系統(tǒng)架構(gòu);
圖2示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的用于檢測(cè)惡意代碼的方法的示例性流程圖;
圖3示出了根據(jù)本申請(qǐng)的文件信譽(yù)評(píng)分策略的一個(gè)示例性規(guī)則表格;
圖4示出了根據(jù)本申請(qǐng)實(shí)施例的利用規(guī)則表格確定檢測(cè)結(jié)果的可信度和信譽(yù)值的方法的示例性流程圖;
圖5示出了根據(jù)本申請(qǐng)的可信度和信譽(yù)值判定策略的一個(gè)示例性判定邏輯的流程圖;
圖6示出了根據(jù)本申請(qǐng)實(shí)施例的用于檢測(cè)惡意代碼的系統(tǒng)的示例性結(jié)構(gòu)示意圖;以及
圖7示出了適于用來(lái)實(shí)現(xiàn)本申請(qǐng)實(shí)施例的服務(wù)器的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本申請(qǐng)作進(jìn)一步的詳細(xì)說(shuō)明??梢岳斫獾氖牵颂幩枋龅木唧w實(shí)施例僅僅用于解釋相關(guān)發(fā)明,而非對(duì)該發(fā)明的限定。另外還需要說(shuō)明的是,為了便于描述,附圖中僅示出了與發(fā)明相關(guān)的部分。
需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來(lái)詳細(xì)說(shuō)明本申請(qǐng)。
請(qǐng)參考圖1,其示出了可以應(yīng)用本申請(qǐng)實(shí)施例的示例性系統(tǒng)架構(gòu)100。
如圖1所示,系統(tǒng)架構(gòu)100可以包括終端設(shè)備101、102、網(wǎng)絡(luò)103和服務(wù)器104、105、106和107。網(wǎng)絡(luò)103用以在終端設(shè)備101、102和服務(wù)器104、105、106、107之間提供通信鏈路的介質(zhì)。網(wǎng)絡(luò)103可以包括各種連接類型,例如有線、無(wú)線通信鏈路或者光纖電纜等等。
用戶110可以使用終端設(shè)備101、102通過(guò)網(wǎng)絡(luò)103與服務(wù)器104、105、106、107交互,以訪問(wèn)各種服務(wù),例如瀏覽網(wǎng)頁(yè)、下載數(shù)據(jù)等。終端設(shè)備101、102上可以安裝有各種客戶端應(yīng)用,例如可以接入統(tǒng)一資源定位符URL云服務(wù)的應(yīng)用,包括但不限于瀏覽器、安全應(yīng)用等。
終端設(shè)備101、102可以是各種電子設(shè)備,包括但不限于個(gè)人電腦、智能手機(jī)、智能電視、平板電腦、個(gè)人數(shù)字助理、電子書(shū)閱讀器等等。
服務(wù)器104、105、106、107可以是提供各種服務(wù)的服務(wù)器。服務(wù)器可以響應(yīng)于用戶的服務(wù)請(qǐng)求而提供服務(wù)。可以理解,一個(gè)服務(wù)器可以提供一種或多種服務(wù),同一種服務(wù)也可以由多個(gè)服務(wù)器來(lái)提供。在本申請(qǐng)的實(shí)施例中,所涉及的服務(wù)器可以位于云端,這些服務(wù)器可以包括但不限于,云檢測(cè)服務(wù)器、各種惡意代碼鑒定服務(wù)器、文件信譽(yù) 判定服務(wù)器等。
應(yīng)該理解,圖1中的終端設(shè)備、網(wǎng)絡(luò)和服務(wù)器的數(shù)目?jī)H僅是示意性的。根據(jù)實(shí)現(xiàn)需要,可以具有任意數(shù)目的終端設(shè)備、網(wǎng)絡(luò)和服務(wù)器。
如背景技術(shù)中所提到的,目前的各種惡意代碼鑒定器的檢測(cè)方式具有各自的優(yōu)點(diǎn)和缺點(diǎn),檢測(cè)結(jié)果也存在誤報(bào)的情況,這會(huì)影響云端最終的鑒定結(jié)果。
鑒于現(xiàn)有技術(shù)的上述缺陷,本申請(qǐng)實(shí)施例提供了一種基于文件信譽(yù)值的惡意代碼檢測(cè)方案。具體的,針對(duì)各個(gè)惡意代碼鑒定器對(duì)檢測(cè)樣本的檢測(cè)結(jié)果分配可信度和信譽(yù)值??尚哦缺硎緳z測(cè)結(jié)果是否具有惡意性和/或安全性,信譽(yù)值則為對(duì)應(yīng)可信度的量化信任程度。然后,基于一個(gè)或多個(gè)檢測(cè)結(jié)果的可信度和信譽(yù)值確定檢測(cè)樣本的最終鑒定結(jié)果。
參考圖2,其示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的用于檢測(cè)惡意代碼的方法的示例性流程圖。圖2所示的方法由服務(wù)器側(cè)的系統(tǒng)完成,該系統(tǒng)可以位于云端。
如圖2所示,在步驟210中,接收檢測(cè)樣本。
服務(wù)器可以從客戶端接收檢測(cè)樣本??蛻舳丝梢栽谛枰M(jìn)行惡意代碼檢測(cè)或病毒查殺時(shí),向服務(wù)器提出請(qǐng)求,請(qǐng)求的同時(shí)可以將需要檢測(cè)的樣本上傳給服務(wù)器。
接著,在步驟220中,利用多種惡意代碼鑒定器分別對(duì)檢測(cè)樣本進(jìn)行檢測(cè)以獲得多個(gè)檢測(cè)結(jié)果。
服務(wù)器接收到檢測(cè)樣本后,可以將該檢測(cè)樣本分發(fā)給多個(gè)惡意代碼鑒定器,以在各個(gè)惡意代碼鑒定器處分別進(jìn)行惡意代碼檢測(cè)。
在一些實(shí)施例中,服務(wù)器也可以在對(duì)檢測(cè)樣本進(jìn)行預(yù)處理之后再分發(fā)給惡意代碼鑒定器。預(yù)處理例如可以包括針對(duì)不同類型的檢測(cè)樣本,預(yù)先進(jìn)行不同的處理。例如,對(duì)于壓縮包,可以先對(duì)壓縮包進(jìn)行解壓。
在一些實(shí)施例中,服務(wù)器可以選擇向部分或全部惡意代碼鑒定器分發(fā)檢測(cè)樣本。例如,服務(wù)器可以根據(jù)檢測(cè)樣本的特性,排除那些明顯不適合該類檢測(cè)樣本的惡意代碼鑒定器,從而提高檢測(cè)結(jié)果的準(zhǔn)確 定。
一般而言,根據(jù)鑒定方法所基于的特征不同,惡意代碼鑒定器可以分為基于靜態(tài)特征的鑒定器,基于動(dòng)態(tài)行為的鑒定器,以及基于靜態(tài)特征和動(dòng)態(tài)行為的鑒定器。靜態(tài)特征例如可以包括以下方面:文件名稱、程序形態(tài)、API(應(yīng)用編程接口)數(shù)量特性、文件的版本信息、文件長(zhǎng)度信息、PE(可移植可執(zhí)行)結(jié)構(gòu)特性、文件加殼信息等。動(dòng)態(tài)行為例如可以包括以下方面:自啟動(dòng)行為,進(jìn)程隱藏行為,通信隱藏行為等。本申請(qǐng)對(duì)于惡意代碼鑒定器的類型沒(méi)有限制,可以使用現(xiàn)有技術(shù)中已知的或者未來(lái)開(kāi)發(fā)的各種類型的惡意代碼鑒定器。
惡意代碼鑒定器的檢測(cè)結(jié)果例如可以包括所檢測(cè)出的惡意代碼的類別。計(jì)算機(jī)反病毒研究組織(CARO)提出了一種惡意代碼的分類命名方法,其命名規(guī)則如下:
[<malware_type>://][<platform>]/<family_name>[.<group_name>]\[.<infective_length>][.<variant>[<devolution]][<modifiers>]
其中,<malware_type>指明了惡意代碼的類型(常見(jiàn)如virus(病毒)、backdoor(后門),Trojan(木馬),Adware(廣告軟件)等)。<platform>字段定義了惡意代碼執(zhí)行所需要的操作系統(tǒng)環(huán)境,例如“W32”或“Win32”是指32位Windows操作系統(tǒng),“Linux”指Linux系統(tǒng),“OSX”指Mac OSX。<family_name>同<group_name>字段通常代表惡意代碼的家族信息。<infective_length>字段定義了文件感染型病毒的感染長(zhǎng)度。<variant>(通常是一個(gè)字母)字段用來(lái)區(qū)分具有相同惡意代碼家族的變種。剩余的字段根據(jù)具體環(huán)境定義。
下面是幾個(gè)常見(jiàn)的惡意代碼名稱定義例子:
Net-Worm://Win32.Welchia一種Windows平臺(tái)網(wǎng)絡(luò)蠕蟲(chóng);
Backdoor://Win32.ciadoor.121一種Windows平臺(tái)后門型木馬,屬于ciadoor家族;
Virus://Win32.Parite.B一種windows內(nèi)存駐留型文件感染病毒,屬于Parite家族。
由于上述命名規(guī)則不是強(qiáng)制執(zhí)行的,因此不同反惡意代碼服務(wù)提供商對(duì)惡意代碼的類別可能有不同的命名方式。換言之,不同惡意代 碼鑒定器對(duì)同一檢測(cè)樣本檢測(cè)出的惡意代碼可能有不同的命名方式。
然后,在步驟230中,確定檢測(cè)結(jié)果的可信度和信譽(yù)值。
在本文中,可信度表示檢測(cè)結(jié)果是否具有惡意性和/或安全性,換言之,檢測(cè)出的惡意代碼類別是否具有威脅性,或者是否具有安全性。信譽(yù)值為對(duì)應(yīng)可信度的量化信任程度。
在一些實(shí)施例中,可信度可以包括以下任一:黑、白、灰、疑黑和疑白,其中黑表示檢測(cè)結(jié)果具有惡意性,白表示檢測(cè)結(jié)果具有安全性,灰表示不確定,疑黑表示檢測(cè)結(jié)果可能具有惡意性,以及疑白表示檢測(cè)結(jié)果可能具有安全性。
信譽(yù)值可以采用各種數(shù)值特征來(lái)表示,例如采用正整數(shù)來(lái)表示。針對(duì)檢測(cè)結(jié)果的可信度,可以有對(duì)應(yīng)的信譽(yù)值。例如,假設(shè)某一檢測(cè)結(jié)果的可信度為黑,其對(duì)應(yīng)的信譽(yù)值為100。這表示該檢測(cè)出的結(jié)果具有惡意性的概率極高。又例如,假設(shè)某一檢測(cè)結(jié)果的可信度為灰,其對(duì)應(yīng)的信譽(yù)值為1。這表示該檢測(cè)出的結(jié)果是否具有惡意性不確定,并且這種不確定的概率很低。
在一些實(shí)施例中,檢測(cè)結(jié)果的可信度和信譽(yù)值的確定是根據(jù)文件信譽(yù)評(píng)分策略來(lái)進(jìn)行的。在文件信譽(yù)評(píng)分策略中,可以根據(jù)已知的各種惡意代碼的信息,預(yù)先設(shè)置各類惡意代碼檢測(cè)結(jié)果的可信度;以及根據(jù)惡意代碼鑒定器的誤報(bào)率,預(yù)先設(shè)置各類惡意代碼檢測(cè)結(jié)果的信譽(yù)值。例如,目前已知多種惡意代碼以及這些惡意代碼所屬的家族,因此可以根據(jù)這些已知信息預(yù)先設(shè)置各類惡意代碼檢測(cè)結(jié)果的可信度。另外,根據(jù)惡意代碼鑒定器的歷史判定結(jié)果,可以統(tǒng)計(jì)鑒定器的誤報(bào)率,從而基于誤報(bào)率來(lái)預(yù)先設(shè)置各類惡意代碼檢測(cè)結(jié)果的信譽(yù)值。可選的或附加的,還可以由病毒分析人員根據(jù)積累的經(jīng)驗(yàn)人工調(diào)整可信度和/或信譽(yù)值。
圖3示出了根據(jù)本申請(qǐng)的文件信譽(yù)評(píng)分策略的一個(gè)示例性規(guī)則表格。在圖2的步驟230中,可以根據(jù)該規(guī)則表格來(lái)確定檢測(cè)結(jié)果的可信度和信譽(yù)值。
如圖3所示,第一列為規(guī)則ID,用于標(biāo)識(shí)不同的規(guī)則;第二列為任務(wù)類型,鑒定器引擎所執(zhí)行的任務(wù)類型,任務(wù)類型例如可以根據(jù)文 件處理的緊急程度和重要性進(jìn)行區(qū)分;第三列為鑒定器引擎,也即各種惡意代碼鑒定器,第四列為沖突優(yōu)先級(jí),用于標(biāo)識(shí)不同規(guī)則在發(fā)生沖突時(shí)的優(yōu)先級(jí)(在后文將描述到);第五列為鑒定規(guī)則,也即鑒定器引擎所檢測(cè)出的各種檢測(cè)結(jié)果,其可以標(biāo)識(shí)所檢測(cè)出的惡意代碼的類型;第六列為可信度,也即各個(gè)規(guī)則或惡意代碼檢測(cè)結(jié)果所對(duì)應(yīng)的可信度;第七列為信譽(yù)值,也即各個(gè)規(guī)則對(duì)應(yīng)于相應(yīng)的可信度的量化信任程度。可以理解,規(guī)則表格還可以包含一些其他內(nèi)容。為了不必要地模糊本申請(qǐng)的實(shí)施例,圖3中未示出那些附加內(nèi)容。
圖4示出了根據(jù)本申請(qǐng)實(shí)施例的利用規(guī)則表格確定檢測(cè)結(jié)果的可信度和信譽(yù)值的方法的示例性流程圖,也即示出了圖2中的步驟230的一種示例性實(shí)現(xiàn)方式。
如圖4所示,在步驟410中,確定與檢測(cè)結(jié)果匹配的惡意代碼檢測(cè)結(jié)果。在該步驟中,可以通過(guò)查找規(guī)則表格,來(lái)確定與檢測(cè)結(jié)果匹配的規(guī)則。
例如,如果樣本72AAC543B9CBBF597852E254325772BF經(jīng)過(guò)多種惡意代碼鑒定器查殺后檢測(cè)出的結(jié)果為:
GScan:Adware.Win32.MultiPlug.susp
PScan:Win32/Ramnit.A virus
DScan:0.2
以圖3中所示的規(guī)則表格為例,此時(shí)可以確定,GScan鑒定器引擎的檢測(cè)結(jié)果與規(guī)則405匹配,PScan鑒定器引擎的檢測(cè)結(jié)果未找到匹配規(guī)則,DScan鑒定器引擎的檢測(cè)結(jié)果也未找到匹配規(guī)則。
接著,在步驟420中,將匹配的惡意代碼檢測(cè)結(jié)果的可信度和信譽(yù)值賦予對(duì)應(yīng)的檢測(cè)結(jié)果。
繼續(xù)上述示例,根據(jù)圖3的規(guī)則表格,規(guī)則405的可信度為疑黑,分值為50,所以GScan鑒定器引擎的檢測(cè)結(jié)果的可信度為疑黑,分值為50。其余鑒定器引擎的檢測(cè)結(jié)果未匹配上規(guī)則,因此舍棄這些檢測(cè)結(jié)果。
返回圖2,在確定了檢測(cè)結(jié)果的可信度和信譽(yù)值之后,繼而在步驟240中,基于檢測(cè)結(jié)果的可信度和信譽(yù)值確定檢測(cè)樣本的最終鑒定 結(jié)果。
在一些實(shí)施例中,根據(jù)可信度和信譽(yù)值判定策略對(duì)檢測(cè)結(jié)果的可信度和信譽(yù)值進(jìn)行處理以獲得對(duì)檢測(cè)樣本的最終鑒定結(jié)果。
當(dāng)多個(gè)檢測(cè)結(jié)果的可信度一致時(shí),可以比較容易地確定最終鑒定結(jié)果。當(dāng)多個(gè)檢測(cè)結(jié)果的可信度不一致,存在沖突時(shí),可信度和信譽(yù)值判定策略還可以考慮檢測(cè)結(jié)果的沖突優(yōu)先級(jí)和/或信譽(yù)值。因此,在前述的步驟230中,根據(jù)文件信譽(yù)分配策略同時(shí)為檢測(cè)結(jié)果分配沖突優(yōu)先級(jí)(例如根據(jù)圖3中的表格第四列沖突優(yōu)先級(jí)進(jìn)行分配)。可以設(shè)計(jì)多種可信度和信譽(yù)值判定策略,以確定最終鑒定結(jié)果。
圖5示出了根據(jù)本申請(qǐng)的可信度和信譽(yù)值判定策略的一個(gè)示例性判定邏輯的流程圖。
如圖5所示,在步驟501中,將確定了可信度和信譽(yù)值的檢測(cè)結(jié)果匯集成文件可信分值表。接著在步驟502中,判斷這些檢測(cè)結(jié)果的可信度是否全部為黑。如果是,則跳至步驟520,判定最終鑒定結(jié)果為黑狀態(tài);否則,前進(jìn)到步驟503。
在步驟503中,判斷這些檢測(cè)結(jié)果的可信度是否全部為灰。如果是,則跳至步驟530,判定最終鑒定結(jié)果為灰狀態(tài);否則,前進(jìn)到步驟504。
在步驟504中,判斷這些檢測(cè)結(jié)果的可信度是否全部為白。如果是,則跳至步驟540,判斷最終鑒定結(jié)果為白狀態(tài);否則,前進(jìn)到步驟505。
在步驟505中,判斷這些檢測(cè)結(jié)果的可信度是否全部為疑黑。如果是,則在步驟506中,對(duì)檢測(cè)結(jié)果的信譽(yù)值進(jìn)行累加。接著,在步驟507中,判斷累加的信譽(yù)值是否大于等于第一預(yù)定閾值,如果是,則跳至步驟520,判定最終鑒定結(jié)果為黑狀態(tài);否則,跳至步驟530,判斷最終鑒定結(jié)果為灰狀態(tài)。第一預(yù)定閾值例如可以是100。如果步驟505中判斷為否,則前進(jìn)到步驟508。
在步驟508中,判斷這些檢測(cè)結(jié)果的可信度是否全部為疑白。如果是,則在步驟509中,對(duì)檢測(cè)結(jié)果的信譽(yù)值進(jìn)行累加。接著,在步驟510中,判斷累加的信譽(yù)值是否大于等于第二預(yù)定閾值,如果是, 則跳至步驟540,判定最終鑒定結(jié)果為白狀態(tài);否則,跳至步驟530,判斷最終鑒定結(jié)果為灰狀態(tài)。第二預(yù)定閾值例如可以是100。如果步驟508中判斷為否,則前進(jìn)到步驟511。
在步驟511中,判斷這些檢測(cè)結(jié)果的可信度是否存在黑白沖突。如果是,則在步驟512中,對(duì)檢測(cè)結(jié)果的沖突優(yōu)先級(jí)進(jìn)行比較。響應(yīng)于可信度為黑的檢測(cè)結(jié)果的沖突優(yōu)先級(jí)最高,跳至步驟520,判定最終鑒定結(jié)果為黑狀態(tài)。響應(yīng)于可信度為白的檢測(cè)結(jié)果的沖突優(yōu)先級(jí)最高否則,跳至步驟540,判斷最終鑒定結(jié)果為白狀態(tài)。換言之,最終鑒定結(jié)果與具有最高沖突優(yōu)先級(jí)的檢測(cè)結(jié)果一致。響應(yīng)于可信度分別為黑和白的檢測(cè)結(jié)果的沖突優(yōu)先級(jí)相同,跳至步驟530,判定最終鑒定結(jié)果為灰狀態(tài)。如果步驟511中判斷為否,則前進(jìn)到步驟513。
在步驟513中,判斷這些檢測(cè)結(jié)果的可信度是否存在黑疑白沖突。如果是,則跳至步驟520,直接判定最終鑒定結(jié)果為黑狀態(tài);否則,前進(jìn)到步驟514。
在步驟514中,判斷這些檢測(cè)結(jié)果的可信度是否存在白疑黑沖突。如果是,則跳至步驟540,直接判定最終鑒定結(jié)果為白狀態(tài);否則,前進(jìn)到步驟515。
在步驟515中,判斷這些檢測(cè)結(jié)果的可信度是否存在疑黑疑白沖突。如果是,則在步驟516中,確定疑黑的檢索結(jié)果的信譽(yù)值與疑白的檢索結(jié)果的信譽(yù)值之間的差距。例如,可以通過(guò)將疑黑信譽(yù)值減去疑白信譽(yù)值。反過(guò)來(lái)也可以。響應(yīng)于疑黑信譽(yù)值與疑白信譽(yù)值的差值大于等于第一閾值,也即疑黑信譽(yù)值比疑白信譽(yù)值足夠高,則跳至步驟520,判定最終鑒定結(jié)果為黑狀態(tài)。響應(yīng)于疑黑信譽(yù)值與疑白信譽(yù)值的差值小于等于第二閾值,也即疑黑信譽(yù)值比疑白信譽(yù)值足夠低,則跳至步驟540,判斷最終鑒定結(jié)果為白狀態(tài)。響應(yīng)于疑黑信譽(yù)值與疑白信譽(yù)值的差值介于第一閾值與第二閾值之間,也即疑黑信譽(yù)值與疑白信譽(yù)值相差不夠大,則跳至步驟530,判定最終鑒定結(jié)果為灰狀態(tài)。在一些實(shí)施例中,第一閾值與第二閾值的絕對(duì)值可以相同,例如第一閾值為100,第二閾值為-100。因此,上述判斷邏輯也可以表述為:若多個(gè)檢測(cè)結(jié)果存在疑黑疑白沖突,則當(dāng)疑黑的檢索結(jié)果的信譽(yù)值與 疑白的檢索結(jié)果的信譽(yù)值之間的差距在第三預(yù)定閾值以上時(shí),判定最終鑒定結(jié)果與信譽(yù)值高的檢索結(jié)果一致,否則判定最終鑒定結(jié)果為灰狀態(tài)。這里,第三預(yù)定閾值為第一閾值和第二閾值的絕對(duì)值,例如100。
如果步驟515中判斷為否,則前進(jìn)到步驟517,判斷其他可能的沖突。這些沖突不是非常激烈,可以利用一些簡(jiǎn)單的判定邏輯進(jìn)行判斷。例如,當(dāng)存在黑和疑黑沖突時(shí),判定最終結(jié)果為黑狀態(tài);當(dāng)存在白和疑白沖突時(shí),判定最終結(jié)果為白狀態(tài);當(dāng)存在疑黑和灰沖突或疑白和灰沖突時(shí),判定最終結(jié)果為灰狀態(tài)。為了簡(jiǎn)單清晰起見(jiàn),圖5中沒(méi)有對(duì)這些沖突判斷進(jìn)行描繪。另外,為了連線清晰起見(jiàn),圖5中示出了重復(fù)的最終結(jié)果框圖:黑狀態(tài)520、灰狀態(tài)530和白狀態(tài)540,這種圖示方式不影響圖5的判定邏輯。
可以理解,圖5所示的判定邏輯僅是示例性的。本領(lǐng)域技術(shù)人員也可以設(shè)定其他的判定邏輯。例如,圖5中的黑白沖突根據(jù)沖突優(yōu)先級(jí)來(lái)判定,也可以根據(jù)信譽(yù)值來(lái)判定,類似于疑黑疑白沖突。又例如,圖5中的疑黑疑白沖突根據(jù)信譽(yù)值來(lái)判定,其也可以根據(jù)沖突優(yōu)先級(jí)來(lái)判定。再例如,黑白沖突和疑黑疑白沖突可以同時(shí)考慮沖突優(yōu)先級(jí)和信譽(yù)值。例如,首先根據(jù)沖突優(yōu)先級(jí)進(jìn)行判定,當(dāng)沖突優(yōu)先級(jí)相同時(shí),再根據(jù)信譽(yù)值來(lái)判定。
回顧前面的示例,也即針對(duì)樣本72AAC543B9CBBF597852E254325772BF經(jīng)過(guò)多種惡意代碼鑒定器查殺后檢測(cè)出的結(jié)果為:
GScan:Adware.Win32.MultiPlug.susp
PScan:Win32/Ramnit.A virus
DScan:0.2
以圖3中所示的規(guī)則表格為例,GScan鑒定器引擎的檢測(cè)結(jié)果與規(guī)則405匹配,可信度為疑黑,分值為50。其余鑒定器引擎的檢測(cè)結(jié)果未匹配上任何規(guī)則,丟棄這些檢測(cè)結(jié)果。
按照?qǐng)D5所示的判定邏輯,此時(shí)檢測(cè)結(jié)果的可信度為疑黑,分值為50,低于第一預(yù)定閾值(例如100),因此,判定最終鑒定結(jié)果為灰狀態(tài)。
又例如,假設(shè)針對(duì)樣本EF1766F750C01D741F8D980DC345DD2F,經(jīng)過(guò)多種惡意代碼鑒定器查殺后檢測(cè)出的結(jié)果分別為:
GScan:Adware.Win32.Downloader.Gex
PScan:Win32/Wapomi.AX virus
DScan:0.3
以圖3中所示的規(guī)則表格為例,GScan鑒定器引擎的檢測(cè)結(jié)果與規(guī)則404匹配,可信度為黑,分值為100。其余鑒定器引擎的檢測(cè)結(jié)果未匹配上任何規(guī)則,丟棄這些檢測(cè)結(jié)果。
按照?qǐng)D5所示的判定邏輯,此時(shí)檢測(cè)結(jié)果的可信度全為黑,因此,判定最終鑒定結(jié)果為黑狀態(tài)。
應(yīng)當(dāng)注意,盡管在附圖中以特定順序描述了本發(fā)明方法的操作,但是,這并非要求或者暗示必須按照該特定順序來(lái)執(zhí)行這些操作,或是必須執(zhí)行全部所示的操作才能實(shí)現(xiàn)期望的結(jié)果。相反,流程圖中描繪的步驟可以改變執(zhí)行順序。例如,圖5中的各種判定邏輯可以按任意順序執(zhí)行或者并發(fā)進(jìn)行。附加地或備選地,可以省略某些步驟,將多個(gè)步驟合并為一個(gè)步驟執(zhí)行,和/或?qū)⒁粋€(gè)步驟分解為多個(gè)步驟執(zhí)行。
參考圖6,其示出了根據(jù)本申請(qǐng)一個(gè)實(shí)施例的用于檢測(cè)惡意代碼的系統(tǒng)的示例性結(jié)構(gòu)圖。圖6所示的系統(tǒng)位于服務(wù)器側(cè),尤其是位于云端。該系統(tǒng)泛指多個(gè)不同功能的服務(wù)器相互連接組成的服務(wù)器集群,對(duì)外表現(xiàn)為一個(gè)整體,相互配合共同完成檢測(cè)惡意代碼的功能。
如圖6所示,用于檢測(cè)惡意網(wǎng)址的系統(tǒng)600可以包括云檢測(cè)服務(wù)器610,一個(gè)或多個(gè)不同類型的惡意代碼鑒定器620-1,620-2,…,620-N,以及文件信譽(yù)判定器630。
云檢測(cè)服務(wù)器610用于接收客戶端上傳的檢測(cè)樣本。云檢測(cè)服務(wù)器610還將檢測(cè)樣本分發(fā)給各個(gè)惡意代碼鑒定器620-1,620-2,…,620-N。
每個(gè)惡意代碼鑒定器620-1,620-2,…,620-N根據(jù)自己的鑒定方法,對(duì)云檢測(cè)服務(wù)器610分發(fā)的檢測(cè)樣本進(jìn)行檢測(cè)。這些惡意代碼鑒定器可以位于與云檢測(cè)服務(wù)器相同或不同的云端服務(wù)器上。
文件信譽(yù)判定器630用于匯集惡意代碼鑒定器620-1,620-2,…,620-N的檢測(cè)結(jié)果,對(duì)這些檢測(cè)結(jié)果進(jìn)行分析處理,以確定檢測(cè)樣本的最終鑒定結(jié)果。在一些實(shí)施例中,對(duì)檢測(cè)結(jié)果的分析處理可以包括:確定檢測(cè)結(jié)果的可信度和信譽(yù)值,以及基于檢測(cè)結(jié)果的可信度和信譽(yù)值確定檢測(cè)樣本的最終鑒定結(jié)果。
為了執(zhí)行上述分析處理,文件信譽(yù)判定器630可以包括確定單元631和判定單元632。確定單元631用于根據(jù)來(lái)自塊640的文件信譽(yù)評(píng)分策略,確定檢測(cè)結(jié)果的可信度和信譽(yù)值。判定單元632用于根據(jù)來(lái)自塊640的可信度和信譽(yù)值判定策略對(duì)檢測(cè)結(jié)果的可信度和信譽(yù)值進(jìn)行處理以獲得對(duì)檢測(cè)樣本的最終鑒定結(jié)果。
當(dāng)確定單元631確定檢測(cè)結(jié)果的可信度和信譽(yù)值時(shí),可以首先尋找與檢測(cè)結(jié)果匹配的惡意代碼檢測(cè)結(jié)果;然后將匹配的惡意代碼檢測(cè)結(jié)果的可信度和信譽(yù)值賦予該檢測(cè)結(jié)果。
在一些實(shí)施例中,可信度和信譽(yù)值判定策略還考慮了檢測(cè)結(jié)果的沖突優(yōu)先級(jí)。在這些實(shí)施例中,確定單元631進(jìn)一步配置用于為檢測(cè)結(jié)果分配沖突優(yōu)先級(jí)。具體而言,根據(jù)文件信譽(yù)評(píng)分策略,確定檢測(cè)結(jié)果的沖突優(yōu)先級(jí)。判定單元632進(jìn)一步配置用于:若檢測(cè)結(jié)果的可信度之間存在沖突,則根據(jù)檢測(cè)結(jié)果的沖突優(yōu)先級(jí)和/或信譽(yù)值來(lái)確定最終鑒定結(jié)果。
在一些實(shí)施例中,可信度和信譽(yù)值判定策略的示例性判斷邏輯例如可以包括以下至少一項(xiàng):
若多個(gè)檢測(cè)結(jié)果均為灰,則判定檢測(cè)文本的最終鑒定結(jié)果為灰狀態(tài);
若多個(gè)檢測(cè)結(jié)果均為黑,則判定檢測(cè)文件的最終鑒定結(jié)果為黑狀態(tài);
若多個(gè)檢測(cè)結(jié)果均為白,則判定檢測(cè)文件的最終鑒定結(jié)果為白狀態(tài);
若多個(gè)檢測(cè)結(jié)果存在黑白沖突并且沖突優(yōu)先級(jí)不一樣時(shí),則判定檢測(cè)文件的最終鑒定結(jié)果與具有最高優(yōu)先級(jí)的檢測(cè)結(jié)果一致;
若多個(gè)檢測(cè)結(jié)果存在黑白沖突并且沖突優(yōu)先級(jí)一樣時(shí),則判定檢 測(cè)文件的最終鑒定結(jié)果為灰狀態(tài);
若多個(gè)檢測(cè)結(jié)果存在黑、疑白沖突,則檢測(cè)文件的最終鑒定結(jié)果為黑狀態(tài);
若多個(gè)檢測(cè)結(jié)果存在白、疑黑沖突,則判定檢測(cè)文件的最終鑒定結(jié)果為白狀態(tài);
若多個(gè)檢測(cè)結(jié)果均為疑黑,則當(dāng)多個(gè)檢測(cè)結(jié)果的累計(jì)信譽(yù)值在第一預(yù)定閾值以上時(shí),判定檢測(cè)文件的最終鑒定結(jié)果為黑狀態(tài),否則判定檢測(cè)文件的最終鑒定結(jié)果為灰狀態(tài);
若多個(gè)檢測(cè)結(jié)果均為疑白,則當(dāng)多個(gè)檢測(cè)結(jié)果的累計(jì)信譽(yù)值在第二預(yù)定閾值以上時(shí),判定檢測(cè)文件的最終鑒定結(jié)果為白狀態(tài),否則判定檢測(cè)文件的最終鑒定結(jié)果為灰狀態(tài);以及
若多個(gè)檢測(cè)結(jié)果存在疑黑疑白沖突,則當(dāng)疑黑的檢索結(jié)果的信譽(yù)值與疑白的檢索結(jié)果的信譽(yù)值之間的差距在第三預(yù)定閾值以上時(shí),判定檢測(cè)文件的最終鑒定結(jié)果與信譽(yù)值高的檢索結(jié)果一致,否則判定檢測(cè)文件的最終鑒定結(jié)果為灰狀態(tài)。
應(yīng)當(dāng)理解,系統(tǒng)600中記載的諸子系統(tǒng)或單元與參考圖2-圖5描述的方法中的各個(gè)步驟相對(duì)應(yīng)。由此,上文針對(duì)方法描述的操作和特征同樣適用于系統(tǒng)600及其中包含的單元,在此不再贅述。
下面參考圖7,其示出了適于用來(lái)實(shí)現(xiàn)本申請(qǐng)實(shí)施例的服務(wù)器的計(jì)算機(jī)系統(tǒng)700的結(jié)構(gòu)示意圖。
如圖7所示,計(jì)算機(jī)系統(tǒng)700包括中央處理單元(CPU)701,其可以根據(jù)存儲(chǔ)在只讀存儲(chǔ)器(ROM)702中的程序或者從存儲(chǔ)部分708加載到隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)703中的程序而執(zhí)行各種適當(dāng)?shù)膭?dòng)作和處理。在RAM 703中,還存儲(chǔ)有系統(tǒng)700操作所需的各種程序和數(shù)據(jù)。CPU 701、ROM 702以及RAM 703通過(guò)總線704彼此相連。輸入/輸出(I/O)接口705也連接至總線704。
以下部件連接至I/O接口705:包括鍵盤、鼠標(biāo)等的輸入部分706;包括諸如陰極射線管(CRT)、液晶顯示器(LCD)等以及揚(yáng)聲器等的輸出部分707;包括硬盤等的存儲(chǔ)部分708;以及包括諸如LAN卡、調(diào)制解調(diào)器等的網(wǎng)絡(luò)接口卡的通信部分709。通信部分709經(jīng)由諸如 因特網(wǎng)的網(wǎng)絡(luò)執(zhí)行通信處理。驅(qū)動(dòng)器710也根據(jù)需要連接至I/O接口705。可拆卸介質(zhì)711,諸如磁盤、光盤、磁光盤、半導(dǎo)體存儲(chǔ)器等等,根據(jù)需要安裝在驅(qū)動(dòng)器710上,以便于從其上讀出的計(jì)算機(jī)程序根據(jù)需要被安裝入存儲(chǔ)部分708。
特別地,根據(jù)本公開(kāi)的實(shí)施例,上文參考圖2-圖7描述的過(guò)程可以被實(shí)現(xiàn)為計(jì)算機(jī)軟件程序。例如,本公開(kāi)的實(shí)施例包括一種計(jì)算機(jī)程序產(chǎn)品,其包括有形地包含在機(jī)器可讀介質(zhì)上的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包含用于執(zhí)行圖2-圖5的方法的程序代碼。在這樣的實(shí)施例中,該計(jì)算機(jī)程序可以通過(guò)通信部分709從網(wǎng)絡(luò)上被下載和安裝,和/或從可拆卸介質(zhì)711被安裝。
附圖中的流程圖和框圖,圖示了按照本發(fā)明各種實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段、或代碼的一部分,所述模塊、程序段、或代碼的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來(lái)實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來(lái)實(shí)現(xiàn)。
描述于本申請(qǐng)實(shí)施例中所涉及到的單元或模塊可以通過(guò)軟件的方式實(shí)現(xiàn),也可以通過(guò)硬件的方式來(lái)實(shí)現(xiàn)。所描述的單元或模塊也可以設(shè)置在處理器中。這些單元或模塊的名稱在某種情況下并不構(gòu)成對(duì)該單元或模塊本身的限定。
作為另一方面,本申請(qǐng)還提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),該計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是上述實(shí)施例中所述裝置中所包含的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);也可以是單獨(dú)存在,未裝配入設(shè)備中的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有一個(gè)或者一個(gè)以上程序,所述程序被一個(gè)或者一個(gè)以上的處理器用來(lái)執(zhí)行描述于本申請(qǐng)的公式輸入方 法。
以上描述僅為本申請(qǐng)的較佳實(shí)施例以及對(duì)所運(yùn)用技術(shù)原理的說(shuō)明。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本申請(qǐng)中所涉及的發(fā)明范圍,并不限于上述技術(shù)特征的特定組合而成的技術(shù)方案,同時(shí)也應(yīng)涵蓋在不脫離所述發(fā)明構(gòu)思的情況下,由上述技術(shù)特征或其等同特征進(jìn)行任意組合而形成的其它技術(shù)方案。例如上述特征與本申請(qǐng)中公開(kāi)的(但不限于)具有類似功能的技術(shù)特征進(jìn)行互相替換而形成的技術(shù)方案。