[发明专利]一种Android代码多样性编译方法在审
申请号: | 202211108518.8 | 申请日: | 2022-09-13 |
公开(公告)号: | CN115469878A | 公开(公告)日: | 2022-12-13 |
发明(设计)人: | 李卷孺;彭一楠 | 申请(专利权)人: | 上海掌御信息科技有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/61 |
代理公司: | 南京聚匠知识产权代理有限公司 32339 | 代理人: | 耿英 |
地址: | 200040 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 android 代码 多样性 编译 方法 | ||
本发明公开了一种Android代码多样性编译方法;包括有以下步骤:S1、在客户端上进行安装验证和编译框架;S2、在客户端上下载一级编译器;S3、在客户端上下载二级代码执行框架;S4、在客户端上下载APP功能代码;本发明通过一个轻量级验证和编译框架编译引导程序,再通过一级编译器进行编译二级代码得到二级代码执行框架,然后通过二级代码执行框架执行APP功能代码,由于二级代码执行框架的唯一性,保证了所有不同用户设备上的代码信息和执行方式均存在差异,不需要在安装前预先进行编译,降低服务器的计算开销和存储开销,使得代码的部署具有多样性,使得攻击者难以用同一套攻击方案对所有用户发起攻击,提高用户的安全性。
技术领域
本发明属于代码多样性编译技术领域,具体涉及一种Android代码多样性编译方法。
背景技术
Android平台的应用(APK)通常使用Java和C/C++语言混合开发,其代码(包括第三方代码SDK)中可能包含潜在的脆弱点,会被攻击者加以利用。现有的一些代码保护方案试图在代码编译过程中引入多样性(diversity),即为每个不同用户安装时,生成不同二进制代码结构的可执行文件,使得攻击者难以用同一套攻击方案对所有用户发起攻击。
如授权公告号为CN108681457B所公开的基于代码下沉与残码解释的Android应用程序保护方法,其虽然实现了结合两种不同的保护方法,极大的提升了攻击者攻击的门槛、增大了逆向的成本。
现有的一些代码多样性编译方案,在实际应用中主要的问题在于,需要在安装前预先进行编译,会给服务器造成较大的计算开销和存储开销,从而限制了代码多样性的部署。而将多样性编译方案放在客户端执行,可能会对原始的代码信息造成泄露风险。
发明内容
本发明的目的在于提供一种Android代码多样性编译方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种Android代码多样性编译方法,包括有以下步骤:
S1、在客户端上进行安装验证和编译框架:首先在客户端上引入一个轻量级验证和编译框架,确认客户端身份和执行环境;
S2、在客户端上下载一级编译器:在客户端上下载一个与客户端身份相关的引导程序,并使用编译框架编译引导程序,得到一个一级编译器;
S3、在客户端上下载二级代码执行框架:在客户端上下载一套受保护的二级代码,能且仅能使用一级编译器进行编译,得到一套二级代码执行框架,二级代码执行框架和用户身份及执行环境相关,具有唯一性;
S4、在客户端上下载APP功能代码:在客户端上下载加密保护的三级代码,即是应用APP功能代码,APP功能代码能且只能由二级代码执行框架执行,由于二级代码执行框架的唯一性,保证了所有不同用户设备上的代码信息和执行方式均存在差异。
优选的,所述S1中的轻量级验证和编译框架在进行下载的时候,为项目在本地创建对应的仓库,并且为了方便对代码进行管理,创建一个source文件夹,后面所有的下载的源码和编译出的产物都存储在source文件夹。
优选的,所述source文件夹作为仓库实现初始化,通过执行初始化仓库命令获取项目上最新的代码并初始化仓库内,并且将编译代码同步映射到本地存储。
优选的,所述S1中的轻量级验证和编译框架在实行之前初始化编译环境,加载相关命令,并且选择平台编译选项,再执行编译,将引导程序编译出一级编译器。
优选的,所述编译框架、所述一级编译器和所述二级代码执行框架的编译系统均分为三部分:
build/core:在这个目录中包含了大量的.mk文件;
子项目:每个子项目都包含自己的Android.mk,在编译时会被包含进去,且编译子项目是由Andorid.mk文件决定;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海掌御信息科技有限公司,未经上海掌御信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211108518.8/2.html,转载请声明来源钻瓜专利网。