亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

惡意文檔的檢測(cè)方法及裝置與流程

文檔序號(hào):12272073閱讀:203來(lái)源:國(guó)知局
惡意文檔的檢測(cè)方法及裝置與流程

本發(fā)明涉及計(jì)算機(jī)安全技術(shù)領(lǐng)域,特別是涉及一種惡意文檔的檢測(cè)方法及裝置。



背景技術(shù):

軟件漏洞的成因是由于開(kāi)發(fā)語(yǔ)言本身的局限性,或是由于軟件作者因開(kāi)發(fā)期時(shí)期編寫(xiě)程序不完善或安全意識(shí)不夠而疏忽大意而造成的。惡意文檔,就是根據(jù)加載文檔的軟件存在的漏洞而故意制作的不正常文件,惡意文檔具體可以為DOC,PDF,XLS,PPT等文檔,根據(jù)加載該文檔的軟件存在的漏洞而特制的文檔,在特定的環(huán)境下打開(kāi)惡意文檔后會(huì)成功執(zhí)行惡意文檔當(dāng)中嵌入的惡意執(zhí)行程序,并通過(guò)執(zhí)行惡意程序?qū)τ?jì)算機(jī)進(jìn)行攻擊。

目前,通過(guò)特征碼匹配的方式檢測(cè)文檔是否為惡意文檔,然而某些惡意執(zhí)行程序以加密形式嵌入到文檔中的,而加密的惡意執(zhí)行程序?qū)?huì)躲過(guò)特征碼匹配的檢測(cè)機(jī)制,因此現(xiàn)有技術(shù)中惡意文檔的檢測(cè)精度低。



技術(shù)實(shí)現(xiàn)要素:

有鑒于此,本發(fā)明提供一種惡意文檔的檢測(cè)方法及裝置,主要目的在于提高惡意文檔的檢測(cè)精度。

依據(jù)本發(fā)明一個(gè)方面,提供了一種惡意文檔的檢測(cè)方法,該方法包括:

根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密;

檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序;

若包含,則確定所述可疑文檔為惡意文檔。

依據(jù)本發(fā)明另一個(gè)方面,提供了一種惡意文檔的檢測(cè)裝置,該裝置包括:

解密單元,用于根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密;

檢測(cè)單元,用于檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序;

確定單元,用于若所述解密的可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。

借由上述技術(shù)方案,本發(fā)明實(shí)施例提供的技術(shù)方案至少具有下列優(yōu)點(diǎn):

本發(fā)明實(shí)施例提供了一種惡意文檔的檢測(cè)方法及裝置,首先根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密,然后檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序,若可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。與目前通過(guò)特征碼匹配的方式檢測(cè)文檔是否為惡意文檔相比,本發(fā)明實(shí)施例首先根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密,然后檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,從而通過(guò)本發(fā)明實(shí)施例解決了現(xiàn)有技術(shù)中加密的惡意執(zhí)行程序?qū)?huì)躲過(guò)特征碼匹配的檢測(cè)機(jī)制的問(wèn)題,進(jìn)而提高了惡意文檔的檢測(cè)精度。

上述說(shuō)明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說(shuō)明書(shū)的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式。

附圖說(shuō)明

通過(guò)閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:

圖1示出了本發(fā)明實(shí)施例提供的一種惡意文檔的檢測(cè)方法流程圖;

圖2示出了本發(fā)明實(shí)施例提供的另一種惡意文檔的檢測(cè)方法流程圖;

圖3示出了本發(fā)明實(shí)施例提供的一種惡意文檔的檢測(cè)裝置的結(jié)構(gòu)框圖;

圖4示出了本發(fā)明實(shí)施例提供的另一種惡意文檔的檢測(cè)裝置的結(jié)構(gòu)框圖。

具體實(shí)施方式

下面將參照附圖更詳細(xì)地描述本公開(kāi)的示例性實(shí)施例。雖然附圖中顯示了本公開(kāi)的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開(kāi)而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開(kāi),并且能夠?qū)⒈竟_(kāi)的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。

本發(fā)明實(shí)施例提供了一種惡意文檔的檢測(cè)方法,如圖1所示,所述方法包括:

101、根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密。

