El 30 de marzo el security researcher James Lee dio a conocer dos vulnerabilidades de día cero que afectan a las versiones actuales de los navegadores Internet Explorer y Microsoft Edge.
Las vulnerabilidades permiten, debido a una falla en la same-origin policy en ambos navegadores, que un código javascript embebido en un sitio web malicioso recolecte información de otros sitios que el usuario se encuentre navegando.
¿En qué consiste la same-origin policy?
La same-origin policy es un sistema de seguridad cuya función es limitar cómo un script presente en un origen (entiéndase por origen la combinación de URI, hostname y puerto) puede interactuar con un recurso en otro origen diferente.
A raíz de las vulnerabilidades presentes en ambos navegadores, un atacante podría diseñar un sitio web malicioso capaz de hacer bypass sobre la same-origin policy y obtener información confidencial sobre otras sesiones que el usuario se encuentre llevando a cabo en el mismo navegador.
La prueba de concepto
Tras haber contactado a Microsoft para compartirle los detalles de las vulnerabilidades hace ya diez meses sin obtener respuesta, James Lee compartió públicamente exploits de prueba de concepto para la dos.
PoC Internet Explorer
hxxps://pwning.click/iecrossurl.html
PoC Microsoft Edge
hxxps://pwning.click/edgecrossurl.html
En ambos casos consiste en un sitio web que carga el buscador de Bing y cada varios segundos muestra un pop-up que nos devuelve la búsqueda que hemos realizado en Bing, tal y como puede observarse en las siguientes capturas de pantalla:
En caso de encontrarse funcionando correctamente la Same-Origin Policy en los navegadores el pop-up generado en los sitios web debería ser capaz de mostrar únicamente información presente en el mismo.
¿Qué riesgo representan estas vulnerabilidades?
Como puede observarse en las capturas de la PoC, la URL presente en el pop-up no se corresponde con el origen embebido, lo que nos demuestra que un atacante podría hacer bypass sobre la same-origin policy en los navegadores y acceder a recursos a los que no debería tener acceso.
Esto permitiría al atacante tener acceso a cualquier información dentro de la URL, sin importar si esta debía enocntrarse escondida. Ejemplos de información vulnerable que podría encontrarse en la URL serían cookies, sessionIDs, credenciales y tokens OAUTH, tanto en texto plano como en hash.
¿Cómo proteger nuestro entorno de esta vulnerabilidad?
De momento no hay una fecha estimada para la resolución de estas vulnerabilidades por parte de Microsoft, por lo que la medida más efectiva de momento es utilizar otros navegadores.
Los clientes de Trend Micro que cuenten con la tecnología de Virtual Patching que ofrecen tanto Vulnerability Protection como Deep Security, pueden protegerse de cualquier amenaza que explote esta vulnerabilidad a través de la siguiente regla DPI:
1009640 – Microsoft Edge And Internet Explorer Same Origin Policy Bypass Vulnerabilities
Más información:
Reporte de Trend Micro (Inglés)
Tweet de James Lee con las PoC (Inglés)