我使用 Firebase Messaging 创建了一个简单的项目,并使用以下依赖项。
implementation 'com.google.firebase:firebase-messaging:20.0.0'
我已经构建了该应用程序并检查了它mergedAndroidManifest.xml 文件。 Firebase Messaging SDK 唯一导出的组件是以下接收器:
<receiver
android:name="com.google.firebase.iid.FirebaseInstanceIdReceiver"
android:exported="true"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
</intent-filter>
</receiver>
我找不到权限的定义com.google.android.c2dm.permission.SEND
,尽管我已经解码了 Google Play Services APK 的 AndroidManifest.xml 并没有发现任何内容。除了其定义之外,它无法阻止恶意应用程序use-permission
它并广播伪造的意图。也因为意图是由system_server
,接收方无法检查发送方的身份。
Firebase Messaging SDK 如何应对这种威胁?
从 Play 商店安装的恶意应用程序无法使用任何以“com.google.android”开头的权限。这些是为系统特权应用程序保留的。
Play 服务“后端”应用程序安装在每个具有 Play 商店的设备上,实际上直接处理传入的 FCM 消息。它是一款特权应用程序,并且是唯一使用这些权限将数据发送到您的应用程序的应用程序。
如果您设法root您的设备并安装具有系统权限的恶意应用程序,那么您可能会遇到问题。但这就是当您绕过设备内置的安全措施时所面临的风险。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)