APK二次打包的危害
APK二次打包是Android应用安全风险中的一部分, 一般是通过反编译工具向应用中插入广告代码与相关配置,再在第三方应用市场、论坛发布。打包党对移动App带来的危害有以下几种:
- 插入自己广告或者删除原来广告;
- 恶意代码, 恶意扣费、木马等;
- 修改原来支付逻辑;
上述恶意行为严重危害移动产品和用户利益,同时也影响企业口碑。
APK的签名机制
Google设计APK的签名机制就是防止两个问题:
- 不让别人修改APK包,防止反编译后二次打包;
怎么做到不让别人二次打包呢?Android系统在安装APK时,会先去确认是否有签名、签名是否能对上; - Android系统在安装APK包时,不允许安装同一个包名但是签名不一样的APK;
下面开始分析APK打签名的流程:
需要了解的背景知识
自行去百度,了解概念即可;
- 数据摘要(数据指纹)、MD5\SHA-1对称加密算法
- 非对称加密算法
- 数字签名、数字证书
- 手动签名APK包
1.查看META-INF文件
将.apk包修改后缀成.zip,解压之后打开该文件夹,找到META-INF目录。