[發明專利]一種基于統計方法的加殼可執行文件識別方法及系統無效
| 申請號: | 200810224318.2 | 申請日: | 2008-10-17 |
| 公開(公告)號: | CN101388062A | 公開(公告)日: | 2009-03-18 |
| 發明(設計)人: | 安丙春 | 申請(專利權)人: | 北京銳安科技有限公司 |
| 主分類號: | G06F21/22 | 分類號: | G06F21/22 |
| 代理公司: | 北京君尚知識產權代理事務所 | 代理人: | 余功勛 |
| 地址: | 100044北京市海淀*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 統計 方法 可執行文件 識別 系統 | ||
技術領域
本發明屬于數據安全領域,具體的說屬于惡意代碼分析過程中,對帶殼的可執行程序進行自動識別的一種方法及系統。
背景技術
加殼的全稱應該是可執行程序資源壓縮。是保護可執行文件的一種常用手段。加殼過的程序可以直接運行,但是不能直接使用反匯編技術查看程序的反匯編代碼,要想看反匯編代碼,需要經過脫殼之后才可以。
加殼:其實是利用特殊的算法,對EXE、DLL文件里的資源進行壓縮。類似WINZIP的效果,只是壓縮之后的文件,仍然是一個可執行文件,可以直接獨立運行,運行該加殼程序后,先進行解壓縮,解壓縮后執行真正的程序,解壓縮過程完全隱蔽,都在內存中完成。
壓縮原理:是加殼工具在文件頭里加了一段指令,告訴CPU,怎么才能解壓縮自己。其實就是給可執行的文件加上個外衣。用戶執行的只是這個外殼程序。當你執行這個程序的時候這個殼就會把原來的程序在內存中解開,解開之后的就交給真正的程序來執行。
對可執行文件加殼主要有兩個目的:
1、有時可執行程序過大,對其加殼可以壓縮可執行程序的大小。
2、有些程序使用加殼技術為了防止程序被人跟蹤調試,防止算法程序被別人靜態分析。對程序加殼后可以很好的達到這個目的。
針對加殼技術的兩種不同目的的應用,加殼技術也分成了兩個技術方向,壓縮殼和加密殼。壓縮殼的特點就是減小軟件體積大小,加密保護不是其重點。目前比較流行的壓縮殼有UPX、ASPack、PECompact等。加密殼的重點則在于保護程序不被人逆向分析,而減小軟件體積大小不是其重點,目前比較流行的加密殼有ASProtect、Armadilo。而就實際應用而言,很多殼是綜合了壓縮技術和加密的技術的綜合殼。而這些殼的綜合性能會更高。對于加殼這種技術,常規軟件中有一些應用,但是應用不是很廣泛;而在很多惡意代碼為了躲避查毒軟件的查殺,都使用了加殼的技術。所以對于惡意代碼的分析者來說,如何高效率的區分出哪些可疑的惡意代碼使用了加殼技術,哪些沒有使用,就是一個需要解決的技術問題。因為對于加殼的可疑惡意代碼的分析方法和沒有加殼的可疑惡意代碼分析方法是不同的。在很長的一段時間里這個區分的過程主要依賴于分析人員的經驗,依靠手工來區分,之后也出現了一些基于殼的特征碼的殼程序區分方法,但這種方法只能識別有限的幾種已知的殼,對于大量新出現的未知殼無法有效識別。而在反惡意代碼的實際工作中,分析人員遇到的大量的加殼程序的殼都是新開發出來的未知殼。
發明內容
本發明針對以上背景技術中提到的實際問題,提出了一種基于統計方法的加殼可執行文件識別方法及系統。
本發明的技術方案概括如下:
一種基于統計方法的加殼可執行文件識別方法,其步驟包括:
1)讀入已知未加殼的可執行程序文件;
2)以單字節和雙字節為統計單位統計可執行程序文件中各數字出現的次數和總字節數;
3)求出單字節和雙字節在未加殼可執行程序文件中的概率,求出各相鄰單字節數值的條件分布;
4)讀入未知可執行程序文件,計算出該文件中單字節和雙字節出現的概率,與所述步驟3)中的數據進行比較,計算出差異值;
5)單字節和雙字節的差異值,分別大于指定的閥值,則確定該可執行文件加殼。
所述步驟4)單字節的差異值:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京銳安科技有限公司,未經北京銳安科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200810224318.2/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:數據快速讀取方法及裝置
- 下一篇:一種合并單元格的方法及裝置





