Solucionar la vulnerabilidad de una interfaz JavaScript sensible

Esta información va dirigida a los desarrolladores que tengan aplicaciones con la vulnerabilidad de una interfaz JavaScript sensible.

¿Qué ocurre?

Consulta el aviso en Play Console.

Una vez que finalice el plazo indicado en Play Console, es posible que las aplicaciones que contengan vulnerabilidades de seguridad sin corregir se retiren de Google Play.

¿Qué tienes que hacer?​

  1. Abre la notificación de Google Play que se ha enviado a la dirección de correo del propietario de la cuenta para consultar qué aplicaciones se han visto afectadas y las fechas límite para corregir estos problemas.
  2. Actualiza las aplicaciones afectadas y corrige la vulnerabilidad.
  3. Envía las versiones actualizadas de las aplicaciones afectadas.

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.

Detalles adicionales

Según la Política de Uso Inadecuado de Dispositivos y Redes, las aplicaciones o el código de terceros (por ejemplo, SDKs) con JavaScript cargado en el momento de la ejecución no deben permitir posibles infracciones de las Políticas para Desarrolladores de Play. 

En este artículo, se hace referencia a los objetos que exponen funciones a un elemento WebView a través del método addJavascriptInterface de un elemento WebView como interfaz JavaScript, tal y como se describe en la entrada "Cómo crear aplicaciones web en WebView" del blog de Google Developers.

Esta clase de vulnerabilidad permite que se produzcan posibles infracciones de datos de usuario y de software malicioso a través de interfaces JavaScript. En función de las interfaces expuestas, esto puede provocar la recogida y filtración externa de los datos de forma imprevista, así como la carga de aplicaciones potencialmente dañinas, sin que lo sepa el desarrollador del SDK o la aplicación.

Te recomendamos que evites esta vulnerabilidad de una de estas formas:

Opción 1: Comprobar que los elementos WebView no añaden objetos a la interfaz JavaScript

Debes verificar que no se haya añadido ningún objeto a la interfaz JavaScript de cualquier elemento WebView que cargue contenido web que no es de confianza. Puedes hacerlo de dos formas:

  1. Comprueba que en ningún momento se hayan añadido objetos a la interfaz JavaScript a través de llamadas a addJavascriptInterface.
  2. Retira los objetos de la interfaz JavaScript que aparecen en shouldInterceptRequest a través de removeJavascriptInterface antes de que el elemento WebView cargue contenido que no sea de confianza.

Opción 2: Comprobar que las funciones sensibles no se exponen a través de una interfaz JavaScript

Asegúrate de que las funciones sensibles (como las llamadas a la API de Android que requieran permisos) no se añaden a las interfaces JavaScript. Para ello, no se deben recoger datos sensibles, como información sobre el usuario o el dispositivo, ni exponer APIs, como la de accesibilidad o de mensajes SMS. Puedes corregir la vulnerabilidad de varias formas:

  1. Vuelve a implementar cualquier función que requiera permisos sensibles o que recoja información sensible para que se llame a la función desde el código del paquete de la aplicación. Asegúrate de que se proporciona un aviso destacado a los usuarios.
  2. Retira las funciones que proporcionan acceso a funciones sensibles o a datos de usuario a los que se puede acceder desde la interfaz.

Opción 3: Comprobar que tu elemento WebView no expone funciones sensibles a contenido que no sea de confianza

Si tu elemento WebView contiene funciones sensibles, es posible que no cargue JavaScript arbitrario de fuentes desconocidas. Asimismo, debe proporcionar un aviso destacado de los datos o de las funciones que se utilizan. Asegúrate de que solo se cargan en el elemento WebView las URLs delimitadas y el contenido que pertenece al desarrollador de la aplicación.

En el caso de que la vulnerabilidad no se solucione, se aplicarán requisitos obligatorios a la aplicación para prevenir posibles infracciones de las políticas de Play.

Estamos aquí para ayudarte

Si has revisado la política y crees que hemos tomado esta decisión por error, ponte en contacto con nuestro equipo de asistencia de políticas. Nos pondremos en contacto contigo en un plazo de dos días hábiles.

Gracias por tu colaborar con nosotros para que la experiencia de los desarrolladores y clientes de Google Play sea positiva.

 

¿Te ha resultado útil esta información?
¿Cómo podemos mejorar esta página?

¿Necesitas más ayuda?

Inicia sesión si quieres ver otras opciones de asistencia para solucionar tu problema.

Búsqueda
Borrar búsqueda
Cerrar búsqueda
Aplicaciones de Google
Menú principal
Buscar en el Centro de ayuda
true
92637
false