其中,所述可疑文檔可以為PDF文檔、Word文檔、TXT文檔、圖片文檔、視頻文檔等,本發(fā)明實(shí)施例不做具體限定。需要說(shuō)明的是,由于攻擊者在文檔中嵌入的程序是經(jīng)過(guò)加密的,因此若想獲知加密的程序是否為惡意的程序,需要對(duì)可疑文檔進(jìn)行解密,并通過(guò)解密的程序判斷可疑文檔中是否包惡意執(zhí)行程序。所述預(yù)置邏輯操作具體可以為同或邏輯操作、異或邏輯操作等,本發(fā)明實(shí)施例不做具體限定。在本發(fā)明實(shí)施例中除了可以通過(guò)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密,還可以通過(guò)預(yù)置邏輯操作對(duì)可執(zhí)行程序進(jìn)行解密,本發(fā)明實(shí)施例不做具體限定。

對(duì)于本發(fā)明實(shí)施例,根據(jù)異或邏輯(XOR)如果a、b兩個(gè)值不相同,則異或結(jié)果為1,如果a、b兩個(gè)值相同,異或結(jié)果為0的原理對(duì)可疑文檔進(jìn)行解密。在本發(fā)明實(shí)施例中,異或邏輯可通過(guò)一個(gè)相同的數(shù)值進(jìn)行加密解密,如果該數(shù)值為十六進(jìn)制00-FF的情況下,也就是256種情況,通過(guò)暴力解密方法對(duì)該數(shù)值進(jìn)行異或運(yùn)算,即將可疑文檔與十六進(jìn)制數(shù)00-FF依次異或,每異或一次就檢查可疑文檔中是否包含惡意執(zhí)行程序的標(biāo)記,如果檢查到惡意執(zhí)行程序的標(biāo)記就可以將可疑文檔順利的解密出來(lái)。

對(duì)于本發(fā)明實(shí)施例,根據(jù)同或邏輯(XNOR)如果a、b兩個(gè)值相同,則同或結(jié)果為1,如果a、b兩個(gè)值不相同,同或結(jié)果為0的原理對(duì)可疑文檔進(jìn)行解密。在本發(fā)明實(shí)施例中,同或邏輯可通過(guò)一個(gè)相同的數(shù)值進(jìn)行加密解密,如果該數(shù)值為十六進(jìn)制00-FF的情況下,也就是256種情況,通過(guò)暴力解密方法對(duì)該數(shù)值進(jìn)行同或運(yùn)算,即將可疑文檔與十六進(jìn)制數(shù)00-FF依次異或,每同或一次就檢查可疑文檔中是否包含惡意執(zhí)行程序的標(biāo)記,如果檢查到惡意執(zhí)行程序的標(biāo)記就可以將可疑文檔順利的解密出來(lái)。

102、檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序。

其中,所述惡意執(zhí)行程序?yàn)榭蓤?zhí)行文件,具體可以為.exe文件。在本發(fā)明實(shí)施例中可以靜態(tài)檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,也可通過(guò)動(dòng)態(tài)檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,還可以通過(guò)靜態(tài)與動(dòng)態(tài)結(jié)合的方式檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,本發(fā)明實(shí)施例不做具體限定。

在本發(fā)明實(shí)施例中,檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序的過(guò)程具體可以為:首先對(duì)解密的可疑文檔進(jìn)行靜態(tài)檢測(cè),即對(duì)所述待檢測(cè)解密的可疑文檔中滿(mǎn)足預(yù)設(shè)可疑要求的關(guān)鍵字段進(jìn)行統(tǒng)計(jì)分析,如果統(tǒng)計(jì)分析結(jié)果指示待檢測(cè)解密的可疑文檔中滿(mǎn)足預(yù)設(shè)可疑要求的關(guān)鍵字超過(guò)預(yù)置閾值,則確定可疑文檔為惡意文檔;若可疑文檔中滿(mǎn)足預(yù)設(shè)可疑要求的關(guān)鍵字小于預(yù)置閾值,則對(duì)解密的可以文檔進(jìn)行動(dòng)態(tài)檢測(cè),即判斷所述待檢測(cè)解密的可疑文檔中是否包含觸發(fā)JavaScript執(zhí)行的函數(shù),如果是,則確定所述可疑文檔中為惡意文檔。其中,所述預(yù)置閾值可以根據(jù)實(shí)際需求進(jìn)行設(shè)置,如所述預(yù)置閾值可以為20、30、50等,本發(fā)明實(shí)施例不做具體限定。

