[發明專利]一種可執行文件處理方法和裝置有效
| 申請號: | 201210262975.2 | 申請日: | 2012-07-26 |
| 公開(公告)號: | CN102855119A | 公開(公告)日: | 2013-01-02 |
| 發明(設計)人: | 周輝;徐傳宇;李智鵬 | 申請(專利權)人: | 北京奇虎科技有限公司;奇智軟件(北京)有限公司 |
| 主分類號: | G06F9/30 | 分類號: | G06F9/30;G06F17/30;G06F21/00 |
| 代理公司: | 工業和信息化部電子專利中心 11010 | 代理人: | 梁軍 |
| 地址: | 100088 北京市西城區新*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 可執行文件 處理 方法 裝置 | ||
技術領域
本發明涉及互聯網技術領域,尤其涉及一種可執行文件處理方法和裝置。?
背景技術
隨著互聯網的發展,互聯網用戶的極具增加,互聯網安全的形勢也越來越嚴峻。互聯網安全的主要威脅之一來自木馬病毒地傳播。木馬病毒主要以可執行文件為載體,所以對于海量可執行文件的分類對于木馬病毒的識別非常有意義。?
對于海量的可執行文件,由其對于病毒分析員來說,需要有效的方法對其進行分類,分析一個可執行文件可以代表同一類的文件,如此才能夠完成對海量可執行文件的分析工作。?
目前對可執行文件分類的方法包括:?
一,可執行文件外部特征分類技術;?
此技術可以看作是一類方法的綜合應用。對于可執行文件有許多外部特征,比如可執行文件的大小,可執行文件的圖標等。文件大小與圖標也是目前最為常見的分類方法。?
其中,按照可執行文件大小分類時,文件大小相差不超過512個字節,都可以分為同一個類型;按照可執行文件圖標分類時,擁有相同圖標的可執行文件可以分為同一類。?
上述可執行文件外部特征分類技術雖然簡單易行,但缺點也顯而易見,主要表現為:外部特征有限,并且容易變化。對于可執行文件大小,只需要增加附加數據,就可以任意修改文件大小,而并不影響可執行文件功能。對于文件?圖標,并不是所有的可執行文件都擁有圖標,比如動態鏈接庫就不需要圖標,而目前許多木馬病毒都是以動態鏈接庫的面貌出現,所以對于這部分文件無法使用此方法。?
二、二進制分類技術;?
所述二進制分類技術是通過識別可執行文件的二進制特征對文件進行分類的。例如著名的編譯器識別工具PEID就是使用二進制特征對文件進行編譯器歸類。通過比對可執行文件入口點的二進制串,以及由此二進制串中提供的可執行文件中另外一處特征點,進行編譯器歸類。?
PEID針對二進制特征也作了優化,比如特征取到代碼段,這樣無法隨意修改二進制特征,否則就可能使得程序執行不正常;另外二進制特征支持通匹符,這樣可以具有一定的通用性。?
然而,上述二進制分類技術,非常容易被干擾;對于二進制特征,只需要修改其中特定的字節就可以干擾分類的結果;并且二進制特征的選擇需要避開可執行文件中地址相關的指令或代碼,以保證二進制特征的正確性。另外,二進制數據庫畢竟是有限的,會出現無法分類的情況。?
發明內容
本發明提供一種可執行文件處理方法和裝置,用以解決現有技術采用的分類方法不能對可執行文件進行有效分類的問題。?
為了解決上述問題,本發明采用的技術方案如下:?
一方面,本發明提供一種可執行文件處理方法,包括:?
基于可執行文件入口點文件偏移,查找可執行文件入口點;?
以預先設定的分析步數X為基準,依次對所述入口點后的各指令進行分析,獲取可執行文件入口點后X條指令的操作碼opcode,得到opcode組;?
以所述opcode組為分類條件,對各所述可執行文件進行分類處理。?
進一步地,本發明所述方法中,所述預先設定的分析步數X=2n,其中,n為?正整數。?
進一步地,本發明所述方法中,所述opcode組由X條指令對應的各opcode的第一個字節組成。?
進一步地,本發明所述方法中,還包括:?
將各所述可執行文件的opcode組與殺毒引擎的病毒記錄相關聯;?
所述殺毒引擎進行查毒時,獲取待檢查可執行文件的opcode組,判斷該opocde組是否與某一條或幾條病毒記錄相關聯,若是,利用當前關聯的病毒記錄文件對所述待檢查可執行文件進行檢查。?
進一步地,本發明所述方法中,當無法獲取滿足所述分析步數X的opcode時,在組成opcode組時,將剩余位設置為空;或者,直接將當前獲取的opcode組成opcode組。?
進一步地,本發明所述方法中,利用反匯編引擎順序解析所述入口點指令,并從反匯編引擎中獲得入口點指令的指令長度、指令opcode和指令類型。?
進一步地,本發明所述方法中,所述依次對入口點后的各指令進行分析,獲取可執行文件入口點后X條指令的操作碼opcode,具體包括:?
步驟1,創建指令流棧;?
步驟2,判斷當前分析的指令是否為Transfer指令,若是,執行步驟3;否則,執行步驟4;?
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京奇虎科技有限公司;奇智軟件(北京)有限公司,未經北京奇虎科技有限公司;奇智軟件(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210262975.2/2.html,轉載請聲明來源鉆瓜專利網。





