Google corrige vulnerabilidad de privacidad en Chrome que exponía el historial de navegación
Google ha abordado una vulnerabilidad de privacidad presente en Chrome durante más de dos décadas, la cual permitía a sitios web determinar el historial de navegación de los usuarios analizando los enlaces previamente visitados. Esta corrección, implementada en la versión 136 del navegador, mitiga un riesgo significativo para la privacidad de millones de usuarios.
El problema técnico: CSS y el estado de los enlaces
La vulnerabilidad se basaba en la explotación de las hojas de estilo en cascada (CSS) para identificar si un enlace había sido visitado anteriormente. Los navegadores aplican estilos diferentes a los enlaces visitados (generalmente en color morado) y no visitados (azul). Mediante JavaScript y técnicas de renderizado, un sitio web podía:
- Crear una lista de enlaces potencialmente visitados.
- Medir el tiempo que tardaba el navegador en aplicar estilos a esos enlaces.
- Determinar cuáles habían sido visitados basándose en diferencias mínimas en el rendimiento.
Este método, conocido como “timing attack”, aprovechaba que los enlaces visitados se cargan desde la caché del navegador, lo que genera un tiempo de respuesta ligeramente menor.
La solución implementada por Google
En Chrome 136, Google ha introducido cambios fundamentales en la forma en que el navegador maneja los enlaces visitados:
- Unificación del rendimiento: Ahora todos los enlaces se procesan con el mismo tiempo de respuesta, eliminando la discrepancia que permitía el ataque.
- Limitaciones en las API de renderizado: Se han restringido las formas en que JavaScript puede medir el rendimiento del renderizado de elementos.
- Protecciones adicionales en WebKit: El motor de renderizado ahora incluye salvaguardas contra este tipo de ataques de temporización.
Implicaciones para la seguridad y privacidad
Esta corrección tiene importantes repercusiones:
- Protege contra técnicas de fingerprinting que podían revelar patrones de navegación sensibles.
- Previene que sitios maliciosos creen perfiles detallados de usuarios basados en su historial.
- Reduce el riesgo de ataques dirigidos que explotan información sobre sitios visitados.
Los usuarios deben asegurarse de actualizar a Chrome 136 o versiones posteriores para beneficiarse de esta protección. La actualización también incluye otras mejoras de seguridad documentadas en el reporte oficial.
Consideraciones para desarrolladores web
Este cambio afecta algunas funcionalidades que dependían del estado de los enlaces:
- Las técnicas de optimización basadas en caché para enlaces visitados ya no son confiables.
- Los diseños que usaban :visited para funcionalidad crítica necesitarán ajustes.
- Se recomienda evitar cualquier lógica que dependa de medir tiempos de renderizado de elementos.
Google ha señalado que continuará mejorando las protecciones de privacidad en Chrome, anticipando posibles variantes de este tipo de ataques.