-
公开(公告)号:CN109214184B
公开(公告)日:2021-08-20
申请号:CN201810802208.3
申请日:2018-07-20
Applicant: 北京大学
IPC: G06F21/56
Abstract: 本发明公开一种Android加固应用程序通用自动化脱壳方法和装置。本方法为:1)为每一加载的加固应用创建一虚拟机;虚拟机中的Dex文件定位单元持续化监测加载的加固应用,当监测到加载新的Dex文件时,Dex文件定位单元记录DexOrJar结构并发送给类加载器验证单元;2)类加载器验证单元对每一项Dex文件匹配查找相应的类加载器ClassLoader,并形成关联记录;3)根据关联记录模拟系统类加载和数据解析过程,获取对应Dex文件的解密后的数据内容;4)根据Dex文件标准规范创建Dex文件模板,将解密后的数据内容填充至对应Dex文件模板中,得到加固应用脱壳后包含解密数据的Dex文件。
-
公开(公告)号:CN109408073B
公开(公告)日:2021-10-08
申请号:CN201811118360.6
申请日:2018-09-21
Applicant: 北京大学
IPC: G06F8/61
Abstract: 本发明公开一种Android非侵入式应用重打包方法。本方法包括:1)通过不修改目标Android应用代码的方式,向目标应用注入外部代码;所述外部代码在目标应用启动时将被执行,用于加载并运行目标应用的原始代码,以及加载Hook框架与重打包插件;所述重打包插件用于利用加载的Hook框架动态修改设定函数的函数实现、函数调用时的参数或函数返回时的结果,实现目标应用行为和逻辑的改变;2)对修改后的目标应用进行重新签名,得到重打包后的Android应用。本发明适用于加壳与非加壳Android应用,对于加壳应用,本发明不要求脱壳,也不需要修复脱壳后的代码,规避了传统方案的缺陷。
-
公开(公告)号:CN109408073A
公开(公告)日:2019-03-01
申请号:CN201811118360.6
申请日:2018-09-21
Applicant: 北京大学
IPC: G06F8/61
Abstract: 本发明公开一种Android非侵入式应用重打包方法。本方法包括:1)通过不修改目标Android应用代码的方式,向目标应用注入外部代码;所述外部代码在目标应用启动时将被执行,用于加载并运行目标应用的原始代码,以及加载Hook框架与重打包插件;所述重打包插件用于利用加载的Hook框架动态修改设定函数的函数实现、函数调用时的参数或函数返回时的结果,实现目标应用行为和逻辑的改变;2)对修改后的目标应用进行重新签名,得到重打包后的Android应用。本发明适用于加壳与非加壳Android应用,对于加壳应用,本发明不要求脱壳,也不需要修复脱壳后的代码,规避了传统方案的缺陷。
-
公开(公告)号:CN109214184A
公开(公告)日:2019-01-15
申请号:CN201810802208.3
申请日:2018-07-20
Applicant: 北京大学
IPC: G06F21/56
Abstract: 本发明公开一种Android加固应用程序通用自动化脱壳方法和装置。本方法为:1)为每一加载的加固应用创建一虚拟机;虚拟机中的Dex文件定位单元持续化监测加载的加固应用,当监测到加载新的Dex文件时,Dex文件定位单元记录DexOrJar结构并发送给类加载器验证单元;2)类加载器验证单元对每一项Dex文件匹配查找相应的类加载器ClassLoader,并形成关联记录;3)根据关联记录模拟系统类加载和数据解析过程,获取对应Dex文件的解密后的数据内容;4)根据Dex文件标准规范创建Dex文件模板,将解密后的数据内容填充至对应Dex文件模板中,得到加固应用脱壳后包含解密数据的Dex文件。
-
-
-