android 脱壳 虚拟机( 二 )


获取与目标应用同包名的结构体;
修复内存映射文件的dex文件魔术字段,内存区域地址指针根据连续性偏移大小计算指针位置;
根据模拟的目标应用的类找到结构体,获取真实的类代码,并修复区域大小;
根据模拟的目标应用的类找到结构体,修复单个函数的代码区域,并修复区域大小;
根据修复后的代码区域,修复dex文件结构的头部,得到完整的解密的程序代码 。
8.根据权利要求6所述的系统,其特征在于,在沙箱中对模拟的目标应用进行程序代码解密的方法为:
获取与目标应用同包名的结构体;
修复内存映射文件的dex文件魔术字段,内存区域地址指针根据连续性偏移大小计算指针位置;
根据模拟的目标应用的类找到结构体,获取真实的类代码,并修复区域大小;
根据模拟的目标应用的类找到结构体,修复单个函数的代码区域,并修复区域大小;
根据修复后的代码区域,修复dex文件结构的头部,得到完整的解密的程序代码 。
9.根据权利要求1所述的方法或权利要求2所述的系统,其特征在于,所述的虚拟机为虚拟机 。