Los ataques tipo Cross-Site Scripting (XSS, conocidos con este acrónimo para no confundirlo con el de las hojas de estilo CSS) son una vulnerabilidad que afecta típicamente a las aplicaciones Web, y que se basa en la inserción de código Web malicioso aprovechando las carencias de filtrado de la Web afectada.
Para conocer datos técnicos sobre esta vulnerabilidad, hacemos referencia al siguiente documento, o bien a la propia entrada de la wikipedia.
Este tipo de ataque ha ido ganando importancia a lo largo del tiempo, hasta situarse en el puesto número uno dentro del ranking de amenazas Web más comunes.
A pesar de la frecuencia de esta vulnerabilidad, son muchos los que la infravaloran debido a que en la gran parte de los casos, es necesario que el usuario acceda al enlace especialmente formado para poder explotarla.
Sin embargo, y debido al gran desconocimiento de muchos usuarios, existen numerosas técnicas para que, tanto de forma directa como indirecta, se acabe accediendo a la URL infectada.
Como muestra del alcance de esta vulnerabilidad, en el siguiente vídeo se ven algunos ejemplos de hasta que punto se puede tomar el control de un ordenador que ha sido víctima de un Cross-Site Scripting, y como utilizando BeEF (Browser Explotation Framework) se puede llegar a controlar todo una botnet.
Muy conocido fue el caso del gusano Samy que afectaba a la red social MySpace y que aprovechaba un Cross-Site Scripting para infectar a todos los usuarios de esta red.
A modo de resumen final, se listan algunos ataques que pueden utilizar un Cross-Site Scripting como vector de ataque:
Phishing
Hijacking de sesiones
Robo de credenciales
Defacements
Escaneo de redes
keylogging
Jonathan Barajas
S21sec Auditoría

Redes

7 comentarios:
Buenas,
muy interesante. La verdad es que desconocía el poder que tenía esta vulnerabilidad que es fácil de encontrar!
Salu2!
Perdonad por volver a comentar, pero queréis decir que con un xss como este:
http://www.karlosnet.com/General/buscador.php?busc=%3Cscript%3Ealert(5)%3C%2Fscript%3E&i=0&image.x=0&image.y=0
se podría hacer todo lo que aparece en el vídeo?
Increíble...
salu2
Buenas zipp0,
La diferencia que hay entre el XSS que tu indicas y el se te utiliza en el vídeo, es que el del vídeo es permanente y solo con el hecho de que se visite la web ya te infectas, mientras que el tuyo deberías enviar la url a la víctima con el código javascript del hook y que la víctima accediese.
Con un poco de imaginación, por ejemplo posteando la URL en un foro haciendo referencia a un contenido interesante o simplemente spamenado ya vas a tener unos cuantos usuarios en tu BeEF. ;)
Salu2!
Muchas gracias por aclararme la duda ;)
Seguiré investigando sobre el tema xD
salu2
Firefox + NoScript???
Saludos
Buenas,
con Firefox + NoScript estás algo más protegido, pero si entras en el blog/foro/página en cuestión, y parte o todo el contenido necesita JavaScript, generalmente la gente suele permitir la ejecución de JavaScript para todo el sitio web, "para siempre", con lo que si la web es vulnerable y tú "aceptas ejecutar" su javascript (probablemente porque, de otro modo, no funciona correctamente la web en cuestión), ya has caído "en la trampa".
Gracias por esta información, no sabia que se podía llegar a hacer tanto
Publicar un comentario en la entrada