The invention discloses a processing method of reverse Android plug-in reinforcement, which comprises the following steps: the application executable DEX map processing, visualization map generated DEX file; the key function to get the virtual machine of Java class loading, determine the time node reverse plug-in; Dalvik virtual machine on the Android system the application of modified in all classes of one-time class loading and initialization, all classes will be decrypted and loaded into memory, all the information collected in the memory, all will reverse the class after the re combination to generate a new DEX file, because will modify the Java class in memory in the class initialization process the instructions in the correction in the collection of information in memory, so that the invention provides the reverse processing method can obtain the most reinforcement plug-in source code, and With a high degree of automation, reverse processing for Android consolidation plug-ins is realized at the expense of little performance overhead.
【技术实现步骤摘要】
一种安卓加固插件的逆向处理方法
本专利技术属于移动安全
,更具体地,涉及一种安卓加固插件的逆向处理方法。
技术介绍
作为移动互联网时代计算的主要载体,移动智能终端存储着更多的隐私数据,包括联系人信息、通话记录和地理位置信息等,更易产生安全问题,用户隐私数据泄漏可能带来灾难性的后果。安卓(Android)应用基于Java语言开发,容易被恶意攻击者逆向,导致开发者辛苦开发的应用被恶意攻击者获取;有的恶意攻击者还会把逆向后的应用源代码植入恶意代码,导致重打包恶意应用盛行。安全厂商为了解决此类问题,提供了Android应用加固服务。然而,由于安全厂商通常没有对上传应用进行安全扫描,导致很多恶意攻击者将恶意应用进行加固,以逃避安全引擎的查杀。目前恶意攻击者采用更先进的技术是使用动态加载技术,延迟启动恶意代码,开启定时器,反射执行恶意代码。为解决Android应用程序加固和动态加载技术所存在的安全问题,国内外的研究人员已经进行了一些探索与研究。DexHunter(ZhangY,LuoX,YinH.Dexhunter:Towardextractinghiddencodefrompackedandroidapplications.in:Proceedingsof20thEuropeanSymposiumonResearchinComputerSecurity.Vienna:Springer,2015.293-311.)从目前主流的加固服务商入手,提出了针对目前加固服务商的逆向处理方法,在应用加载进内存后,获取可执行文件在内存中的位置,遍历可执行文件中所有的Java类 ...
【技术保护点】
一种安卓加固插件的逆向处理方法,其特征在于,通过修改安卓系统虚拟机类加载机制和初始化方法,在加固插件加载其第一个Java类之前将所述加固插件中所有的Java类主动的遍历并加载进内存中,初始化所有的Java类,将内存中所有的关于所述加固插件的信息收集起来组装成新的odex文件,得到逆向后的插件原始代码信息。
【技术特征摘要】
1.一种安卓加固插件的逆向处理方法,其特征在于,通过修改安卓系统虚拟机类加载机制和初始化方法,在加固插件加载其第一个Java类之前将所述加固插件中所有的Java类主动的遍历并加载进内存中,初始化所有的Java类,将内存中所有的关于所述加固插件的信息收集起来组装成新的odex文件,得到逆向后的插件原始代码信息。2.如权利要求1所述的逆向处理方法,其特征在于,采用所述方法对未知插件进行逆向处理的方法,具体包括如下步骤:(1)通过应用加固服务平台对所述未知插件进行加固;并对加固插件进行图谱化处理,确定应用加固服务平台对插件的加固优化参数;(2)修改安卓系统源码,在模拟器上监控获取加固插件的动态加载路径;(3)根据安卓系统中虚拟机类加载的关键路径,修改虚拟机初始化过程,在类初始化阶段对加固插件进行逆向,生成逆向后的odex文件,并改变虚拟机控制变量的值;(4)触发插件下载,在插件执行过程中根据虚拟机控制变量的值识别插件中所有的Java类在内存中的位置;遍历所述逆向后的odex文件中的Java类,主动进行类加载和初始化,根据内存中存储的逆向后的信息生成新的odex文件;(5)利用开源的工具对所述新的odex文件进行反编译,获得测试用加固插件的smail代码;可通过将所述smail...
【专利技术属性】
技术研发人员:李瑞轩,张宏民,辜希武,章衡,韩洪木,汤俊伟,
申请(专利权)人:华中科技大学,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。