Я создал простой проект с использованием Firebase Messaging, используя следующую зависимость:
implementation 'com.google.firebase:firebase-messaging:20.0.0'
Я создал приложение и проверил его объединенный файл AndroidManifest.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
, хотя я расшифровал файл AndroidManifest.xml из Google Play Services APK итам ничего не нашел. Независимо от определения, каким бы оно ни было, оно не может помешать злонамеренному приложению use-permission
передать его и передать поддельные намерения. Также из-за того, что Содержимое доставляется system_server
, получатель не может проверить личность отправителя.
Как Firebase Messageing SDK противодействует этой угрозе?