Résoudre les problèmes résultant de la divulgation de clés de serveur Firebase Cloud Messaging (FCM)

Ces informations sont destinées aux développeurs d'applications contenant des clés de serveur Firebase Cloud Messaging (FCM) qui ont été divulguées.

Contexte

Une ou plusieurs de vos applications contiennent des clés de serveur FCM qui ont été divulguées. Un pirate informatique malintentionné pourrait utiliser ces clés pour envoyer des notifications push à tous les utilisateurs de votre application vulnérable. Il contrôlerait le contenu de ces notifications et pourrait en profiter pour diffuser des messages choquants ou des images explicites/dérangeantes. Veuillez suivre les étapes détaillées ci-dessous pour résoudre le problème concernant votre application. Une notification dans la Play Console indique les emplacements dans votre application à partir desquels ont été divulguées les clés de serveur FCM.

Action requise

  1. Mettez à jour votre application et les clés FCM divulguées en suivant la procédure indiquée ci-dessous.

    1. Si l'ancienne API FCM est activée pour votre application et que vous ne l'utilisez pas pour envoyer des notifications push, désactivez-la.
    2. Si l'ancienne API FCM est activée et que vous l'utilisez pour envoyer des notifications push, vous pouvez effectuer l'une des deux étapes suivantes :
      1. (Recommandé) Effectuez une migration de manière à utiliser l'API FCM v1 et désactivez l'ancienne API FCM.
      2. Sécurisez l'utilisation de l'ancienne API FCM en procédant comme suit :
        1. Si vous utilisez la clé divulguée uniquement pour l'API FCM : 
          1. Générez une nouvelle clé en accédant à Console Firebase > Paramètres du projet > Cloud Messaging, puis en cliquant sur "Ajouter une clé de serveur". Utilisez cette nouvelle clé de serveur pour envoyer des messages FCM à partir de votre environnement de serveur sécurisé. Veillez à n'avoir recours à cette clé qu'à partir de votre environnement de serveur sécurisé et assurez-vous qu'elle n'est pas incluse dans votre code client (applications ou binaires).
          2. Une fois que vous avez effectué la migration pour envoyer des messages FCM à l'aide de la nouvelle clé de serveur, supprimez de la console GCP les clés de serveur qui ont été divulguées. Les emplacements de votre application qui permettent de divulguer une ou plusieurs clés de serveur FCM sont indiqués dans l'e-mail de notification de Google Play. L'étape c vous indique comment obtenir les clés divulguées à partir de ces emplacements.
        2. Si vous utilisez la clé divulguée pour d'autres API, y compris FCM, procédez comme suit :
          1. Effectuez une migration de manière à utiliser l'API FCM v1 et désactivez l'ancienne API FCM.
          2. Pour assurer l'utilisation de vos autres API à l'avenir, envisagez de ne plus vous servir de la clé divulguée pour les autres API et, à terme, de supprimer la clé divulguée de la console GCP.
    3. Après avoir effectué l'une des étapes ci-dessus, supprimez la clé de serveur FCM divulguée du code de votre application. Les emplacements de votre application qui permettent de divulguer une ou plusieurs clés de serveur FCM sont indiqués dans l'e-mail de notification de Google Play. Pour obtenir les clés divulguées, vérifiez le code de votre application à l'emplacement vulnérable. Cette clé peut être intégrée à cet emplacement sous la forme d'une chaîne ou chargée à cet emplacement à partir des ressources XML de votre application. Dans ce dernier cas, vérifiez le fichier res/values/strings.xml de votre application afin d'obtenir la clé divulguée. Veuillez prendre note des points ci-dessous :
      • Si vous suivez la procédure ci-dessus, mais ne supprimez pas les clés divulguées de votre application, vous continuerez à recevoir des notifications de failles dans votre messagerie ou la Google Play Console. 
      • Si vous supprimez les clés divulguées de votre application, mais que vous ne suivez pas la procédure ci-dessus, vous n'aurez pas réellement résolu le problème, car un pirate informatique pourra simplement trouver la clé dans une ancienne version de votre application et l'utiliser pour attaquer votre application.

2. Envoyez votre APK mis à jour.

Pour envoyer un APK ou un app bundle mis à jour, procédez comme suit :

  1. Accédez à la Play Console.
  2. Sélectionnez l'application.
  3. Accédez à l'explorateur d'app bundle.
  4. Sélectionnez la version non conforme de l'application pour l'APK/app bundle dans le menu déroulant situé en haut à droite, puis notez les releases concernées.
  5. Accédez au canal qui pose problème. Il s'agit de l'une des quatre pages suivantes : Interne/Fermé/Test ouvert ou Production.
  6. En haut à droite de la page, cliquez sur Créer une release. Vous devrez peut-être d'abord cliquer sur "Gérer le canal".
    • Si la release contenant l'APK non conforme est à l'état de brouillon, supprimez-la.
  7. Ajoutez la version conforme des app bundles ou des APK.
    • Assurez-vous que la version non conforme des app bundles ou des APK figure dans la section Non inclus de cette release. Pour en savoir plus, consultez la section "App bundles et APK non inclus" de cet article d'aide de la Play Console.
  8. Pour enregistrer les modifications apportées à votre release, sélectionnez Enregistrer.
  9. Une fois la préparation terminée, sélectionnez Examiner la release.

Si l'APK non conforme est publié sur plusieurs canaux, répétez les étapes 5 à 9 pour chaque canal.

Votre application sera à nouveau examinée. Le processus peut durer plusieurs heures. Si votre application est approuvée et publiée, aucune autre action de votre part n'est requise. Si l'application n'est pas approuvée, sa nouvelle version ne sera pas publiée et vous recevrez une notification par e-mail.

Nous sommes là pour vous aider

Si vous avez des questions techniques sur cette faille, vous pouvez publier un message sur le site Stack Overflow en utilisant le tag "android-security". Si vous souhaitez obtenir des éclaircissements sur la procédure à suivre pour résoudre ce problème, vous pouvez contacter notre équipe d'assistance aux développeurs.

Menu principal
5181969813751894551
true
Rechercher dans le centre d'aide
true
true
true
true
true
5016068
false