[发明专利]一种Android非侵入式应用重打包方法有效

专利信息
申请号: 201811118360.6 申请日: 2018-09-21
公开(公告)号: CN109408073B 公开(公告)日: 2021-10-08
发明(设计)人: 韩心慧;黎桐辛;简容;武新逢 申请(专利权)人: 北京大学
主分类号: G06F8/61 分类号: G06F8/61
代理公司: 北京君尚知识产权代理有限公司 11200 代理人: 司立彬
地址: 100871 北*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 android 侵入 应用 打包 方法
【说明书】:

发明公开一种Android非侵入式应用重打包方法。本方法包括:1)通过不修改目标Android应用代码的方式,向目标应用注入外部代码;所述外部代码在目标应用启动时将被执行,用于加载并运行目标应用的原始代码,以及加载Hook框架与重打包插件;所述重打包插件用于利用加载的Hook框架动态修改设定函数的函数实现、函数调用时的参数或函数返回时的结果,实现目标应用行为和逻辑的改变;2)对修改后的目标应用进行重新签名,得到重打包后的Android应用。本发明适用于加壳与非加壳Android应用,对于加壳应用,本发明不要求脱壳,也不需要修复脱壳后的代码,规避了传统方案的缺陷。

技术领域

本发明涉及一种Android非侵入式应用重打包方法,尤其涉及一种支持加壳应用的Android非侵入式应用重打包方法,属于计算机应用技术领域。

背景技术

Android应用重打包技术是Android生态中一类常见且重要的安全技术,该技术可以修改已有应用的代码与逻辑,从而生成一个新的应用。该技术既被用于应用破解、广告插入以及恶意代码注入等行为,也被用于漏洞修补、应用分析、应用保护等工作。

Android应用大多以Java代码编写主要逻辑,修改由Java代码生成的dex文件是Android应用重打包技术的核心。主流的应用重打包方法是将dex中的Dalvik字节码反编译为Smali代码,修改Smali代码,然后重新编译生成新的dex文件,最后对应用进行重新签名。除此以外,也可以将dex反编译为Java或Jimple语言,修改后再重新编译dex并签名。

为了对抗反编译和重打包,出现了Android加壳技术。常见的加壳方式是将原有代码拆分加密,在应用运行过程中还原再执行。除此以外,存在壳将部分Dalvik字节码转换为二进制代码,或转换为自定义虚拟机的指令。

为了重打包加壳后的应用,目前的方法是先脱壳,还原原始代码,然后使用传统应用重打包技术,修改并编译生成新的应用。然而,这种方法的局限在于需要正确的脱壳方法,能完整提取原有代码,并能修复脱壳后的代码,保证应用能够正常运行。但是脱壳本身是一项复杂的工作,且脱壳后的代码通常不能直接正常运行,修复代码同样是一项复杂的工作。

发明内容

基于上述内容,本发明提供了一种Android非侵入式应用重打包方法,通过不修改原有应用代码的代码注入方式,向目标应用注入Hook框架,动态修改应用代码行为,实现对应用的重打包。本发明适用于加壳Android应用与非加壳Android应用,具备通用性。对于加壳应用,本发明不要求脱壳,也不需要修复脱壳后的代码,规避了传统方案的缺陷。

为了实现上述目的,本发明采用以下技术方案:

本发明提供了一种Android非侵入式应用重打包方法,包括:

1)利用不修改原有应用代码的方式,向目标应用注入外部代码。Android应用以zip压缩包的形式存在,压缩包内包含Java编译生成的dex(Dalvik可执行文件)和C/C++编译生成的so(共享库)。不修改原有应用代码是指应用内部的dex和so文件可以被移动和重命名,但不会被修改,保持代码内容不发生改变。注入外部代码是指向目标应用的压缩包内放入新的dex或so文件,并且当目标应用运行时,外部代码会被运行,且原有代码正常运行。注入的外部代码目的是加载Hook框架与重打包插件。Hook框架与重打包插件可以作为外部代码的一部分,也可以作为单独的资源文件或网络文件,由外部代码动态加载。但外部代码的内容需要满足一定的条件:1)和原应用的逻辑相关,才能在注入后被应用运行;2)会执行原应用的部分逻辑,恢复应用的上下文环境,让应用可以正常执行。

外部代码在运行过程中,可以通过动态加载的方式,加载更多dex与so文件(Android有相关API可以动态加载dex或so文件;这里的dex或so可以是任意文件,包括Hook框架和重打包插件)。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201811118360.6/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top