103、若包含,則確定所述可疑文檔為惡意文檔。

其中,惡意文檔就是根據(jù)加載文檔的軟件存在的漏洞而故意制作的不正常文件,惡意文檔具體可以為DOC,PDF,XLS,PPT等文檔,根據(jù)加載該文檔的軟件存在的漏洞而特制的文檔,在特定的環(huán)境下打開(kāi)惡意文檔后會(huì)成功執(zhí)行惡意文檔當(dāng)中嵌入的惡意執(zhí)行程序,并通過(guò)執(zhí)行惡意程序?qū)τ?jì)算機(jī)進(jìn)行攻擊。

對(duì)于本發(fā)明實(shí)施例,首先根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密,然后通過(guò)靜態(tài)或動(dòng)態(tài)檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,即檢測(cè)解密的可疑文檔中是否包含有可執(zhí)行文件,若可疑文檔中包含可執(zhí)行文件,則確定所述可疑文檔為惡意文檔。從而通過(guò)本發(fā)明實(shí)施例解決了現(xiàn)有技術(shù)中加密的惡意執(zhí)行程序?qū)?huì)躲過(guò)特征碼匹配的檢測(cè)機(jī)制的問(wèn)題,進(jìn)而提高了惡意文檔的檢測(cè)精度。

本發(fā)明實(shí)施例提供了一種惡意文檔的檢測(cè)方法,首先根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密,然后檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序,若可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。與目前通過(guò)特征碼匹配的方式檢測(cè)文檔是否為惡意文檔相比,本發(fā)明實(shí)施例首先根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密,然后檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,若可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。從而通過(guò)本發(fā)明實(shí)施例解決了現(xiàn)有技術(shù)中加密的惡意執(zhí)行程序?qū)?huì)躲過(guò)特征碼匹配的檢測(cè)機(jī)制的問(wèn)題,進(jìn)而提高了惡意文檔的檢測(cè)精度。

本發(fā)明實(shí)施例提供了另一種惡意文檔的檢測(cè)方法,如圖2所示,所述方法包括:

201、根據(jù)預(yù)置規(guī)則獲取可疑文檔。

其中,所述預(yù)置規(guī)則可以根據(jù)正常文檔實(shí)際執(zhí)行的情況進(jìn)行設(shè)置,如正常文檔的進(jìn)程啟動(dòng)關(guān)系、正常文檔中包含的函數(shù)等進(jìn)行設(shè)置,本發(fā)明實(shí)施例不做具體限定。對(duì)于本發(fā)明實(shí)施例,所述可疑文檔可以為PDF文檔、Word文檔、TXT文檔、圖片文檔、視頻文檔等,本發(fā)明實(shí)施例不做具體限定。例如,存在一個(gè)Word文檔,當(dāng)該Word文檔被Word執(zhí)行程序執(zhí)行時(shí),則通過(guò)正常Word文檔在Word執(zhí)行程序中的進(jìn)程啟動(dòng)關(guān)系,正常Word文檔中包含的函數(shù),判斷該Word文檔是否為可疑文檔。

對(duì)于本發(fā)明實(shí)施例,所述根據(jù)預(yù)置規(guī)則獲取所述可以文檔包括:根據(jù)進(jìn)程啟動(dòng)關(guān)系、崩潰進(jìn)程、填充數(shù)據(jù)Shellcode、掃描到的函數(shù)判斷執(zhí)行的文檔是否合法;若不合法,則確定所述執(zhí)行的文檔為可疑文檔。其中,Shellcode實(shí)際是一段代碼,是用來(lái)發(fā)送到服務(wù)器利用特定漏洞的代碼,一般可以獲取權(quán)限。另外,Shellcode一般是作為數(shù)據(jù)發(fā)送給受攻擊服務(wù)器的。Shellcode是溢出程序和蠕蟲(chóng)病毒的核心,提到它自然就會(huì)和漏洞聯(lián)想在一起,Shellcode只對(duì)沒(méi)有打補(bǔ)丁的主機(jī)有用武之地。漏洞利用中最關(guān)鍵的是Shellcode的編寫(xiě)。所述崩潰進(jìn)程指啟動(dòng)的進(jìn)程為未響應(yīng)狀態(tài)。例如,當(dāng)腳本搜索引擎啟發(fā)后在執(zhí)行文檔中掃描到一些未知的函數(shù)時(shí),或執(zhí)行文檔的啟用進(jìn)出現(xiàn)錯(cuò)誤時(shí),啟動(dòng)文檔的進(jìn)程出現(xiàn)未響應(yīng)現(xiàn)象時(shí),可將執(zhí)行的文檔確定為可疑文檔。

