1. 什么是签名漏洞
Android证书签名漏洞,是指攻击者可以在不改变原APK的签名情况下修改APK的代码,从而绕过Android的签名认证安全机制。通过植入恶意代码的到仿冒的App中,就可替代原有的App做下载、更新。
正常情况下,开发者发布了一个应用,该应用一定需要开发者使用他的私钥对其进行签名。恶意攻击者如果尝试修改了这个应用中的任何一个文件(包括代码和资源等),那么他就必须对APK进行重新签名,否则修改过的应用是无法安装到任何Android设备上的。
2. MasterKey漏洞
2.1. 背景
这个漏洞是由国外的一家安全公司Bluebox Security在2013年7月初揭露的,这个漏洞自Android1.6版本就一直存在,漏洞的覆盖范围达到99%。
2.2. 影响范围
理论上会影响2013年5月以前的android系统,大概是4.3之前的android,大概可以控制95%以上的Android手机。
2.2. 原理
该漏洞位于luni/src/main/java/java/util/zip/ZipFile.java目录下,具体的漏洞点如下:
for (int i = 0 ; i < numEntries; ++i)
{
ZipEntry newEntry = new ZipEntry (hdrBrf , bin) ;

本文详细阐述了Android中的签名漏洞,包括MasterKey漏洞如何利用ZIP文件结构绕过签名验证,Janus漏洞如何利用DEXAPK绕过签名校验,以及Google签名认证体系的发展。重点讲解了不同版本的签名方案和应对策略。
9128

被折叠的 条评论
为什么被折叠?



