Iframe Traps
Información Básica
Esta forma de abusar de XSS a través de iframes para robar información del usuario que navega por la página web fue publicada originalmente en estas 2 publicaciones de trustedsec.com: aquí y aquí.
El ataque comienza en una página vulnerable a un XSS donde es posible hacer que las víctimas no abandonen el XSS haciéndolas navegar dentro de un iframe que ocupa toda la aplicación web.
El ataque XSS cargará básicamente la página web en un iframe en el 100% de la pantalla. Por lo tanto, la víctima no notará que está dentro de un iframe. Luego, si la víctima navega en la página haciendo clic en enlaces dentro del iframe (dentro de la web), estará navegando dentro del iframe con el JS arbitrario cargado robando información de esta navegación.
Además, para hacerlo más realista, es posible usar algunos listeners para verificar cuándo un iframe cambia la ubicación de la página y actualizar la URL del navegador con esas ubicaciones que el usuario piensa que está moviendo páginas usando el navegador.
Además, es posible usar listeners para robar información sensible, no solo de las otras páginas que la víctima está visitando, sino también de los datos utilizados para llenar formularios y enviarlos (¿credenciales?) o para robar el almacenamiento local...
Por supuesto, las principales limitaciones son que una víctima cerrando la pestaña o poniendo otra URL en el navegador escapará del iframe. Otra forma de hacer esto sería refrescar la página, sin embargo, esto podría ser parcialmente previsto deshabilitando el menú contextual del clic derecho cada vez que se carga una nueva página dentro del iframe o notando cuando el mouse del usuario sale del iframe, potencialmente para hacer clic en el botón de recarga del navegador y en este caso la URL del navegador se actualiza con la URL original vulnerable a XSS, así que si el usuario la recarga, se envenenará nuevamente (ten en cuenta que esto no es muy sigiloso).
Last updated