Cómo resolver la implementación no segura de HostnameVerifier

Está información está dirigida a desarrolladores cuyas apps usan una implementación no segura de la interfaz HostnameVerifier que acepta todos los nombres de host cuando se establece una conexión HTTPS con un host remoto mediante la API de setDefaultHostnameVerifier, lo que ocasiona que la app sea vulnerable a ataques de intermediarios. Cualquier atacante podría leer y hasta cambiar los datos transmitidos (como credenciales de acceso) en la conexión HTTPS.

Novedades

A partir del 1 de marzo de 2017, Google Play comenzó a bloquear la publicación de apps nuevas o actualizaciones que usan una implementación no segura de la interfaz HostnameVerifier. Consulta la notificación en tu cuenta de Play ConsoleDespués de los plazos que aparecen en Play Console, es posible que se eliminen de Google Play todas las apps que contengan vulnerabilidades de seguridad no resueltas.

Acción necesaria​

  1. Accede a tu cuenta de Play Console y desplázate a la sección "Alertas" para ver qué apps están afectadas, así como los plazos para resolver los problemas.
  2. Actualiza las apps afectadas y corrige la vulnerabilidad.
  3. Envía las versiones actualizadas de las apps afectadas.

Una vez que las hayas reenviado, revisaremos tu app nuevamente. Este proceso puede demorar varias horas. Si la app pasa la revisión y se publica sin problemas, no se requiere ninguna otra acción. Si la app no pasa la revisión, no se publicará la nueva versión, y recibirás una notificación por correo electrónico.

Detalles adicionales

Para implementar la verificación del nombre de host de manera correcta, cambia el método de verificación en tu interfaz personalizada de HostnameVerifier para que muestre el resultado como falso cada vez que el nombre de host que presente el servidor no cumpla con tus expectativas.

Ten en cuenta que las apps también deben cumplir con el Acuerdo de Distribución para Desarrolladores y la Política de Contenido.

Estamos aquí para ayudarte

Si tienes preguntas técnicas sobre la vulnerabilidad, publícalas en Stack Overflow con la etiqueta "android-security". Si tienes dudas sobre los pasos que debes seguir para resolver este problema, comunícate con nuestro equipo de asistencia para desarrolladores.