• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種基于加殼程序的輔助脫殼方法及裝置制造方法及圖紙

    技術編號:8532659 閱讀:283 留言:0更新日期:2013-04-04 15:34
    本發明專利技術公開了一種基于加殼程序的輔助脫殼方法及裝置,該方法包括:在對加殼程序執行脫殼操作前,獲取運行加殼程序過程中產生的數據改寫信息,每條數據改寫信息包含至少兩類子信息;選取數據改寫信息中的至少兩類子信息,根據所有數據改寫信息中選取的至少兩類子信息的數據構建第一輔助圖形;和/或,獲取運行加殼程序過程中產生的代碼流程信息,每條代碼流程信息包含至少兩類子信息;選取代碼流程信息中的至少兩類子信息,根據所有代碼流程信息中選取的至少兩類子信息的數據構建第二輔助圖形;根據第一輔助圖形和/或第二輔助圖形確定加殼程序對應的原始程序的重定位表和導入表的所在地址范圍。該方案節省人力資源,又能提高效率。

    【技術實現步驟摘要】

    本專利技術涉及計算機
    ,尤指一種基于加殼程序的輔助脫殼方法及裝置
    技術介紹
    加殼是可執行程序資源壓縮的簡稱,是保護文件的常用手段,其原理是利用特殊的算法,對可執行程序里的資源進行壓縮、加密。加殼程序可以直接運行,但是不能查看原始程序,要經過脫殼才可以查看。脫殼的過程主要為三步第一步,確定原始程序的入口點(Original Entry Point, OEP);第二步,修復導入表和重定位表;第三步,將內存中的原始程序寫入文件,更改程序的新入口地址為0ΕΡ,這一通常成為轉儲(Dump)。確定0ΕΡ、修復導入表和重定位表后,即可完成脫殼,得到原始程序,可見脫殼的關鍵就是確定0ΕΡ、修復導入表和重定位表。 隨著現代加密技術的飛速發展,有些殼的保護強度極高,目前只能依靠人工分析來脫殼,研究人員從頭到尾通過手工調試才能弄清殼的大體流程,進而定位0ΕΡ、導入表、重定位表的精確位置,通過人工分析脫殼的方式既浪費人力資源,效率還非常低,如果首先能對加殼程序進行輔助脫殼,大致定位出0ΕΡ、導入表、重定位表可能的位置范圍,然后研究人員再對確定出的位置范圍進行對手工調試,定位出0ΕΡ、導入表、重定位表的精確位置,則可以節省很多人力資源,并能提高效率。但是,目前沒有對加殼程序進行輔助脫殼的方法。
    技術實現思路
    本專利技術實施例提供一種基于加殼程序的輔助脫殼方法及裝置,用以實現對加殼程序進行輔助脫殼?!N基于加殼程序的輔助脫殼方法,包括在對所述加殼程序執行脫殼操作前,獲取運行所述加殼程序過程中產生的數據改寫信息,每條數據改寫信息包含至少兩類子信息;選取數據改寫信息中的至少兩類子信息,根據所有數據改寫信息中選取的至少兩類子信息的數據構建第一輔助圖形;和/或,獲取運行所述加殼程序過程中產生的代碼流程信息,每條代碼流程信息包含至少兩類子信息;選取代碼流程信息中的至少兩類子信息,根據所有代碼流程信息中選取的至少兩類子信息的數據構建第二輔助圖形;根據所述第一輔助圖形和/或所述第二輔助圖形確定所述加殼程序對應的原始程序的重定位表和導入表的所在地址范圍?!N基于加殼程序的輔助脫殼裝置,包括構建單元,用于在對所述加殼程序執行脫殼操作前,獲取運行所述加殼程序過程中產生的數據改寫信息,每條數據改寫信息包含至少兩類子信息;選取數據改寫信息中的至少兩類子信息,根據所有數據改寫信息中選取的至少兩類子信息的數據構建第一輔助圖形;和/或,獲取運行所述加殼程序過程中產生的代碼流程信息,每條代碼流程信息包含至少兩類子信息;選取代碼流程信息中的至少兩類子信息,根據所有代碼流程信息中選取的至少兩類子信息的數據構建第二輔助圖形;確定單元,用于根據所述第一輔助圖形和/或所述第二輔助圖形確定所述加殼程序對應的原始程序的重定位表和導入表的所在地址范圍。本專利技術有益效果如下本專利技術實施例提供的基于加殼程序的輔助脫殼方法及裝置方法及裝置,通過在對所述加殼程序執行脫殼操作前,獲取運行所述加殼程序過程中產生的數據改寫信息,每條數據改寫信息包含至少兩類子信息;選取數據改寫信息中的至少兩類子信息,根據所有數據改寫信息中選取的至少兩類子信息的數據構建第一輔助圖形;和/或,獲取運行所述加殼程序過程中產生的代碼流程信息,每條代碼流程信息包含至少兩類子信息;選取代碼流程信息中的至少兩類子信息,根據所有代碼流程信息中選取的至少兩類子信息的數據構建第二輔助圖形;根據所述第一輔助圖形和/或所述第二輔助圖形確定所述加殼程序對應的原始程序的重定位表和導入表的所在地址范圍。該方案可以首先獲取運行加殼程序過程中 產生的數據改寫信息構建第一輔助圖形,和/或獲取運行加殼程序過程中產生的代碼流程信息構建,然后根據第一輔助圖形和/或第二輔助圖形確定加殼程序對應的原始程序的重定位表和導入表的所在地址范圍,然后后續可以進一步重定位表和導入表的精確地址,這相對于現有技術只能依靠技術人員從頭到尾通過手工調試才能弄清殼的大體流程,進而定位導入表、重定位表的精確位置的方式,既節省人力資源,又能提高效率。附圖說明圖1為本專利技術實施例中第一種基于加殼程序的輔助脫殼方法的流程圖;圖2為本專利技術實施例中第二種基于加殼程序的輔助脫殼方法的流程圖;圖3為本專利技術實施例中第三種基于加殼程序的輔助脫殼方法的流程圖;圖4為本專利技術實施例中第一種第一輔助圖形的示意圖;圖5為本專利技術實施例中第二種第一輔助圖形的示意圖;圖6為本專利技術實施例中第三種第一輔助圖形的示意圖;圖7為本專利技術實施例中第二輔助圖形的示意圖;圖8為本專利技術實施例中基于加殼程序的輔助脫殼裝置的結構示意圖。具體實施例方式為了實現對加殼程序進行輔助脫殼,本專利技術實施例提供的基于加殼程序的輔助脫殼方法,該方法可以有三種方案第一種方案的流程如圖1所示,具體執行步驟如下SlO :在對加殼程序執行脫殼操作前,獲取運行加殼程序過程中產生的數據改寫信息,每條數據改寫信息包含至少兩類子信息。在對加殼程序執行脫殼操作之前,首先獲取運行加殼程序產生的數據改寫信息,可以通過調試器、虛擬機或是其他監控技術,記錄下加殼程序運行過程中的數據改寫信息。程序運行中會改寫內存中的數據,每一次改寫的數據執行地址E、數據改寫地址A、改寫長度L和改寫內容D記為一條數據改寫信息,則可以得到E1-A1-L1-D1、E2-A2-L2-D2……En-An-Ln-Dn所有的數據改寫信息,所有的數據改寫信息組成了加殼程序的數據改寫信息,由上可見每條數據改寫信息都會包含很多類的子信息。Sll :選取數據改寫信息中的至少兩類子信息。S12:根據數據改寫信息中選取的至少兩類子信息的數據構建第一輔助圖形。由于每條數據改寫信息都會包含至少兩類子信息,那么就可以選取至少兩類子信息,然后獲取所有數據改寫信息中這至少兩類子信息的數據。例如,選取的數據改寫執行地址E和數據改寫地址A這兩類子信息,獲取每條數據改寫信息中的E和A的數據,即(El-Al)、(E2-A2) ...... (En-An)0S13 :根據第一輔助圖形確定加殼程度對應的原始程序的重定位表和導入表的所在地址范圍??梢灾唤⒁粋€第一輔助圖形,然后根據這個第一輔助圖形確定加殼程序對應的原始程序的重定位表和導入表的所在地址范圍,也可以建立多個第一輔助圖形,然后根據多個第一輔助圖形確定加殼程序對應的原始程序的重定位表和導入表的所在地址范圍。第二種方案的的流程如圖2所示,具體執行步驟如下S20 :在對加殼程序執行脫殼操作前,獲取運行加殼程序過程中產生的代碼流程信息,每條代碼流程信息包含至少兩類子信息。在對加殼程序執行脫殼操作之前,首先獲取運行加殼程序產生的代碼流程信息,可以通過調試器、虛擬機或是其他監控技術,記錄下加殼程序運行過程中的數據改寫信息。程序運行后,會有多個跳轉,而這些跳轉可能是一個循環,也可能是一個函數調用,用跳轉指令來分割程序為若干代碼片段,每個代碼片段包含片段起始地址X和片段結束地址Y,則可以得到Xl-Yl、X2-Y2. . . Xn-Yn所有代碼流程信息,所有的代碼流程信息組成了加殼程序的代碼流程信息。其中,每個代碼流程信息還可以包括,該代碼片段是否引發異常,是否存在循環、是否是一個函數入口、所在模塊和函數名、是否函數返回等等信息。可見,每條代碼流程信息包含至少兩類子信息S21 :選取代碼流本文檔來自技高網...

    【技術保護點】
    一種基于加殼程序的輔助脫殼方法,其特征在于,包括:在對所述加殼程序執行脫殼操作前,獲取運行所述加殼程序過程中產生的數據改寫信息,每條數據改寫信息包含至少兩類子信息;選取數據改寫信息中的至少兩類子信息,根據所有數據改寫信息中選取的至少兩類子信息的數據構建第一輔助圖形;和/或,獲取運行所述加殼程序過程中產生的代碼流程信息,每條代碼流程信息包含至少兩類子信息;選取代碼流程信息中的至少兩類子信息,根據所有代碼流程信息中選取的至少兩類子信息的數據構建第二輔助圖形;根據所述第一輔助圖形和/或所述第二輔助圖形確定所述加殼程序對應的原始程序的重定位表和導入表的所在地址范圍。

    【技術特征摘要】
    1.一種基于加殼程序的輔助脫殼方法,其特征在于,包括 在對所述加殼程序執行脫殼操作前,獲取運行所述加殼程序過程中產生的數據改寫信息,每條數據改寫信息包含至少兩類子信息;選取數據改寫信息中的至少兩類子信息,根據所有數據改寫信息中選取的至少兩類子信息的數據構建第一輔助圖形;和/或, 獲取運行所述加殼程序過程中產生的代碼流程信息,每條代碼流程信息包含至少兩類子信息;選取代碼流程信息中的至少兩類子信息,根據所有代碼流程信息中選取的至少兩類子信息的數據構建第二輔助圖形; 根據所述第一輔助圖形和/或所述第二輔助圖形確定所述加殼程序對應的原始程序的重定位表和導入表的所在地址范圍。2.如權利要求1所述的方法,其特征在于,選取數據改寫信息中的至少兩類子信息,根據所有數據改寫信息中選取的至少兩類子信息的數據構建第一輔助圖形,具體包括 選取數據改寫信息中數據改寫時間和整個內存在所述數據改寫時間的數據兩類子信息; 獲取所有數據改寫信息中選取的數據改寫時間和整個內存在所述數據改寫時間兩類子信息的數據; 以數據改寫時間為橫軸、內存地址為縱軸建立動態坐標圖,將每一數據改寫時間對應的整個內存的數據構建一個圖,將得到的每張圖與對應的數據改寫時間關聯得到所述第一輔助圖形; 根據所述第一輔助圖形確定所述加殼程序對應的原始程序的重定位表和導入表的所在地址范圍,具體包括 拖動所述橫軸,獲取運行所述加殼程序過程中整個內存的數據變化,數據包含有函數或模塊字符串的內存地址范圍可以作為所述重定位表和導入表的所在地址范圍。3.如權利要求1所述的方法,其特征在于,還包括 根據所述第一輔助圖形和/或所述第二輔助圖形確定所述加殼程序對應的原始程序的入口點OEP的時間范圍。4.如權利要求3所述的方法,其特征在于,選取數據改寫信息中的至少兩類子信息,根據所有數據改寫信息中選取的至少兩類子信息的數據構建第一輔助圖形,具體包括 選取數據改寫信息中的數據改寫地址、數據改寫執行地址和數據改寫時間三類子信息; 獲取所有數據改寫信息中選取的數據改寫地址、數據改寫執行地址和數據改寫時間三類子信息的數據; 以數據改寫時間為橫軸、以內存地址為縱軸建立坐標系,將獲取的每條數據改寫信息的數據改寫地址和數據改寫執行地址的數據標注在所述坐標系中,得到所述第一輔助圖形; 根據所述第一輔助圖形確定所述加殼程序對應的原始程序的OEP的時間范圍,以及重定位表和導入表的所在地址范圍,具體包括 連接所述第一輔助圖形中表示數據改寫地址的點得到數據改寫曲線,以及連接所述第一輔助圖形中表示數據改寫執行地址的點得到數據改寫執行曲線; 若所述數據改寫執行曲線進入設定內存地址范圍,之后再未離開所述設定內存地址范圍,則確定所述數據改寫執行曲線進入所述設定內存地址范圍時對應的第一數據改寫時間與位于所述第一改寫時間之前且相鄰的第二數據改寫時間之間的時間范圍為所述加殼程序對應的原始程序的OEP的時間范圍,所述設定內存地址范圍中的數據在所述確定的OEP的時間范圍之前被改寫過; 在確定的OEP的時間范圍之前獲取的數據改寫信息中出現的內存地址范圍作為所述重定位表和所述導入表的所在地址范圍。5.如權利要求3所述的方法,其特征在于,選取數據改寫信息中的至少兩類子信息,根據所有數據改寫信息中選取的至少兩類子信息的數據構建第一輔助圖形,具體包括 選取數據改寫信息中全部子信息; 獲取所有數據改寫信息中選取全部子信息的數據,根據從每條數據改寫信息中獲取的全部子信息的數據計算記錄每條數據改寫信息后的內存熵值; 以數據改寫時間為橫軸、以內存熵值為縱軸建立坐標系,將計算得到的內存熵值標注在所述坐標系中,得到所述第一輔助圖形; 根據所述第一輔助圖形確定所述加殼程序對應的原始程序的OEP的時間范圍,以及重定位表和導入表的所在地址范圍,具體包括 連接所述第一輔助圖形中表示內存熵值的點得到內存熵值曲線; 確定內存熵值逐漸增加直到穩定的時間范圍是所述加殼程序對應的原始程序的OEP的時間范圍; 在確定的OEP的時間范圍之前獲取的每條數據改寫信息中出現的內存地址范圍作為所述重定位表和所述導入表的所在地址范圍。6.如權利要求3所述的方法,其特征在于,選取代碼流程信息中的至少兩類子信息,根據所有代碼流程信息中選取的至少兩類子信息的數據構建第二輔助圖形,具體包括 選取所有數據改寫信息中代碼片段執行時間和代碼片段執行地址兩類子信息; 獲取所有代碼流程信息中選取的代碼片段執行時間和代碼片段執行地址兩類子信息的數據; 以代碼片段執行時間為橫軸、內存地址為縱軸建立坐標系,將獲取的每條代碼流程信息的代碼片段執行地址標注在所述坐標系中,得到所述第二輔助圖形; 根據所述第二輔助圖形確定所述加殼程序對應的原始程序的OEP的時間范圍,以及重定位表和導入表的所在地址范圍,具體包括 連接所述第二輔助圖形中表示代碼執行片段地址的點得到代碼執行地址曲線; 若所述代碼執行地址曲線進入設定內存地址范圍,之后再未離開所述設定內存地址范圍,則所述加殼程序從開始運行到所述代碼執行地址曲線進入所述設定內存地址范圍之前的時間范圍,為所述加殼程序對應的原始程序的OEP的時間范圍; 在確定的OEP的時間范圍之前獲取的每條數據改寫信息中出現的內存地址范圍作為所述重定位表和所述導入表的所在地址范圍。7.如權利要求3所述的方法,其特征在于,根據所述第一輔助圖形和所述第二輔助圖形確定所述加殼程序對應的原始程序的OEP的時間范圍,以及重定位表和導入表的所在地址范圍,具體包括 根...

    【專利技術屬性】
    技術研發人員:陳錦,劉業欣,
    申請(專利權)人:北京神州綠盟信息安全科技股份有限公司,北京神州綠盟科技有限公司,
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 无码少妇一区二区| 亚洲国产精品成人精品无码区在线| 免费A级毛片无码视频| 人妻丰满熟妇AV无码区乱| 久久久久久国产精品无码超碰 | 无码性午夜视频在线观看| 亚洲av无码片区一区二区三区| 亚洲视频无码高清在线| 大胆日本无码裸体日本动漫| 中文字幕av无码不卡| 亚洲人av高清无码| 久久午夜无码免费| 曰韩无码无遮挡A级毛片| 亚洲AV无码一区二区乱子伦| 亚洲成a人片在线观看天堂无码| 中文字幕久久精品无码| 精品久久久无码人妻字幂| 亚洲国产成人精品无码一区二区| 东京热加勒比无码视频| 亚洲日韩精品A∨片无码加勒比| 中文无码成人免费视频在线观看| 色综合热无码热国产| 无码人妻一区二区三区一| 久久久久久AV无码免费网站| 久久亚洲av无码精品浪潮| 午夜寂寞视频无码专区| 中文字幕无码不卡免费视频| 久久精品aⅴ无码中文字字幕| 成年免费a级毛片免费看无码| 久久亚洲中文字幕无码| 无码福利一区二区三区| 午夜不卡无码中文字幕影院| 东京热无码一区二区三区av| 久久久久亚洲av成人无码电影 | 久久久久久99av无码免费网站| 无码无套少妇毛多18p| 无码专区天天躁天天躁在线| 无码人妻一区二区三区在线| 无码欧精品亚洲日韩一区| 国产办公室秘书无码精品99| 亚洲成AV人片在线播放无码|