欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種惡意程序檢測方法及裝置的制造方法_2

文檔序號:9888026閱讀:來源:國知局
列中的第η個惡意特征相同,其中,η為區(qū)間(O,N]內(nèi)的整數(shù)。
[0046]結(jié)合第二方面或上述第二方面的任意一種可能的實現(xiàn)方式,在第二方面的四種可能的實現(xiàn)方式中,
[0047]所述獲取模塊,還用于獲取網(wǎng)頁源代碼,并對所述網(wǎng)頁源代碼進行解混淆生成所述網(wǎng)頁代碼。
[0048]本發(fā)明實施例提供的惡意程序的檢測方法及裝置,獲取網(wǎng)頁代碼,運行網(wǎng)頁代碼并通過預(yù)設(shè)程序記錄運行代碼,運行代碼包括API函數(shù)序列,將API函數(shù)序列與已經(jīng)存儲在惡意特征庫中的惡意特征序列進行比較,若API函數(shù)序列包含的N個API函數(shù)與惡意特征序列中的惡意特征相同的數(shù)量大于或等于第一閾值,則確認網(wǎng)頁代碼中包含惡意程序。這樣,先通過預(yù)設(shè)程序運行網(wǎng)頁代碼,不生成運行結(jié)果,可以記錄網(wǎng)頁代碼運行時生成的運行代碼,并且,對于具有相同功能,但編寫格式不同的網(wǎng)頁代碼,在運行時調(diào)用的是相同的API函數(shù),所以生成的運行代碼的格式都是相同的,之后,再將運行代碼包括的N個API函數(shù)與惡意特征序列包含的惡意特征進行比較,而現(xiàn)有技術(shù)中是將網(wǎng)頁代碼與惡意特征序列比較,而網(wǎng)頁代碼編寫格式較多,惡意特征序列可能提取不完全,有些惡意特征序列可能沒有存儲在惡意特征庫中,而本發(fā)明是直接將網(wǎng)頁代碼調(diào)用的底層API函數(shù)序列與惡意特征序列比較,無論網(wǎng)頁代碼用什么格式編寫,只要實現(xiàn)相同的功能,其調(diào)用的底層API函數(shù)序列都是相同的,這樣就可以解決現(xiàn)有技術(shù)中網(wǎng)頁代碼的編寫格式比較多,惡意特征序列可能提取不全,導(dǎo)致在網(wǎng)頁代碼與惡意特征進行匹配的過程中,匹配率較低的問題。
【附圖說明】
[0049]為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0050]圖1為本發(fā)明實施例提供的一種惡意程序檢測方法流程圖;
[0051]圖2為本發(fā)明實施例提供的另一種惡意程序檢測方法流程圖;
[0052]圖3為本發(fā)明實施例提供的一種檢測裝置結(jié)構(gòu)示意圖;
[0053]圖4為本發(fā)明另一實施例提供的一種檢測裝置結(jié)構(gòu)示意圖。
【具體實施方式】
[0054]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0055]本發(fā)明實施例提供一種惡意程序檢測方法,應(yīng)用于混淆在網(wǎng)頁代碼中的惡意程序的檢測。以網(wǎng)頁木馬為例進行說明,并不代表本發(fā)明只局限于此。在使用電子設(shè)備瀏覽網(wǎng)頁的過程中,經(jīng)常會遭受到網(wǎng)頁木馬的攻擊,對人們的信息安全造成了威脅。其中,電子設(shè)備可以是電腦,也可以是手機,在此,本發(fā)明不做具體的限制。通常情況下,大多數(shù)網(wǎng)頁木馬會混淆在網(wǎng)頁代碼中,通過混淆技術(shù)改變網(wǎng)頁代碼的語法特征,隱藏網(wǎng)頁代碼內(nèi)部的邏輯關(guān)系,從而達到逃避檢測的目的。
[0056]如圖1所示,本發(fā)明實施例提供的惡意程序檢測方法,包括以下步驟:
[0057]S101、獲取網(wǎng)頁代碼。
[0058]可選的,對于沒有通過混淆技術(shù)混淆惡意程序的網(wǎng)頁,可以通過網(wǎng)頁直接獲取該網(wǎng)頁的網(wǎng)頁代碼,對于通過混淆技術(shù)混淆惡意程序的網(wǎng)頁,可以先獲取網(wǎng)頁的網(wǎng)頁源代碼,之后通過解混淆技術(shù),得到網(wǎng)頁的網(wǎng)頁代碼。
[0059]S102、運行網(wǎng)頁代碼并通過預(yù)設(shè)程序記錄運行代碼。
[0060]其中,運行代碼為網(wǎng)頁代碼在運行時生成的代碼,運行代碼包括API (Applicat1nProgramming Interface,應(yīng)用程序接口)函數(shù)序列,API函數(shù)序列包含N個API函數(shù),N為正整數(shù)。
[0061]可選的,預(yù)設(shè)程序可以是Hook(鉤子)程序,Hook是一種用于改變API函數(shù)序列執(zhí)行結(jié)果的技術(shù)。具體的,可以通過運行Hook程序,將WebCore加載DOM的結(jié)構(gòu)中的節(jié)點時調(diào)用的Ml個API函數(shù)以及通過JavasciptCore運行動態(tài)代碼時調(diào)用的M2個API函數(shù)攔截下來,并記錄N個API函數(shù)的信息,使得網(wǎng)頁代碼在運行之后,不生成運行結(jié)果,可以記錄網(wǎng)頁代碼運行時生成的運行代碼,并且,對于具有相同功能,但編寫格式不同的網(wǎng)頁代碼,在運行時調(diào)用的是相同的API函數(shù),所以生成的運行代碼的格式都是相同的,這樣,運行代碼與惡意特征庫中的惡意特征進行比較,可以提高匹配成功率。
[0062]S103、將API函數(shù)序列與已經(jīng)存儲在惡意特征庫中的惡意特征序列進行比較。
[0063]其中,惡意特征庫用于存儲惡意特征序列,惡意特征庫可以將常見的惡意特征序列存儲在惡意特征庫中。惡意特征庫包含至少一個惡意特征序列,一個惡意特征序列包含至少一個惡意特征。具體的,將API函數(shù)序列與已經(jīng)存儲在惡意特征庫中的惡意特征序列進行比較,若API函數(shù)序列包含的N個API函數(shù)與惡意特征序列中的惡意特征相同的數(shù)量大于或等于第一閾值,則確認網(wǎng)頁代碼中包含惡意程序??蛇x的,第一閾值可以根據(jù)實際情況進行預(yù)先設(shè)置,在此,對于第一閾值的具體值,本發(fā)明不做限制。
[0064]本發(fā)明實施例提供的惡意程序的檢測方法,獲取網(wǎng)頁代碼,運行網(wǎng)頁代碼并通過預(yù)設(shè)程序記錄運行代碼,運行代碼包括API函數(shù)序列,將API函數(shù)序列與已經(jīng)存儲在惡意特征庫中的惡意特征序列進行比較,若API函數(shù)序列包含的N個API函數(shù)與惡意特征序列中的惡意特征相同的數(shù)量大于或等于第一閾值,則確認網(wǎng)頁代碼中包含惡意程序。這樣,先通過預(yù)設(shè)程序運行網(wǎng)頁代碼,不生成運行結(jié)果,可以記錄網(wǎng)頁代碼運行時生成的運行代碼,并且,對于具有相同功能,但編寫格式不同的網(wǎng)頁代碼,在運行時調(diào)用的是相同的API函數(shù),所以生成的運行代碼的格式都是相同的,之后,再將運行代碼包括的N個API函數(shù)與惡意特征序列包含的惡意特征進行比較,與現(xiàn)有技術(shù)相比,由于無需與數(shù)目眾多的從具有相同、但編寫格式不同的網(wǎng)頁代碼中提取的惡意特征進行匹配,提高了匹配效率。
[0065]并且現(xiàn)有技術(shù)中是將待檢測的網(wǎng)頁代碼與惡意特征進行比較,而由于網(wǎng)頁代碼編寫格式較多,在構(gòu)建惡意特征庫中的惡意特征時,收集具有相同、但編寫格式不同的網(wǎng)頁代碼的樣本可能不完備,導(dǎo)致網(wǎng)頁代碼惡意特征可能提取不完全,有些惡意特征可能沒有存儲在惡意特征庫中,因而還存在漏檢或檢出率不佳的問題,而本發(fā)明是直接將網(wǎng)頁代碼調(diào)用的底層API函數(shù)序列與惡意特征序列比較,無論網(wǎng)頁代碼用什么格式編寫,只要實現(xiàn)相同的功能,其調(diào)用的底層API函數(shù)序列都是相同的,這樣還提高了檢測的準確性。
[0066]基于圖1對應(yīng)的實施例,本發(fā)明實施例提供另一種惡意程序檢測方法,如圖2所示,該方法可以包括:
[0067]S201、獲取網(wǎng)頁源代碼。
[0068]可選的,可以通過網(wǎng)頁獲取網(wǎng)頁源代碼??蛇x的,可以將通過混淆技術(shù)混淆惡意程序之后的代碼定義為網(wǎng)頁源代碼,將網(wǎng)頁源代碼進行解混淆之后的代碼定義為網(wǎng)頁代碼。其中,混淆技術(shù)主要是通過特定的算法對腳本做編碼、代碼分片(指代碼被拆分到不同的網(wǎng)頁,圖片中)以及代碼中插入垃圾代碼等,使得原本的腳本代碼變?yōu)椴灰鬃R別的代碼,從而躲避檢測。
[0069]S202、對網(wǎng)頁源代碼進行解混淆生成網(wǎng)頁代碼。
[0070]可選的,大多數(shù)惡意程序通過混淆技術(shù)混淆在網(wǎng)頁中,在進行惡意程序檢測時,通常會采用解混淆技術(shù),將網(wǎng)頁源代碼進行解混淆生成網(wǎng)頁代碼,但并非所有的惡意程序都是通過混淆技術(shù)混淆在網(wǎng)頁中,對于沒有通過混淆技術(shù)混淆惡意程序的網(wǎng)頁,可以通過網(wǎng)頁直接獲取網(wǎng)頁代碼。
[0071]具體的,對網(wǎng)頁源代碼進行解混淆,解混淆可以通過特定的算法對網(wǎng)頁源代碼進行解混淆,得到混淆之前的代碼,即網(wǎng)頁代碼。網(wǎng)頁代碼可以包括靜態(tài)代碼及動態(tài)代碼,將網(wǎng)頁代碼解析之后,網(wǎng)頁代碼中數(shù)據(jù)結(jié)構(gòu)不發(fā)生變化的代碼為靜態(tài)代碼,將網(wǎng)頁代碼解析之后,網(wǎng)頁代碼中數(shù)據(jù)結(jié)構(gòu)發(fā)生變化的代碼為動態(tài)代碼。
[0072]可選的,網(wǎng)頁代碼可以包括至少一個標簽,一個標簽包含至少一個API (Applicat1n Programming Interface,應(yīng)用程序接口)函數(shù),至少一個標簽對應(yīng)N個API函數(shù)。其中,對于靜態(tài)代碼而言,一個標簽可以是一個封裝的惡意特征,對于動態(tài)代碼而言,一個標簽可以是一個封裝的函數(shù)。
[0073]S203、運行網(wǎng)頁代碼并通過預(yù)設(shè)程序記錄運行代碼。
[0074]其中,運行代碼為網(wǎng)頁代碼在運行時生成的代碼,運行代碼包括應(yīng)用程序接口 API函數(shù)序列,API函數(shù)序列包含N個API函數(shù),N為正整數(shù)。
[0075]可選的,運行網(wǎng)頁代碼包括對網(wǎng)頁代碼進行解析,通過網(wǎng)頁代碼中包含的標簽調(diào)用N個API函數(shù)以及獲取API函數(shù)的信息。
[0076]一般的,可以將網(wǎng)頁代碼送至Webkit(—種開源的瀏覽器引擎)進行解析。在Webkit中,主要通過WebCore (網(wǎng)頁核心)和JavasciptCore (Java腳本核心)對網(wǎng)頁代碼進行解析。其中,WebCore主要負責對靜態(tài)代碼進行解析,JavasciptCore主要負責對動態(tài)代碼進行解析。靜態(tài)代碼及動態(tài)代碼中均包括至少一個標簽,一個標簽包含至少一個API函數(shù)。
[0077]可選的,WebCore將靜態(tài)代碼進行解析之后,獲取DOM(Document Object Model,文檔對象模型)結(jié)構(gòu)中的節(jié)點所調(diào)用的M1個API函數(shù),并獲取M1個API函數(shù)的信息。其中,API函數(shù)的信息包括API函數(shù)的名稱及A
當前第2頁1 2 3 4 5 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
北辰区| 江达县| 泰顺县| 五原县| 崇州市| 阿克| 仁化县| 永吉县| 东丽区| 哈巴河县| 尚义县| 昌乐县| 西华县| 金塔县| 镇远县| 洛隆县| 达拉特旗| 绿春县| 东阳市| 茂名市| 顺昌县| 唐山市| 当阳市| 龙泉市| 乐陵市| 喜德县| 林西县| 涟源市| 余庆县| 阿克陶县| 河源市| 娄烦县| 凤冈县| 岫岩| 九寨沟县| 怀仁县| 屏东县| 郯城县| 鄂托克前旗| 右玉县| 兴国县|