202、根據(jù)預(yù)置腳本引擎獲取所述可疑文檔中的加密數(shù)據(jù)。

在本發(fā)明實(shí)施例中,所述預(yù)置腳本引擎是根據(jù)現(xiàn)有文檔腳本設(shè)置的,如Word腳本、PDF腳本、CAJ腳本等,本發(fā)明實(shí)施例不做具體限定。如果可疑文檔為Word文檔,則通過(guò)Word腳本引擎掃描該Word文檔,將該Word文檔中一些未知的函數(shù)、不確定的函數(shù)和包含加密信息的函數(shù)確定為加密數(shù)據(jù)。

203、根據(jù)異或邏輯操作對(duì)所述加密數(shù)據(jù)進(jìn)行解密。

在本發(fā)明實(shí)施例中,由于攻擊者在文檔中嵌入的程序是經(jīng)過(guò)加密的,因此若想獲知加密的程序是否為惡意的程序,需要對(duì)可疑文檔進(jìn)行解密,并通過(guò)解密的可疑文檔判斷可疑文檔中是否包惡意執(zhí)行程序。需要說(shuō)明的是,在本發(fā)明實(shí)施例中除了可以通過(guò)異或邏輯操作對(duì)可疑文檔進(jìn)行解密,還可以通過(guò)異或邏輯操作對(duì)可執(zhí)行程序進(jìn)行解密,本發(fā)明實(shí)施例不做具體限定。

對(duì)于本發(fā)明實(shí)施例,根據(jù)異或邏輯(XOR)如果a、b兩個(gè)值不相同,則異或結(jié)果為1,如果a、b兩個(gè)值相同,異或結(jié)果為0的原理對(duì)可疑文檔進(jìn)行解密。在本發(fā)明實(shí)施例中,異或邏輯可通過(guò)一個(gè)相同的數(shù)值進(jìn)行加密解密,如果該數(shù)值為十六進(jìn)制數(shù)00-FF的情況下,也就是256種情況,通過(guò)暴力解密方法對(duì)該數(shù)值進(jìn)行異或運(yùn)算,即將可疑文檔與十六進(jìn)制數(shù)00-FF依次異或,每異或一次就檢查可疑文檔中是否包含惡意執(zhí)行程序的標(biāo)記,如果檢查到惡意執(zhí)行程序的標(biāo)記就可以將可疑文檔順利的解密出來(lái)。

對(duì)于本發(fā)明實(shí)施例,所述根據(jù)異或邏輯操作對(duì)所述加密數(shù)據(jù)進(jìn)行解密包括:通過(guò)預(yù)置異或算法規(guī)則對(duì)所述加密數(shù)據(jù)進(jìn)行異或邏輯操作解密。其中,預(yù)置異或算法規(guī)則可以為逐字節(jié)異或、間隔字節(jié)異或、遞減異或、遞增異或等,本發(fā)明實(shí)施例不做具體限定。在本發(fā)明實(shí)施例中,對(duì)加密數(shù)據(jù)間隔字節(jié)進(jìn)行逐字節(jié)異或,具體可以對(duì)加密數(shù)據(jù)逐字節(jié)邏輯異或十六進(jìn)制數(shù)0-F。對(duì)加密數(shù)據(jù)進(jìn)行間隔字節(jié)異或,具體可以對(duì)加密數(shù)據(jù)中的1,3,5,7,9,11……字節(jié)邏輯異或十六進(jìn)制數(shù)0-F,對(duì)加密數(shù)據(jù)中的2,4,6,8,10,12……字節(jié)邏輯異或十六進(jìn)制數(shù)A-F。對(duì)加密數(shù)據(jù)間隔字節(jié)進(jìn)行遞增異或,具體可以為對(duì)加密數(shù)據(jù)中的第一個(gè)字節(jié)異或A,加密數(shù)據(jù)中的第二個(gè)字節(jié)異或B,加密數(shù)據(jù)中的第三個(gè)字節(jié)異或C,加密數(shù)據(jù)中的第四個(gè)字節(jié)異或D,加密數(shù)據(jù)中的第五個(gè)字節(jié)異或E,加密數(shù)據(jù)中的第六個(gè)字節(jié)異或F,加密數(shù)據(jù)中的第七個(gè)字節(jié)異或G,以此類(lèi)推進(jìn)行遞增異或解密加密數(shù)據(jù)。

