一种防重打包的方法及其装置制造方法及图纸

技术编号:15864311 阅读:42 留言:0更新日期:2017-07-23 09:20
本申请公开了一种防重打包的方法及其装置。该方法包括:运行安装包中的目标文件并加载安装包中的安全动态库;根据目标文件中的代码执行下述步骤:获取目标文件中嵌入的数字水印信息,以及安全动态库中存储的验证信息;根据数字水印信息和验证信息,验证安装包是否是重打包的安装包。由于本申请中安装包本身包含有验证代码,因此,无论对操作系统如何改造,也无法避开系统验证安装包的过程,解决了现有技术系统通过校验安装包自签名来验证安装包是否被重打包时,有时无法有效地验证该安装包是否被重打包的问题,且解决了现有技术系统通过计算安装包哈希值来验证安装包是否被重打包时,有时验证效率较低的问题。

【技术实现步骤摘要】
一种防重打包的方法及其装置
本申请涉及计算机
,尤其涉及一种防重打包的方法及其装置。
技术介绍
目前,许多恶意应用软件通过重打包的方式修改原始的安装包,在原始的安装包中嵌入广告、自动下载恶意软件以及实现root等程序。重打包的过程如图1所示:首先,对原始安装包进行反编译,获得该原始安装包的源代码,然后,用户对该源代码进行修改,例如,添加其他代码,添加的代码可以是广告,也可以是自动下载恶意软件的程序,等等,最后,对修改后的文件进行重打包,获得重打包的安装包。由于上述重打包的过程中对源代码进行了修改,因此,重打包的安装包的自签名,不再是原始安装包的自签名。因此,现有技术中,防重打包的方法就可以通过校验安装包的自签名,从而判断该安装包是否是被重打包,具体验证过程如图2所示:当某安装包被安装时,该安装包中的目标文件就会被运行,同时,在该安装包中的安全动态库也会被加载,通常,为了保证信息的安全性,会将一些验证信息存储在安全动态库中,该验证信息包括:该安装包对应的原始安装包的自签名。由于操作系统提供了验证安装包自签名的接口,因此,操作系统从该目标文件中获取该安装包的自签名,以及从该安全动态本文档来自技高网...
一种防重打包的方法及其装置

【技术保护点】
一种防重打包的方法,其特征在于,该方法包括:运行安装包中的目标文件并加载所述安装包中的安全动态库;根据所述目标文件中的代码执行下述步骤:获取所述目标文件中嵌入的数字水印信息,以及所述安全动态库中存储的验证信息;根据所述数字水印信息和验证信息,验证所述安装包是否是重打包的安装包。

【技术特征摘要】
1.一种防重打包的方法,其特征在于,该方法包括:运行安装包中的目标文件并加载所述安装包中的安全动态库;根据所述目标文件中的代码执行下述步骤:获取所述目标文件中嵌入的数字水印信息,以及所述安全动态库中存储的验证信息;根据所述数字水印信息和验证信息,验证所述安装包是否是重打包的安装包。2.根据权利要求1所述的方法,其特征在于,所述目标文件是将预设的代码进行编译后得到的目标文件;所述数字水印信息是在编译后得到的目标文件中的末尾嵌入的。3.根据权利要求2所述的方法,其特征在于,获取所述目标文件中嵌入的数字水印信息,具体包括:根据所述目标文件的原始长度,确定所述数字水印信息在所述目标文件中的起始地址,其中,所述原始长度为嵌入所述数字水印信息前所述目标文件的长度;根据所述起始地址,从所述目标文件中获取所述数字水印信息。4.根据权利要求1所述的方法,其特征在于,根据所述数字水印信息和验证信息,验证所述安装包是否是重打包的安装包,具体包括:验证所述数字水印信息与验证信息是否一致;若一致,则确定所述安装包是原始安装包;若不一致,则确定所述安装包是重打包的安装包。5.根据权利要求1所述的方法,其特征在于,根据所述数字水印信息和验证信息,验证所述安装包是否是重打包的安装包,具体包括:当所述数字水印信息为指令时,根据所述指令执行操作,获得操作结果;验证所述操作结果与验证信息是否一致;若一致,则确定所述安装包是原始安装包;若不一致,则确定所述安装包是重打包的安装包。6.根据权利要求1所述的方法,其特征在于,根据所述数字水印信息和验证信息,验证所述安装包是否是重打包的安装包,具体包括:当所述数字水印信息为指令时,根据所述指令执行操作,获得操作结果;验证所述操作结果与所述验证信息中的操作结果是否一致,以及验证所述指令与所述验证信息中的指令是否一致;若均一致,则确定所述安装包是原始安装包;否则,则确定所述安装包是重打包的安装包。7.根据权利要求1~6任一所述的方法,其特征在于,所述方法应用于安卓操作系统中;所述目标文件为d...

【专利技术属性】
技术研发人员:陈耀光王加水
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1