[发明专利]应用程序加固的方法、装置及电子设备有效
申请号: | 202110670379.7 | 申请日: | 2021-06-17 |
公开(公告)号: | CN113419734B | 公开(公告)日: | 2022-10-04 |
发明(设计)人: | 梁海滨;舒文;张为兰 | 申请(专利权)人: | 网易(杭州)网络有限公司 |
主分类号: | G06F8/40 | 分类号: | G06F8/40;G06F21/12;G06F21/64 |
代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 钟扬飞 |
地址: | 310052 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用程序 加固 方法 装置 电子设备 | ||
本申请实施例提供一种应用程序加固的方法、装置及电子设备,其中,在获取待加固的应用程序的APK文件中的初始DEX文件时,将初始DEX文件中的指定方法类对象转换成C语言代码得到C语言文件;基于初始DEX文件中除指定方法类对象之外的对象生成目标DEX文件;在涉及到C语言文件中有字符串与目标DEX文件中的字符串相匹配时,可以将C语言文件中匹配的字符串用目标DEX文件中该字符串对应的字符串索引进行替换,由于字符串索引要比字符串的代码数量少,有效降低了加固的APK文件的包体体积,由于对C语言文件中的字符串进行了索引替换,从而提高了分析加固的APK文件的难度,增加了应用程序的安全性。
技术领域
本发明涉及安卓系统加固技术领域,尤其是涉及一种应用程序加固的方法、装置及电子设备。
背景技术
目前,安卓平台发展迅速,占据了当前用户终端的主流市场,由于安卓系统开放源码的特性,带来的安全问题不可避免,其中安卓应用程序基本使用Java进行开发,Java经过编译后生成Dex文件,该文件经过反编译后,很容易可以看到程序的代码,该代码和源代码差异性很小,稍做修改就可以生成新的应用程序,因此攻击者将应用程序反编译后植入恶意代码,重新编译打包生成一个新的移动应用程序,上传到各大应用市场上供用户下载,则会形成一个盗版的应用程序或者是恶意的应用程序。
为了防止应用程序被篡改,将Java转C语言文件是比较常用的一种加固手段,由于C语言文件中包括的字符串大部分在Dex文件中都包含,因此,两个文件中存在字符串冗余的现象,从而使得应用程序的APK文件体积增加,占用用户终端大量的内存空间,从而影响用户终端的运行速率。
发明内容
有鉴于此,本发明的目的在于提供一种应用程序加固的方法、装置及电子设备,有效减少C语言文件中的代码量,节省了内存占用空间,进而提高了用户终端的运行速率。
第一方面,本发明实施例提供了一种应用程序加固的方法,其中,该方法包括:获取待加固的应用程序的APK文件中的初始DEX文件;将初始DEX文件中的指定方法类对象转换成C语言代码,得到C语言文件;基于初始DEX文件中除指定方法类对象之外的对象生成目标DEX文件;在目标DEX文件中查找与C语言文件中的方法类对象的字符串匹配的字符串及对应的字符串索引;将查找到的字符串索引替换C语言文件中方法类对象对应的字符串,得到优化的C语言文件;对优化的C语言文件和目标DEX文件进行合并处理,得到加固的APK文件。
上述在对优化的C语言文件和目标DEX文件进行合并处理,得到加固的APK文件之后,该方法还包括:响应于针对加固的APK文件的启动指令,解压加固的APK文件;从内存中读取目标DEX文件;其中,目标DEX为对加固的APK文件解压获得;基于目标DEX文件的函数索引和字符串索引从目标DEX文件的数据区中定位方法类对象对应的字符串;其中,目标DEX文件的数据区中预先存储有字符串对应的代码属性信息,代码属性信息用于表明运行字符串的代码类别;基于代码属性信息在目标DEX文件或优化的C语言文件中运行方法类对象。
上述基于代码属性信息在目标DEX文件或优化的C语言文件中运行方法类对象的步骤,包括:判断方法类对象对应的字符串的代码属性信息是否为C语言代码类别;如果是,将方法类对象对应的字符串返回至优化的C语言文件,并运行C语言文件;如果否,运行目标DEX文件。
上述指定方法类对象为原始DEX文件中需要保护的DEX函数。
上述指定方法类对象包括以下至少一种:函数名为onCreate,或者onResume或者onPause的DEX函数;包含特定标志注解的DEX函数;包含调用指令的DEX函数;其中,调用指令为网络请求调用指令或数据调用指令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网易(杭州)网络有限公司,未经网易(杭州)网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110670379.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:多单元药物递送装置和方法
- 下一篇:一种地坪研磨抛光一体机