[发明专利]SO文件的保护方法、装置及安卓安装包的加固方法和系统在审
申请号: | 201410659762.2 | 申请日: | 2014-11-18 |
公开(公告)号: | CN104392181A | 公开(公告)日: | 2015-03-04 |
发明(设计)人: | 施华国;刘敦俊;杨新权 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F21/62 | 分类号: | G06F21/62 |
代理公司: | 北京市隆安律师事务所 11323 | 代理人: | 权鲜枝;何立春 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | so 文件 保护 方法 装置 安装 加固 系统 | ||
技术领域
本发明涉及数据安全领域,具体涉及SO文件的保护方法、装置及安卓安装包的加固方法和系统。
背景技术
安卓平台发展迅速,已经逐渐成为了移动终端的最普及的操作系统,与其他终端操作系统相比,开放式的安卓系统为应用开发者提供了更多的功能接口,这些功能接口在提高了系统的可扩展性,但同时也为恶意软件提供了便利。针对安卓系统的木马等恶意软件可以通过伪装的方式保存在安卓安装包中,骗取用户安装并授予一定的权限,之后通过滥用权限在后台执行一些特定行为,包括窃取用户隐私、骗取资费等行为;不仅如此,对于一些正常的安卓系统应用,也存在通过非法拷贝、逆向工程、反编译、调试、破解、二次打包、内存截取等手段来威胁安卓系统的安全,不仅危害了使用者,也给正常应用开发者造成严重的损害。
目前市面上针对安卓安装包的保护主要是基于对dex文件的保护,一般是通过对dex文件进行加密和混淆等处理手段来实现,在安卓安装包运行时再动态解密,还原内容。但是由于dex文件的反编译难度较低,很容易被反编译工具轻易逆向,导致该类方案始终无法完全解决安卓安装包面临的安全问题,开发者们也一直在寻求更有效的解决方案。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的SO文件的保护方法、装置及安卓安装包的加固方法和系统。
依据本发明的一个方面,提供了一种SO文件的保护方法,该方法包括:
将待保护的SO文件作为代码数据写入壳程序文件中;
对所述壳程序文件中的所述SO文件进行加保护处理。
可选地,所述对所述壳程序文件中的所述SO文件进行加保护处理包括如下中的一种或多种:
去掉所述SO文件中的部分信息;
对所述SO文件进行分段加密处理;
对所述SO文件进行代码混淆处理;
对所述SO文件进行反调试处理。
可选地,所述去掉所述SO文件中的部分信息包括:
去掉部分或全部头部信息。
可选地,所述对所述SO文件进行分段加密处理包括:
对所述SO文件的数据节和代码节分别进行加密。
可选地,所述对所述SO文件进行代码混淆处理包括:
在所述SO文件的代码中填充控制量代码得到扩充后的第一代码;
采用指定代码混淆工具从第一代码中提取出控制量以外的代码,对提取出的代码的顺序进行随机化处理,并在其中插入跳转指令代码,以保证程序能够正常执行。
可选地,对所述SO文件进行反调试处理包括:
将可用于反调试的点插入到所述SO文件进行代码混淆后的代码中。
可选地,所述壳程序文件中包含能够对加保护处理后的SO文件进行解密处理的代码。
可选地,该方法进一步包括:
对所述壳程序文件进行加密处理。
根据本发明的另一个方面,提供了一种安卓安装包的加固方法,该方法包括:
将对安卓安装包实现加密保护的代码保存到所述安卓安装包的lib目录下的SO文件中;
对所述SO文件采用如上任一项所述的方法进行保护;
将进行保护后的SO文件和所述安卓安装包的其他部分重新打包生成加固安装包。
可选地,所述对安卓安装包实现加密保护的代码为:对安卓安装包中的dex文件进行加密保护的代码,或者,安卓安装包中的dex文件核心代码。
可选地,该方法进一步包括:
根据所述SO文件的相关信息,修改所述壳程序文件中的相关配置信息。
可选地,所述修改所述壳程序文件中的相关配置信息包括:
修改所述壳程序文件中的如下参数中的一种或多种:校验码、SHA1签名和文件长度的信息。
可选地,该方法进一步包括:
根据包含SO文件的所述壳程序文件的文件信息,修改所述安卓安装包中的全局配置文件。
可选地,该方法包括:
接收用户上传的需要进行加固保护的安卓安装包;其中,所述对安卓安装包实现加密保护的代码保存到所述安卓安装包的lib目录下的SO文件中;
对所述SO文件采用如权利要求1-8中任一项所述的方法进行保护;
将进行保护后的SO文件和所述安卓安装包的其他部分重新打包生成加固安装包供所述用户下载。
根据本发明的一个方面,提供了一种SO文件的保护装置,该装置包括:
写入单元,适于将待保护的SO文件作为代码数据写入壳程序文件中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410659762.2/2.html,转载请声明来源钻瓜专利网。