Solución para claves de servidor de Firebase Cloud Messaging (FCM) expuestas

Esta información va dirigida a los desarrolladores de aplicaciones que contengan claves de servidor de Firebase Cloud Messaging (FCM) expuestas.

¿Qué está pasando?

Una o varias de tus aplicaciones contienen claves de servidor de FCM expuestas. Un atacante malintencionado podría usar las claves expuestas para enviar notificaciones push a todos los usuarios de tu aplicación vulnerable. El atacante podría controlar el contenido de dichas notificaciones y podría enviar desde mensajes ofensivos hasta imágenes explícitas o perturbadoras. Sigue los pasos que se muestran a continuación para solucionar el problema en tus aplicaciones. Puedes ver las ubicaciones de tu aplicación que exponen claves de servidor de FCM en la notificación de Play Console sobre tu aplicación.

Acción necesaria

  1. Actualiza tu aplicación y tus claves de FCM expuestas siguiendo los pasos que se señalan a continuación:

    1. Si tienes la API de FCM antigua habilitada en tu aplicación y no la usas para enviar notificaciones push, inhabilítala.
    2. Si tienes la API de FCM antigua habilitada y la usas para enviar notificaciones push, puedes seguir cualquiera de estos dos pasos:
      1. (Recomendado) Migra a la versión 1 de la API de FCM e inhabilita la API de FCM antigua.
      2. Para proteger el uso de la API de FCM antigua, sigue estos pasos:
        1. Si usas la clave expuesta solo para la API de FCM: 
          1. Haz clic en "Añadir clave de servidor" para generar una nueva clave desde Consola de Firebase > Configuración del proyecto > Cloud Messaging. Usa la clave de servidor nueva para enviar mensajes de FCM desde tu entorno de servidor seguro. Debes utilizar esta clave únicamente desde tu entorno de servidor seguro y comprobar que no esté incluida en el código de tu cliente (aplicaciones o binarios). 
          2. Una vez que hayas pasado a enviar mensajes de FCM con la clave de servidor nueva, elimina las claves de servidor expuestas de la consola de GCP. Puedes ver las ubicaciones de tu aplicación que exponen claves de servidor de FCM en el correo de notificación de Google Play. En el paso C se describe cómo obtener las claves expuestas de estas ubicaciones. 
        2. Si usas la clave expuesta de otras APIs, incluida la API de FCM, sigue estos pasos:
          1. Migra a la versión 1 de la API de FCM e inhabilita la API de FCM antigua.
          2. Para preparar el resto de los usos de la API de cara al futuro, te recomendamos que dejes de utilizar la clave expuesta para las demás APIs y que la elimines de la consola de GCP.
    3. Cuando hayas completado uno de los pasos anteriores, elimina del código de tu aplicación la clave de servidor de FCM expuesta. Puedes ver las ubicaciones de tu aplicación que exponen claves de servidor de FCM en el correo de notificación de Google Play. Para obtener las claves expuestas, comprueba el código de tu aplicación en la ubicación vulnerable. Puede que la clave esté insertada en esa ubicación como una cadena o que se cargue en esa ubicación desde los recursos XML de tu aplicación. En este último caso, consulta el archivo res/values/strings.xml de tu aplicación para obtener la clave expuesta. Ten en cuenta lo siguiente:
      • Si realizas los pasos anteriores, pero no eliminas las claves expuestas de la aplicación, seguirás recibiendo notificaciones de vulnerabilidades en tu correo electrónico o en Google Play Console. 
      • Si eliminas las claves expuestas de tu aplicación, pero no realizas los pasos anteriores, no solucionarás el problema, ya que los atacantes solo tendrán que encontrar las claves expuestas en una versión antigua de la aplicación y usarlas para atacar a tu aplicación.

2. Envía tu APK actualizado

Para enviar un app bundle o APK actualizado, sigue estos pasos:

  1. Accede a Play Console.
  2. Selecciona la aplicación.
  3. Accede al explorador de app bundles.
  4. En el menú desplegable de la parte superior derecha, selecciona la versión del APK o app bundle que no cumple los requisitos y, después, anota las versiones a las que corresponde o corresponden.
  5. Ve al canal que tiene el problema con las políticas. Será una de estas cuatro páginas: pruebas internas/cerradas/abiertas o producción.
  6. Cerca de la parte superior derecha de la página, haz clic en Crear nueva versión. Puede que primero tengas que hacer clic en Gestionar canal.
    • Si la versión del APK que no cumple las políticas es un borrador, descártala.
  7. Añade la versión (de los app bundles o APKs) que cumple las políticas.
    • Asegúrate de que la versión (de los app bundles o APKs) que no cumple los requisitos aparezca en la sección No incluido de esta versión. Para obtener más información, consulta la sección "No incluido" (app bundles y APKs) de este artículo de ayuda de Play Console.
  8. Para guardar los cambios que realices en tu versión, selecciona Guardar.
  9. Cuando hayas terminado de preparar la versión, selecciona Revisar versión.

Si el APK que no cumple las políticas se ha lanzado en varios canales, repite los pasos 5 a 9 en cada canal.

Cuando vuelvas a enviar tus aplicaciones, se revisarán de nuevo. Este proceso puede tardar varias horas en completarse. Si una aplicación supera el proceso de revisión y se publica, no tendrás que hacer nada más. Si no lo supera, la nueva versión de la aplicación no se publicará y recibirás una notificación por correo electrónico.

Estamos aquí para ayudarte

Si tienes alguna duda técnica sobre esta vulnerabilidad, puedes publicar tu pregunta en Stack Overflow con la etiqueta "android-security". Ponte en contacto con nuestro equipo de asistencia para desarrolladores si necesitas ayuda con los pasos que debes seguir para resolver este problema.

Menú principal
6666466465163123901
true
Buscar en el Centro de ayuda
true
true
true
true
true
5016068
false