在本發(fā)明實(shí)施例中,對(duì)加密數(shù)據(jù)間隔字節(jié)進(jìn)行遞減異或,具體可以為對(duì)加密數(shù)據(jù)中的第一個(gè)字節(jié)異或10,加密數(shù)據(jù)中的第二個(gè)字節(jié)異或9,加密數(shù)據(jù)中的第三個(gè)字節(jié)異或8,加密數(shù)據(jù)中的第四個(gè)字節(jié)異或7,加密數(shù)據(jù)中的第五個(gè)字節(jié)異或6,加密數(shù)據(jù)中的第六個(gè)字節(jié)異或5,加密數(shù)據(jù)中的第七個(gè)字節(jié)異或4,以此類(lèi)推進(jìn)行遞減異或解密加密數(shù)據(jù)。

在本發(fā)明實(shí)施例中,所述通過(guò)預(yù)置異或算法規(guī)則對(duì)所述加密數(shù)據(jù)進(jìn)行異或邏輯操作解密包括:對(duì)所述加密數(shù)據(jù)進(jìn)行逐字節(jié)異或相同的數(shù)解密;或?qū)λ黾用軘?shù)據(jù)進(jìn)行逐字節(jié)異或不同的數(shù)解密。例如,對(duì)所述加密數(shù)據(jù)進(jìn)行逐字節(jié)異或相同的數(shù)FF進(jìn)行解密;對(duì)所述加密數(shù)據(jù)進(jìn)行逐字節(jié)異或不同的數(shù)0-F進(jìn)行解密,具體可以為對(duì)加密數(shù)據(jù)中的第一個(gè)字節(jié)異或A,加密數(shù)據(jù)中的第二個(gè)字節(jié)異或B,加密數(shù)據(jù)中的第三個(gè)字節(jié)異或C,加密數(shù)據(jù)中的第四個(gè)字節(jié)異或D,加密數(shù)據(jù)中的第五個(gè)字節(jié)異或E,加密數(shù)據(jù)中的第六個(gè)字節(jié)異或F,加密數(shù)據(jù)中的第七個(gè)字節(jié)異或G,以此類(lèi)推進(jìn)行遞增或遞減異或解密加密數(shù)據(jù)。

204、檢測(cè)所述解密的數(shù)據(jù)是否為惡意執(zhí)行程序。

其中,所述惡意執(zhí)行程序?yàn)榭蓤?zhí)行文件,具體可以為.exe文件,惡意執(zhí)行程序被執(zhí)行將會(huì)攻擊用戶(hù)的終端。在本發(fā)明實(shí)施例中可以靜態(tài)檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,也可通過(guò)動(dòng)態(tài)檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,還可以通過(guò)靜態(tài)與動(dòng)態(tài)結(jié)合的方式檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,本發(fā)明實(shí)施例不做具體限定。

在本發(fā)明實(shí)施例中,檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序的過(guò)程具體可以為:首先對(duì)解密的可以文檔進(jìn)行靜態(tài)檢測(cè),即對(duì)所述待檢測(cè)解密的可疑文檔中滿(mǎn)足預(yù)設(shè)可疑要求的關(guān)鍵字段進(jìn)行統(tǒng)計(jì)分析,如果統(tǒng)計(jì)分析結(jié)果指示待檢測(cè)解密的可疑文檔中滿(mǎn)足預(yù)設(shè)可疑要求的關(guān)鍵字超過(guò)預(yù)置閾值,則確定可疑文檔為惡意文檔;若可疑文檔中滿(mǎn)足預(yù)設(shè)可疑要求的關(guān)鍵字小于預(yù)置閾值,則對(duì)解密的可以文檔進(jìn)行動(dòng)態(tài)檢測(cè),即判斷所述待檢測(cè)解密的可疑文檔中是否包含觸發(fā)JavaScript執(zhí)行的函數(shù),如果是,則確定所述可疑文檔中為惡意文檔。

205、若所述解密的數(shù)據(jù)為惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。

