当有人窃取Android应用程序的释放密钥时会发生什么恶事?

时间:2016-08-18 20:12:05

标签: android google-play key sign

在能够在Google Play上发布Android应用之前,需要使用发布密钥进行签名。它据说是为了安全。生成密钥时,必须输入密码。

这里有什么大惊小怪的? 让我问一下,如果我的释放密钥被盗/被复制会发生什么。假设某人甚至可以设法使用该密钥签署他/她自己的应用程序。这意味着什么不好?

我会争辩,几乎没有,对吗? (考虑到我的开发者帐户/控制台凭据也没有被盗) 如果有人使用被盗释放密钥签名的应用程序能够更直接地访问我的应用程序的数据(在用户设备上),那么最大/唯一的风险可能会出现。

1 个答案:

答案 0 :(得分:5)

他们可以抓取您的APK(在所有Android设备上公开阅读),修改它(例如,添加恶意软件),签名并分发它。假设他们碰到versionCode,任何试图安装他们的应用程序的黑客版本的人都会成功,从Android的角度来看,这是一个有效的升级。如果黑客可以获取您的分销渠道的凭据(例如,破坏Play商店的Google帐户),他们就可以将更新发送给您的所有用户。

或者,他们可以创建自己独立的APK并使用您的签名密钥进行签名。现在,您的应用程序和他们的应用程序都使用相同的密钥签名。这开辟了其他攻击途径:

  • 如果您使用了android:sharedUserId,他们可以获取内部存储上的所有应用文件,这些文件通常受到其他应用程序的保护(在root设备之外)

  • 如果您使用了signature protectionLevel的权限,他们的应用可以拥有相同的权限,并且可能会以您希望自己的应用套件使用的方式与您的应用进行互动