A finales de Julio, con la llegada de Chrome v68.0.3440.75 se arregló esta vulnerabilidad. Imperva ha publicado un paso a paso de cómo sería el ataque.
Engañando a la víctima para que entre en un sitio web malicioso, el atacante puede explotar la vulnerabilidad en versiones antiguas del navegador. Aunque también es posible inyectando código malicioso en sitios web legítimos o mediante publicidad.
El ataque consiste en cargar contenido de la página web legítima dentro de tags de vídeo y audio con código malicioso. Por el uso de eventos de «progreso», se puede deducir el tamaño de las respuestas de webs externas y adivinar distintos tipos de información.
Normalmente, esto no sería posible por la existencia CORS, una característica del navegador que previene que páginas web carguen recursos de otras. Sin embargo, este ataque hace un bypass de esta característica.
Al manipular webs como Facebook, es posible extraer grandes cantidades de datos de la víctima aunque, Mike Gualteri, otro investigador de ciberseguridad, afirma que este ataque puede usarse para algo más llamativo. Unos ejemplos claros serían para recopilar datos de intranets u otras aplicaciones de corporativas.
Además de ser eficaz en estas situaciones, Gualteri piensa que podría funcionar con APIs. El bug permite hacerles peticiones cuando habitualmente no se tendría acceso a ellas.
Este ataque puede resultarnos familiar, siendo bastante parecido a Wavethrough (CVE-2018-8235), el ataque que afectó a Firefox y Edge. La diferencia entre ambos está en que Wavethrough usa un servicio de trabajador y un rango de respuesta para extraer datos, mientras que en la nueva se observa el progreso de los eventos lanzados de nuestro elemento para estimar el tamaño de los recursos del control de acceso.
Ambos ataques son bastante similares, pero el bug se basa más en el tiempo. Wavethrough consigue todos los datos posibles burlando CORS, pero el fallo encontrado por Masas intenta adivinar constantemente el contenido a través de varias peticiones.
A primera vista, parece un ataque complejo pero es bastante sencillo ejecutarlo. No hay límite tampoco de usuarios a los que se les puede atacar, haciendo que intente adivinar los datos de varios usuarios a la vez.
Recomendamos actualizar a la nueva versión de Chrome para evitar que nuestros datos se vean comprometidos.