在本發(fā)明實(shí)施例中,首先根據(jù)預(yù)置規(guī)則獲取可疑文檔,然后根據(jù)預(yù)置腳本引擎獲取所述可疑文檔中的加密數(shù)據(jù),并根據(jù)異或邏輯操作對(duì)所述加密數(shù)據(jù)進(jìn)行解密,最后檢測(cè)所述解密的數(shù)據(jù)是否為惡意執(zhí)行程序,若所述解密的數(shù)據(jù)為惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。由于本發(fā)明實(shí)施例首先通過(guò)邏輯異或操作對(duì)加密數(shù)據(jù)進(jìn)行解密,然后檢測(cè)解密的數(shù)據(jù)是否為惡意執(zhí)行程序,若是則確定所述可疑文檔為惡意文檔,從而通過(guò)本發(fā)明實(shí)施例解決了現(xiàn)有技術(shù)中加密的惡意執(zhí)行程序?qū)?huì)躲過(guò)特征碼匹配的檢測(cè)機(jī)制的問(wèn)題,進(jìn)而提高了惡意文檔的檢測(cè)精度。

本發(fā)明實(shí)施例提供了一種惡意文檔的檢測(cè)方法,首先根據(jù)異或邏輯操作對(duì)可疑文檔進(jìn)行解密,然后檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序,若可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。與目前通過(guò)特征碼匹配的方式檢測(cè)文檔是否為惡意文檔相比,本發(fā)明實(shí)施例首先根據(jù)異或邏輯操作對(duì)可疑文檔進(jìn)行解密,然后檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,若可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。從而通過(guò)本發(fā)明實(shí)施例解決了現(xiàn)有技術(shù)中加密的惡意執(zhí)行程序?qū)?huì)躲過(guò)特征碼匹配的檢測(cè)機(jī)制的問(wèn)題,進(jìn)而提高了惡意文檔的檢測(cè)精度。

進(jìn)一步地,本發(fā)明實(shí)施例提供一種惡意文檔的檢測(cè)裝置,如圖3所示,所述裝置包括:解密單元31、檢測(cè)單元32、確定單元33。

解密單元31,用于根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密;

檢測(cè)單元32,用于檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序;

確定單元33,用于若所述解密的可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。

需要說(shuō)明的是,本發(fā)明實(shí)施例提供的一種惡意文檔的檢測(cè)裝置所涉及各功能單元的其他相應(yīng)描述,可以參考圖1所示方法的對(duì)應(yīng)描述,在此不再贅述,但應(yīng)當(dāng)明確,本實(shí)施例中的裝置能夠?qū)?yīng)實(shí)現(xiàn)前述方法實(shí)施例中的全部?jī)?nèi)容。

本發(fā)明實(shí)施例提供了一種惡意文檔的檢測(cè)裝置,首先根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密,然后檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序,若可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。與目前通過(guò)特征碼匹配的方式檢測(cè)文檔是否為惡意文檔相比,本發(fā)明實(shí)施例首先根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密,然后檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,若可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。從而通過(guò)本發(fā)明實(shí)施例解決了現(xiàn)有技術(shù)中加密的惡意執(zhí)行程序?qū)?huì)躲過(guò)特征碼匹配的檢測(cè)機(jī)制的問(wèn)題,進(jìn)而提高了惡意文檔的檢測(cè)精度。

進(jìn)一步地,本發(fā)明實(shí)施例提供另一種惡意文檔的檢測(cè)裝置,如圖4所示,所述裝置包括:解密單元41、檢測(cè)單元42、確定單元43。

解密單元41,用于根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密;

檢測(cè)單元42,用于檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序;

確定單元43,用于若所述解密的可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。

所述解密單元41,具體用于根據(jù)異或邏輯操作對(duì)可疑文檔進(jìn)行解密。

進(jìn)一步地,所述裝置還包括:獲取單元;

所述獲取單元44,用于根據(jù)預(yù)置腳本引擎獲取所述可疑文檔中的加密數(shù)據(jù);

所述解密單元41,用于根據(jù)異或邏輯操作對(duì)所述加密數(shù)據(jù)進(jìn)行解密。

所述檢測(cè)單元42,用于檢測(cè)所述解密的數(shù)據(jù)是否為惡意執(zhí)行程序;

所述確定單元43,用于若所述解密的數(shù)據(jù)為惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。

所述解密單元41,用于通過(guò)預(yù)置異或算法規(guī)則對(duì)所述加密數(shù)據(jù)進(jìn)行異或邏輯操作解密。

