[发明专利]一种基于Java反射机制的安卓应用自动脱壳方法在审
申请号: | 201610061008.8 | 申请日: | 2016-01-28 |
公开(公告)号: | CN105740708A | 公开(公告)日: | 2016-07-06 |
发明(设计)人: | 陈伟腾;陈钟;李青山;关志;陈果;高健博;秦煜;李洪生;轩志朋;王晓青 | 申请(专利权)人: | 博雅网信(北京)科技有限公司;北京大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 沈阳东大知识产权代理有限公司 21109 | 代理人: | 梁焱 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 java 反射 机制 应用 自动 脱壳 方法 | ||
1.一种基于Java反射机制的安卓应用自动脱壳方法,其特征在于,包括以下步骤:
步骤1、定位内存中的安卓应用可执行文件;
步骤2、确定上述可执行文件中所有需要被转存的类的类型描述符,并利用java的反射机制获取所有类所声明的域和方法,并进一步获取域和方法的信息;
步骤3、从可执行文件中获取所有已知的解密方法及其参数,并利用java的反射机制进行动态调用,实时对处于加密状态下的域和方法信息进行解密;
步骤4、根据解密后的域和方法重写可执行文件,完成安卓应用的自动脱壳。
2.根据权利要求1所述的基于Java反射机制的安卓应用自动脱壳方法,其特征在于,步骤1所述的定位内存中的安卓应用可执行文件,具体为:从Dalvik虚拟机运行时保存的全局变量中获取。
3.根据权利要求1所述的基于Java反射机制的安卓应用自动脱壳方法,其特征在于,步骤2所述的域和方法的信息,具体为:域的信息包括:名称、类型、标志符和值;方法的信息包括:名称、返回值类型、参数类型、访问标志和代码地址。
4.根据权利要求1所述的基于Java反射机制的安卓应用自动脱壳方法,其特征在于,步骤3所述的从可执行文件中获取所有已知的解密方法及其参数,具体为:通过构造控制流图的方式并采用到达定值算法获取。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于博雅网信(北京)科技有限公司;北京大学,未经博雅网信(北京)科技有限公司;北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610061008.8/1.html,转载请声明来源钻瓜专利网。