[發明專利]一種基于指令注入的代碼處理方法、終端及存儲介質在審
| 申請號: | 202010776482.5 | 申請日: | 2020-08-05 |
| 公開(公告)號: | CN112052461A | 公開(公告)日: | 2020-12-08 |
| 發明(設計)人: | 李鵬飛;冉山川 | 申請(專利權)人: | 北京智游網安科技有限公司 |
| 主分類號: | G06F21/60 | 分類號: | G06F21/60;G06F21/62;G06F21/52 |
| 代理公司: | 深圳市君勝知識產權代理事務所(普通合伙) 44268 | 代理人: | 陳專 |
| 地址: | 100000 北京市海淀區東北旺西路8*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 指令 注入 代碼 處理 方法 終端 存儲 介質 | ||
1.一種基于指令注入的代碼處理方法,其特征在于,所述基于指令注入的代碼處理方法包括:
在APP的加密階段,解析DEX文件,將所述DEX文件進行拆分,抽取出所述DEX文件中保存的代碼指令,并進行加密保存;
構建解密代碼的二進制指令,注入到所述DEX文件中原指令位置;
當加密APP運行到被加密的方法時,執行已注入的二進制指令,對方法指令進行解密還原,并跳轉到被解密出的指令內存,繼續執行解密出的指令。
2.根據權利要求1所述的基于指令注入的代碼處理方法,其特征在于,所述將所述DEX文件進行拆分,具體包括:將二進制指令從所述DEX文件中剪切出來,并保存到預設文件中。
3.根據權利要求1所述的基于指令注入的代碼處理方法,其特征在于,所述在APP的加密階段,解析DEX文件,將所述DEX文件進行拆分,抽取出所述DEX文件中保存的代碼指令,并進行加密保存,具體包括:
在APP的加密時,通過加密工具對所述DEX文件的二進制文件進行解析;
遍歷獲取DEX文件中所有方法,解析出方法對應代碼段的二進制的代碼項目結構;
提取所述代碼項目結構中記錄的二進制指令數據;
根據提取出的所述二進制指令數據中的類名、方法名和方法簽名生成唯一識別ID;
將所述識別ID和所述二進制指令數據進行關聯,并進行加密保存;
在所述代碼項目結構中的指定字段位置插入構建的解密引擎調用指令。
4.根據權利要求3所述的基于指令注入的代碼處理方法,其特征在于,每個方法對應一個代碼項目結構。
5.根據權利要求3所述的基于指令注入的代碼處理方法,其特征在于,所述當加密APP運行到被加密的方法時,執行已注入的二進制指令,對方法指令進行解密還原,并跳轉到被解密出的指令內存,繼續執行解密出的指令,包括:
在加密APP運行時,執行被加密的方法,執行注入的所述解密引擎調用指令;
解密引擎通過方法調用棧查找到當前正在執行方法的類名、方法名和方法簽名計算出ID;
通過ID查找存儲在指定文件中的加密指令位置;
解密引擎解密對應的指令,并將指令還原到當前方法的代碼項目結構,字段指向的內存空間,完成指令的解密和還原。
6.根據權利要求5所述的基于指令注入的代碼處理方法,其特征在于,所述解密引擎解密對應的指令,并將指令還原到當前方法的代碼項目結構,字段指向的內存空間,完成指令的解密和還原,之后還包括:
解密指令還原結束,執行預設語句,跳轉到解密還原的內存,繼續執行原方法的邏輯。
7.一種終端,其特征在于,所述終端包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的基于指令注入的代碼處理程序,所述基于指令注入的代碼處理程序被所述處理器執行時實現如權利要求1-6任一項所述的基于指令注入的代碼處理方法的步驟。
8.一種存儲介質,其特征在于,所述存儲介質存儲有基于指令注入的代碼處理程序,所述基于指令注入的代碼處理程序被處理器執行時實現如權利要求1-6任一項所述的基于指令注入的代碼處理方法的步驟。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京智游網安科技有限公司,未經北京智游網安科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010776482.5/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種指令處理方法、終端及存儲介質
- 下一篇:一種甲乙酮的制備方法