所述解密單元41,具體用于對(duì)所述加密數(shù)據(jù)進(jìn)行逐字節(jié)異或相同的數(shù)解密;或?qū)λ黾用軘?shù)據(jù)進(jìn)行逐字節(jié)異或不同的數(shù)解密。

所述獲取單元44,還用于根據(jù)預(yù)置規(guī)則獲取所述可疑文檔。

對(duì)于本發(fā)明實(shí)施例,所述獲取單元44包括:

判斷模塊441,用于根據(jù)進(jìn)程啟動(dòng)關(guān)系、崩潰進(jìn)程、填充數(shù)據(jù)Shellcode、掃描到的函數(shù)判斷執(zhí)行的文檔是否合法;

確定模塊442,用于若執(zhí)行的文檔不合法,則確定所述執(zhí)行的文檔為可疑文檔。

需要說(shuō)明的是,本發(fā)明實(shí)施例提供的一種惡意文檔的檢測(cè)裝置所涉及各功能單元的其他相應(yīng)描述,可以參考圖2所示方法的對(duì)應(yīng)描述,在此不再贅述,但應(yīng)當(dāng)明確,本實(shí)施例中的裝置能夠?qū)?yīng)實(shí)現(xiàn)前述方法實(shí)施例中的全部?jī)?nèi)容。

本發(fā)明實(shí)施例提供了另一種惡意文檔的檢測(cè)裝置,首先根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密,然后檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序,若可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。與目前通過(guò)特征碼匹配的方式檢測(cè)文檔是否為惡意文檔相比,本發(fā)明實(shí)施例首先根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密,然后檢測(cè)解密的可疑文檔中是否包含惡意執(zhí)行程序,若可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。從而通過(guò)本發(fā)明實(shí)施例解決了現(xiàn)有技術(shù)中加密的惡意執(zhí)行程序?qū)?huì)躲過(guò)特征碼匹配的檢測(cè)機(jī)制的問(wèn)題,進(jìn)而提高了惡意文檔的檢測(cè)精度。

本發(fā)明公開(kāi)了A1、一種惡意文檔的檢測(cè)方法,包括:

根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密;

檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序;

若包含,則確定所述可疑文檔為惡意文檔。

A2、如A1所述的方法,所述根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密包括:

根據(jù)異或邏輯操作對(duì)所述可疑文檔進(jìn)行解密。

A3、如A2所述的方法,所述根據(jù)異或邏輯操作對(duì)可疑文檔進(jìn)行解密之前,所述方法還包括:

根據(jù)預(yù)置腳本引擎獲取所述可疑文檔中的加密數(shù)據(jù);

所述根據(jù)異或邏輯操作對(duì)可疑文檔進(jìn)行解密包括:

根據(jù)異或邏輯操作對(duì)所述加密數(shù)據(jù)進(jìn)行解密。

A4、如A3所述的方法,所檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序包括:

檢測(cè)所述解密的數(shù)據(jù)是否為惡意執(zhí)行程序;

所述若包含,則確定所述可疑文檔為惡意文檔包括:

若所述解密的數(shù)據(jù)為惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。

A5、如A3所述的方法,所述根據(jù)異或邏輯操作對(duì)所述加密數(shù)據(jù)進(jìn)行解密包括:

通過(guò)預(yù)置異或算法規(guī)則對(duì)所述加密數(shù)據(jù)進(jìn)行異或邏輯操作解密。

A6、如A5所述的方法,所述通過(guò)預(yù)置異或算法規(guī)則對(duì)所述加密數(shù)據(jù)進(jìn)行異或邏輯操作解密包括:

對(duì)所述加密數(shù)據(jù)進(jìn)行逐字節(jié)異或相同的數(shù)解密;或

對(duì)所述加密數(shù)據(jù)進(jìn)行逐字節(jié)異或不同的數(shù)解密。

A7、如A2所述的方法,所述根據(jù)異或邏輯操作對(duì)可疑文檔進(jìn)行解密之前,所述方法還包括:

根據(jù)預(yù)置規(guī)則獲取所述可疑文檔。

A8、如A7所述的方法,所述根據(jù)預(yù)置規(guī)則獲取所述可以文檔包括:

根據(jù)進(jìn)程啟動(dòng)關(guān)系、崩潰進(jìn)程、填充數(shù)據(jù)Shellcode、掃描到的函數(shù)判斷執(zhí)行的文檔是否合法;

