Clicky

Nuevo ataque al navegador permite rastrear usuarios en línea con JavaScript deshabilitado

ataque con JavaScript deshabilitado

Los bloqueadores de secuencias de comandos no pueden detenerlo

Los investigadores han descubierto un nuevo canal lateral que, según dicen, se puede explotar de manera confiable para filtrar información de los navegadores web que luego podría aprovecharse para rastrear a los usuarios incluso cuando JavaScript está completamente deshabilitado.

"Este es un ataque de canal lateral que no requiere JavaScript para ejecutarse", dijeron los investigadores. "Esto significa que no pueden detenerlo los bloqueadores de secuencias de comandos. Los ataques funcionan incluso si elimina todas las partes divertidas de la experiencia de navegación web. Esto hace que sea muy difícil de prevenir sin modificar partes profundas del sistema operativo".

Al evitar JavaScript, los ataques de canal lateral también son arquitectónicamente agnósticos, lo que resulta en ataques de huellas digitales de sitios web de microarquitectura que funcionan en plataformas de hardware, incluyendo las CPU Intel Core, AMD Ryzen, Samsung Exynos 2100 y Apple M1, lo que lo convierte en el primer ataque de canal lateral conocido en los nuevos conjuntos de chips basados en ARM del fabricante del iPhone.

Los hallazgos, que provienen de un grupo de académicos de la Universidad Ben-Gurion. del Negev, la Universidad de Michigan y la Universidad de Adelaide, se presentarán en agosto en el Simposio de seguridad de USENIX.

Los ataques de canal lateral generalmente se basan en datos indirectos como la sincronización, el sonido, el consumo de energía, las emisiones electromagnéticas, las vibraciones y el comportamiento de la caché en un esfuerzo por inferir datos secretos en un sistema. Específicamente, los canales laterales de microarquitectura explotan el uso compartido de los componentes de un procesador en el código que se ejecuta en diferentes dominios de protección para filtrar información secreta como claves criptográficas.

Además, los estudios también han demostrado anteriormente ataques totalmente automatizados como "Rowhammer.js" [PDF] que se basan únicamente en un sitio web con JavaScript malicioso para desencadenar fallas en el hardware remoto, obteniendo así acceso sin restricciones a los sistemas de los visitantes del sitio web.

diagrama de ataque con JavaScript deshabilitado

diagrama de ataque con JavaScript deshabilitado

Si bien estos canales laterales con fugas se pueden tapar de manera efectiva mediante técnicas de aislamiento de dominio, los proveedores de navegadores han incorporado defensas para ofrecer protección contra ataques de tiempo y la toma de huellas digitales al reducir la precisión de las funciones de medición del tiempo, además de agregar soporte para deshabilitar completamente JavaScript mediante complementos como NoScript.

Sin embargo, la última investigación publicada esta semana tiene como objetivo evitar tales mitigaciones basadas en el navegador mediante la implementación de un ataque de canal lateral llamado "CSS Prime + Probe" construido únicamente con HTML y CSS, permitiendo que el ataque funcione incluso en navegadores reforzados como Tor, Chrome Zero y DeterFox que tienen JavaScript completamente deshabilitado o limitan la resolución de la API del temporizador.

diferentes técnicas de ataque

"Una tendencia común en estos enfoques es que son sintomáticos y no abordan la causa raíz de la fuga, es decir, el intercambio de recursos de microarquitectura", señalaron los investigadores. "En cambio, la mayoría de los enfoques intentan evitar las fugas modificando el comportamiento del navegador, logrando diferentes equilibrios entre seguridad y usabilidad".

Primero, un pequeño manual sobre los canales laterales basados en caché: a diferencia de los ataques Flush + Reload, en los que un espía puede usar una instrucción de eliminación de caché (por ejemplo, clflush en x86) para eliminar líneas de caché específicas, y determinar si la víctima accedió a estos datos volviendo a acceder a la misma línea de memoria y cronometrando el acceso para un acierto (los datos están de vuelta en el caché) o fallar (no accedido por la víctima), Prime + Probe requiere que el atacante llene todo el caché compartido para desalojar los datos del caché de la víctima, y luego cronometra sus propios accesos después de que llena el caché: la presencia de un error de caché indica que la víctima accedió a la línea de caché correspondiente, lo que provocó la eliminación de los datos del espía.

Aunque estos métodos explotan un canal de tiempo encubierto en el caché de la CPU, el nuevo ataque ideado por los investigadores de Ben-Gurion tiene como objetivo un canal lateral basado en caché en los navegadores web modernos.

Específicamente, la técnica CSS Prime + Probe se basa en renderizar una página web que incluye una variable de cadena HTML larga que cubre toda la caché (por ejemplo, un elemento <div> con un nombre de clase que contiene dos millones de caracteres), para luego realizar una búsqueda de una subcadena corta e inexistente en el texto, lo que a su vez obliga a la búsqueda a escanear toda la cadena. En el paso final, el tiempo para llevar a cabo esta operación de sondeo se envía a un servidor controlado por el atacante.

"El atacante primero incluye en el CSS un elemento de un dominio controlado por el atacante, lo que obliga a la resolución del DNS", explicaron los investigadores. "El servidor DNS malintencionado registra la hora de la solicitud de DNS entrante. El atacante luego diseña una página HTML que evoca una búsqueda de cadenas de CSS, probando efectivamente la caché. Esta búsqueda de cadenas va seguida de una solicitud de un elemento CSS que requiere la resolución de DNS del servidor malicioso. Por último, la diferencia de tiempo entre solicitudes de DNS consecutivas corresponde al tiempo que se tarda en realizar la búsqueda de cadenas, que [...] es un proxy para la contención de caché".

Para evaluar la efectividad de los métodos a través de ataques de huellas dactilares en sitios web, los investigadores utilizaron el canal lateral mencionado anteriormente, entre otros, para recopilar rastros del uso de la caché mientras se cargan diferentes sitios web, incluidos los 100 sitios web principales de Alexa, utilizando los "memorygrams" para entrenar un modelo de red neuronal profunda para identificar un conjunto específico de sitios web visitados por un objetivo.

Si bien los ataques de ocupación de caché basados en JavaScript ofrecen una mayor precisión de más del 90% en todas las plataformas en comparación con CSS Prime + Probe, el estudio señaló que la precisión lograda por esta última es lo suficientemente alta como para filtrar datos que podrían permitir que las partes malintencionadas identifiquen y rastreen a los usuarios.

"Entonces, ¿Cómo pueden acceder a la web los usuarios preocupados por la seguridad?", concluyeron los investigadores. "Un factor que complica este concepto es el hecho de que el navegador web utiliza recursos compartidos adicionales más allá de la caché, como el sistema de resolución de DNS del sistema operativo, la GPU y la interfaz de red. La partición de la caché parece un enfoque prometedor, ya sea mediante el aislamiento espacial basado en la coloración de la caché o mediante el aislamiento temporal basado en el sistema operativo".

Jesus_Caceres