Google corrige un fallo en Chrome para Android 3 años después

Google corrige un fallo en Chrome para Android 3 años después

3 años es lo que ha tardado Google en publicar una actualización de software para su navegador Google Chrome. Lo cierto es que se trata de una correción parcial de una vulnerabilidad, pero al menos se van dando pasos.

El problema reside en que Google Chrome para Android filtra información de dispositivo, como el modelo de terminal y firmware instalado, algo que un atacante podría usar para aplicar uno u otro exploit si el dispositivo no cuenta con actualizaciones de seguridad suficientes.

Vulnerabilidad de revelación de información en Chrome para Android

El problema está en la forma en que la versión de Chrome para Android genera el “USer Agent”, que es una cadena de texto que contiene información del navegador y dispositivo, como la versión, firmware, etc.

Los expertos de Nightwatch apuntan a que estos datos podrían ser usados para rastrear al usuario y conocer la identidad del dispositivo.

El navegador Google Chrome para Android tiende a filtrar información que podría utilizarse para identificar el hardware del dispositivo en el que se ejecuta.

Este problema se agrava dado que muchas aplicaciones de Android usan Chrome WebView o Chrome Custom Tabs para renderizar contenido web, por lo que el riesgo de filtrado se multiplica.

Por ejemplo, aquí tenemos una muestra de identificador User Agent:

Mozilla/5.0 (Linux; Android 5.1.1; Nexus 6 Build/LYZ28K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.34 Mobile Safari/537.36

Este problema fue informado a Google hace 3 años, pero el gigante tecnológico rechazó corregirlo alegando que la aplicación funcionaba como se esperaba.

El problema se agrava porque la cabecera del user agent siempre se envía con solicitudes tanto HTTP como HTTPS, forzando los procesos en segundo plano. Para muchos dispositivos, esto podría usarse no solo para identificar al propio terminal, sino también al operador de servicios o ISP y el país.

Al final Google ha optado por corregir la vulnerabilidad en la versión 70 de Chrome (Octubre de 2018) pero el arreglo es solo parcial porque en la última versión solo se ha ocultado la información de firmware de dicha cabecera.

Aún es posible por tanto obtener el modelo de hardware del dispositivo desde el UserAgent.

La actualización afecta solo a la aplicación Chrome, no a la implementación de WebView, lo que quiere decir que los desarrolladores deberían configurar este valor a mano en sus productos y no usar las ofrecidas por Chrome.

Todas las versiones anteriores a Chrome para Android 70 están afectadas por el problema.

Autor: Alejandro Sánchez

Alejandro es técnico micro-informático, experto en seguridad de las TIC y apasionado de la tecnología. Colabora habitualmente en diferentes publicaciones de seguridad, software y análisis de hardware entusiasta.