若不合法,則確定所述執(zhí)行的文檔為可疑文檔。

B9、一種惡意文檔的檢測(cè)裝置,包括:

解密單元,用于根據(jù)預(yù)置邏輯操作對(duì)可疑文檔進(jìn)行解密;

檢測(cè)單元,用于檢測(cè)所述解密的可疑文檔中是否包含惡意執(zhí)行程序;

確定單元,用于若所述解密的可疑文檔中包含惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。

B10、如B9所述的裝置,

所述解密單元,具體用于根據(jù)異或邏輯操作對(duì)可疑文檔進(jìn)行解密。

B11、如B10所述的裝置,所述裝置還包括:獲取單元;

所述獲取單元,用于根據(jù)預(yù)置腳本引擎獲取所述可疑文檔中的加密數(shù)據(jù);

所述解密單元,用于根據(jù)異或邏輯操作對(duì)所述加密數(shù)據(jù)進(jìn)行解密。

B12、如B11所述的裝置,

所述檢測(cè)單元,用于檢測(cè)所述解密的數(shù)據(jù)是否為惡意執(zhí)行程序;

所述確定單元,用于若所述解密的數(shù)據(jù)為惡意執(zhí)行程序,則確定所述可疑文檔為惡意文檔。

B13、如B11所述的裝置,

所述解密單元,用于通過(guò)預(yù)置異或算法規(guī)則對(duì)所述加密數(shù)據(jù)進(jìn)行異或邏輯操作解密。

B14、如B13所述的裝置,

所述解密單元,具體用于對(duì)所述加密數(shù)據(jù)進(jìn)行逐字節(jié)異或相同的數(shù)解密;或?qū)λ黾用軘?shù)據(jù)進(jìn)行逐字節(jié)異或不同的數(shù)解密。

B15、如B10所述的裝置,

所述獲取單元,還用于根據(jù)預(yù)置規(guī)則獲取所述可疑文檔。

B16、如B15所述的裝置,所述獲取單元包括:

判斷模塊,用于根據(jù)進(jìn)程啟動(dòng)關(guān)系、崩潰進(jìn)程、填充數(shù)據(jù)Shellcode、掃描到的函數(shù)判斷執(zhí)行的文檔是否合法;

確定模塊,用于若執(zhí)行的文檔不合法,則確定所述執(zhí)行的文檔為可疑文檔。

在上述實(shí)施例中,對(duì)各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒(méi)有詳述的部分,可以參見(jiàn)其他實(shí)施例的相關(guān)描述。

可以理解的是,上述方法及裝置中的相關(guān)特征可以相互參考。另外,上述實(shí)施例中的“第一”、“第二”等是用于區(qū)分各實(shí)施例,而并不代表各實(shí)施例的優(yōu)劣。

所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的系統(tǒng),裝置和單元的具體工作過(guò)程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過(guò)程,在此不再贅述。

在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類(lèi)系統(tǒng)所要求的結(jié)構(gòu)是顯而易見(jiàn)的。此外,本發(fā)明也不針對(duì)任何特定編程語(yǔ)言。應(yīng)當(dāng)明白,可以利用各種編程語(yǔ)言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語(yǔ)言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。

在此處所提供的說(shuō)明書(shū)中,說(shuō)明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒(méi)有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說(shuō)明書(shū)的理解。

類(lèi)似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開(kāi)并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開(kāi)的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說(shuō),如下面的權(quán)利要求書(shū)所反映的那樣,發(fā)明方面在于少于前面公開(kāi)的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書(shū)由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。

本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中??梢园褜?shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過(guò)程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說(shuō)明書(shū)(包括伴隨的權(quán)利要求、摘要和附圖)中公開(kāi)的所有特征以及如此公開(kāi)的任何方法或者設(shè)備的所有過(guò)程或單元進(jìn)行組合。除非另外明確陳述,本說(shuō)明書(shū)(包括伴隨的權(quán)利要求、摘要和附圖)中公開(kāi)的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來(lái)代替。

此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書(shū)中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來(lái)使用。

本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來(lái)實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的惡意文檔的檢測(cè)方法及裝置中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。

應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說(shuō)明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來(lái)實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過(guò)同一個(gè)硬件項(xiàng)來(lái)具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱(chēng)。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1