本發(fā)明涉及信息安全技術(shù)領(lǐng)域,尤其涉及一種檢測無實體文件惡意代碼的方法及系統(tǒng)。
背景技術(shù):
傳統(tǒng)的惡意代碼檢測軟件是遍歷計算機磁盤中的所有文件,提取特征碼進行對比,以及使用特征對內(nèi)存進行匹配,這種方法無法有效檢出未知的無實體文件類惡意代碼。
已經(jīng)有越來越多的APT(高級可持續(xù)性威脅)使用無實體文件的攻擊方法,利用這種無實體文件的惡意代碼在入侵主機系統(tǒng)后,將自身或衍生的惡意代碼注入到系統(tǒng)內(nèi)存中,并不在磁盤中產(chǎn)生或存在實體文件,傳統(tǒng)終端安全產(chǎn)品對這種無實體文件的攻擊檢出較弱。無實體文件類惡意代碼有可能將惡意代碼寫入注冊表中,或惡意代碼運行后刪除本地文件,這都使得已有的惡意代碼檢測工具束手無策。
技術(shù)實現(xiàn)要素:
針對上述技術(shù)問題,本發(fā)明基于進程和模塊與文件的對應(yīng)關(guān)系來判定是否存在無實體文件惡意代碼,解決了傳統(tǒng)基于特征碼的檢測方法無法有效識別無實體文件類惡意代碼的問題。
本發(fā)明采用如下方法來實現(xiàn):一種檢測無實體文件惡意代碼的方法,包括:
遍歷系統(tǒng)內(nèi)正在運行的進程和模塊;
獲取所有進程和模塊對應(yīng)的路徑和文件名并逐條形成記錄;
根據(jù)記錄中的路徑和文件名判斷在系統(tǒng)磁盤下是否存在對應(yīng)的文件,若存在則放棄相應(yīng)記錄,若不存在則阻止相關(guān)進程和模塊的運行,并進行深度檢測。
進一步地,所述獲取所有進程和模塊對應(yīng)的路徑和文件名并逐條形成記錄,具體為:獲取所有進程和模塊對應(yīng)的路徑和文件名,并以列表的形式記錄在內(nèi)存中。
進一步地,所述根據(jù)記錄中的路徑和文件名判斷在系統(tǒng)磁盤下是否存在對應(yīng)的文件之前,還包括:將路徑和文件名記錄逐條與白名單匹配,放棄與白名單成功匹配的路徑和文件名記錄。
更進一步地,所述白名單,具體為根據(jù)系統(tǒng)文件的路徑和文件名生成的白名單。
上述方法中,所述進行深度檢測,具體為:分析并判斷相關(guān)進程和模塊是否存在惡意代碼,若存在則提取特征添加到特征庫,若不存在,則提取路徑和文件名添加到白名單。
本發(fā)明可以采用如下系統(tǒng)來實現(xiàn):一種檢測無實體文件惡意代碼的系統(tǒng),包括:
進程和模塊遍歷模塊,用于遍歷系統(tǒng)內(nèi)正在運行的進程和模塊;
路徑和文件名獲取模塊,用于獲取所有進程和模塊對應(yīng)的路徑和文件名并逐條形成記錄;
惡意代碼判定模塊,用于根據(jù)記錄中的路徑和文件名判斷在系統(tǒng)磁盤下是否存在對應(yīng)的文件,若存在則放棄相應(yīng)記錄,若不存在則阻止相關(guān)進程和模塊的運行,并進行深度檢測。
進一步地,所述路徑和文件名獲取模塊,具體用于:獲取所有進程和模塊對應(yīng)的路徑和文件名,并以列表的形式記錄在內(nèi)存中。
進一步地,還包括:白名單匹配模塊,用于將路徑和文件名記錄逐條與白名單匹配,放棄與白名單成功匹配的路徑和文件名記錄。
更進一步地,所述白名單,具體為根據(jù)系統(tǒng)文件的路徑和文件名生成的白名單。
上述系統(tǒng)中,所述進行深度檢測,具體為:分析并判斷相關(guān)進程和模塊是否存在惡意代碼,若存在則提取特征添加到特征庫,若不存在,則提取路徑和文件名添加到白名單。
綜上,本發(fā)明通過監(jiān)控系統(tǒng)內(nèi)正在運行的進程和模塊,并獲取進程和模塊所對應(yīng)的路徑和文件名,判斷在系統(tǒng)磁盤中是否存在對應(yīng)的文件,若存在則初步判定不存在無實體文件類惡意代碼,若不存在則認為高度可疑,可以繼續(xù)進行深度檢測,進而判定是否存在惡意代碼。
有益效果為:本發(fā)明與傳統(tǒng)基于內(nèi)存檢測不同的是,不依賴于內(nèi)存特征進行匹配,而是基于進程和模塊與文件的對應(yīng)關(guān)系來識別并判定是否存在惡意代碼。本發(fā)明所述方法及系統(tǒng)能夠應(yīng)用在反病毒產(chǎn)品中,進而解決了傳統(tǒng)基于特征碼的檢測方法無法有效檢測無實體文件惡意代碼的問題。
附圖說明
為了更清楚地說明本發(fā)明的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明中記載的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明提供的一種檢測無實體文件惡意代碼的方法實施例1流程圖;
圖2為本發(fā)明提供的一種檢測無實體文件惡意代碼的方法實施例2流程圖;
圖3為本發(fā)明提供的一種檢測無實體文件惡意代碼的系統(tǒng)實施例結(jié)構(gòu)圖。
具體實施方式
本發(fā)明給出了一種檢測無實體文件惡意代碼的方法及系統(tǒng)實施例,為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實施例中的技術(shù)方案,并使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖對本發(fā)明中技術(shù)方案作進一步詳細的說明:
本發(fā)明首先提供了一種檢測無實體文件惡意代碼的方法實施例1,如圖1所示,包括:
S101:遍歷系統(tǒng)內(nèi)正在運行的進程和模塊;
其中,所述模塊為DLL動態(tài)鏈接庫文件,所述DLL文件放置于系統(tǒng)中,當(dāng)執(zhí)行某一個程序時,相應(yīng)的DLL文件會被調(diào)用。
S102:獲取所有進程和模塊對應(yīng)的路徑和文件名并逐條形成記錄;
具體為:獲取所有進程和模塊對應(yīng)的路徑和文件名,并以列表的形式記錄在內(nèi)存中。
S103:根據(jù)記錄中的路徑和文件名判斷在系統(tǒng)磁盤下是否存在對應(yīng)的文件,若存在則放棄相應(yīng)記錄,若不存在則阻止相關(guān)進程和模塊的運行,并進行深度檢測。
其中,當(dāng)判定記錄中的路徑和文件名在系統(tǒng)磁盤下不存在對應(yīng)的文件,則判定相關(guān)進程和模塊是高度可疑的,則調(diào)用反病毒產(chǎn)品或者由分析人員進行進一步地分析和判斷,進而最終判定涉及的進程和模塊是否存在無實體類惡意代碼。若存在則提取特征添加到特征庫,若不存在,則提取路徑和文件名添加到白名單。
本發(fā)明同時提供了一種檢測無實體文件惡意代碼的方法實施例2,如圖2所示,包括:
S201:遍歷系統(tǒng)內(nèi)正在運行的進程和模塊。
S202:獲取所有進程和模塊對應(yīng)的路徑和文件名并逐條形成記錄。
具體為:獲取所有進程和模塊對應(yīng)的路徑和文件名,并以列表的形式記錄在內(nèi)存中。
S203:將路徑和文件名記錄逐條與白名單匹配,放棄與白名單成功匹配的路徑和文件名記錄。
其中,所述白名單,可以但不限于:根據(jù)系統(tǒng)文件的路徑和文件名生成的白名單。目的在于過濾系統(tǒng)進程和模塊。也可以是用戶根據(jù)需要添加的認為是安全的進程和模塊。
S204:根據(jù)記錄中的路徑和文件名判斷在系統(tǒng)磁盤下是否存在對應(yīng)的文件,若存在則放棄相應(yīng)記錄,若不存在則阻止相關(guān)進程和模塊的運行,并進行深度檢測。
其中,所述進行深度檢測,具體為:分析并判斷相關(guān)進程和模塊是否存在惡意代碼,若存在則提取特征添加到特征庫,若不存在,則提取路徑和文件名添加到白名單。
本發(fā)明其次提供了一種檢測無實體文件惡意代碼的系統(tǒng)實施例,如圖3所示,包括:
進程和模塊遍歷模塊301,用于遍歷系統(tǒng)內(nèi)正在運行的進程和模塊;
路徑和文件名獲取模塊302,用于獲取所有進程和模塊對應(yīng)的路徑和文件名并逐條形成記錄;
惡意代碼判定模塊303,用于根據(jù)記錄中的路徑和文件名判斷在系統(tǒng)磁盤下是否存在對應(yīng)的文件,若存在則放棄相應(yīng)記錄,若不存在則阻止相關(guān)進程和模塊的運行,并進行深度檢測。
優(yōu)選地,所述路徑和文件名獲取模塊,具體用于:獲取所有進程和模塊對應(yīng)的路徑和文件名,并以列表的形式記錄在內(nèi)存中。
優(yōu)選地,還包括:白名單匹配模塊,用于將路徑和文件名記錄逐條與白名單匹配,放棄與白名單成功匹配的路徑和文件名記錄。
更優(yōu)選地,所述白名單,具體為根據(jù)系統(tǒng)文件的路徑和文件名生成的白名單。
上述系統(tǒng)實施例中,所述進行深度檢測,具體為:分析并判斷相關(guān)進程和模塊是否存在惡意代碼,若存在則提取特征添加到特征庫,若不存在,則提取路徑和文件名添加到白名單。
本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同或相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
如上所述,上述實施例給出了一種檢測無實體文件惡意代碼的方法及系統(tǒng)實施例,首先獲取系統(tǒng)內(nèi)運行的進程和模塊,獲取進程和模塊對應(yīng)的路徑和文件名,并依據(jù)記錄中的路徑和文件名判斷系統(tǒng)磁盤下是否存在對應(yīng)的文件,若不存在則判定疑似存在無實體類惡意代碼,并進行深度分析確認。本發(fā)明提供的上述實施例能夠彌補傳統(tǒng)檢測方法無法檢測無實體文件類惡意代碼的問題,能夠有效的識別和阻止無實體文件類惡意代碼。
以上實施例用以說明而非限制本發(fā)明的技術(shù)方案。不脫離本發(fā)明精神和范圍的任何修改或局部替換,均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。