场景: 假设通过反向工程.apk文件,攻击者获得SENDER ID了应用程序中使用的Push Push Service服务。攻击者开发了一个相似的假冒应用程序,该程序包名称相同/不同,并且已上传到与Google Play不同的应用商店中。
.apk
SENDER ID
我的问题: 他/她可以在应用中使用相同的SENDER ID吗?对于安装该伪造应用程序的用户而言,这意味着什么?
相关问题: 谷歌云消息传递安全性)问题似乎有点相似。另外,AndroidGCM的答案是[:相同的发件人ID,可解决更多应用问题,提供了有价值的信息。阅读两个公认的答案,得出的结论似乎是绝对有可能的,这就是为什么建议在PushMessages中不要包含敏感数据的原因。
但这似乎并不是解决问题的方法。我无法理解上述安全失效的影响。
发件人ID(又称GoogleAPI项目ID)未绑定到唯一的应用程序包名称。实际上,多个应用可以使用相同的发送者ID注册到GCM,这将允许使用相同的API密钥将GCM消息发送到所有这些应用。当然,每个应用程序都有不同的注册ID(即使在同一设备上)。
如果某人知道您的发件人ID,则可以使用该发件人ID注册到GCM,但是如果不知道API密钥,他们将无法将GCM消息发送到假应用程序或真实应用程序。当他们注册到GCM时,GCM会收到其假冒应用程序的软件包ID。因此,如果您向真实应用程序的注册ID发送消息,则该消息不会到达虚假应用程序。为了使伪造的应用程序从您的服务器获取消息,它将需要将自己的注册ID发送到您的服务器,并欺骗您的服务器以使其认为它是真实的应用程序。在我们的服务器应用程序中,您必须提及我们的API密钥。如果您想发送任何通知,则需要它。