[發(fā)明專利]多兼容性代碼加固方法在審
| 申請?zhí)枺?/td> | 202110260003.9 | 申請日: | 2021-03-10 |
| 公開(公告)號: | CN112989290A | 公開(公告)日: | 2021-06-18 |
| 發(fā)明(設(shè)計)人: | 禹明生;劉遠;王暉;李金祥;段雨洪 | 申請(專利權(quán))人: | 四川長虹格潤環(huán)保科技股份有限公司 |
| 主分類號: | G06F21/14 | 分類號: | G06F21/14;G06F8/76;G06F8/41 |
| 代理公司: | 四川省成都市天策商標專利事務(wù)所 51213 | 代理人: | 陳藝文 |
| 地址: | 610404 四川*** | 國省代碼: | 四川;51 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 兼容性 代碼 加固 方法 | ||
1.一種多兼容性代碼加固方法,其特征在于,包括以下步驟:
步驟1、使用LLVM將被保護代碼轉(zhuǎn)化為LLVM IR文件,使用VMPP設(shè)計虛擬指令集;
步驟2、指令轉(zhuǎn)換器進行指令虛擬化:指令轉(zhuǎn)換器解析所述LLVM IR文件,將其轉(zhuǎn)換為所述虛擬指令集上的虛擬指令,包括數(shù)據(jù)段、指令段和外部函數(shù)調(diào)用代碼,分別對應(yīng)于IR數(shù)據(jù)和指令中的全局變量、指令和外部函數(shù)調(diào)用表;
步驟3、使用開發(fā)者工具鏈進行架構(gòu)的兼容:使用開發(fā)者工具鏈編譯源代碼生成不同架構(gòu)上的so文件或者靜態(tài)鏈接庫文件。
2.根據(jù)權(quán)利要求1所述的多兼容性代碼加固方法,其特征在于,在步驟1中,所述虛擬指令集基于寄存器架構(gòu),使用256個通用寄存器和16個參數(shù)寄存器進行運算操作。
3.根據(jù)權(quán)利要求2所述的多兼容性代碼加固方法,其特征在于,在步驟1中,所述虛擬指令集包括8個類型共45條指令,8個類型的指令分別為R類型指令、I類型指令、B類型指令、CMP類型指令、W類型指令、C類型指令、M類型指令和E類型指令,其中:
R類型指令為源操作數(shù)均為寄存器的指令,用于算術(shù)運算、邏輯、位移操作;
I類型指令為源操作數(shù)為寄存器和立即數(shù)的指令,用于算術(shù)運算、邏輯、位移操作;
B類型指令為跳轉(zhuǎn)指令,用于實現(xiàn)指令跳轉(zhuǎn)和內(nèi)部函數(shù)調(diào)用;
CMP類型指令為比較型指令,用于比較源操作數(shù);
W類型指令為訪存指令和賦值寄存器指令,用于訪問內(nèi)存等操作;
C類型指令為外部函數(shù)調(diào)用指令,用于處理外部函數(shù)調(diào)用;
M類型指令包含malloc指令和return指令,用于分配內(nèi)存和函數(shù)返回;
E類型指令為異常處理的指令,用于處理異常機制。
4.根據(jù)權(quán)利要求1所述的多兼容性代碼加固方法,其特征在于,在步驟2中,指令轉(zhuǎn)換器解析LLVM IR文件時,使用LLVM API依次讀取并處理每條IR數(shù)據(jù)和指令,分別生成數(shù)據(jù)段、指令段和外部函數(shù)調(diào)用代碼;指令轉(zhuǎn)換器依次讀取IR數(shù)據(jù)和指令中每個全局變量,解析出該變量的長度與值,將變量的值寫入數(shù)據(jù)段文件中;若該變量未初始化,則將相應(yīng)長度的0寫入數(shù)據(jù)段文件,同時記錄該變量的符號和起始地址,以及其映射關(guān)系,這樣其他指令通過訪問其地址來使用該變量。
5.根據(jù)權(quán)利要求1所述的多兼容性代碼加固方法,其特征在于,所述步驟3具體如下:
VMPP使用NDK導(dǎo)出獨立工具鏈,通過Shell腳本控制編譯過程;具體地,用戶只需指定要加固的源代碼文件和目標架構(gòu),該工具鏈便會自動運行VMPP所有流程將本地源代碼加固生成數(shù)據(jù)段、代碼段與解釋器,并將其打包組合起來生成目標架構(gòu)上的可執(zhí)行文件。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于四川長虹格潤環(huán)保科技股份有限公司,未經(jīng)四川長虹格潤環(huán)保科技股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110260003.9/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





