Introducción a Cross Site Scripting XSS

En este post intentare dar un repasilo general de que es XSS.

XSS significa Cross Site Scripting, no lo abreviaron en CSS para no confundirlo con las hojas de estilo en cascada. Aveces también se le llama HTML injection pero esto no es correcto, lo correcto es llamarle XSS o Corss Site Scripting.

Esta vulnerabilidad es un fallo en el sistema de validacion de HTML incrustrado y consiste en inyectar código HTML y Javascript donde no debería haberlo y así conseguir algún provecho, normalmente esta vulnerabilidad se usa para el robo de cookies,  para hacer phishing y desfaces en los foros. Se suele encontrar en los buscadores de la web.

Hay dos clases de XSS, la indirecta y la directa. La indirecta es la menos censurada y la menos explotada, y la directa es mas difícil de encontrar ya que se suele filtrar mas. Haré una definición mas exacta:

-Directa: Esta es muy divertida! pero es muy difícil de encontrar una vulnerabilidad de este tipo. Se encuentra en los foros, libros de visita y webs que se puedan modificar por medio de formularios. Con una vulnerabilidad como esta siempre que alguien entre a la parte del foro donde se ha inyectado el código, se ejecutara en su navegador y hara lo que tenga que hacer, mucha gente usa esta vulnerabilidad para hacer un deface usando una etiqueta <div> que cubra toda la web o con un script que la redireccione a tu sitio.

-Indirecta: Este tipo de XSS es muy fácil de encontrar en motores de búsqueda sobre todo, en esta el código se inyecta a través de formularios, URL, cookies, programas en Flash o incluso en vídeos. Esta vulnerabilidad es mas dificil sacarle provecho ya que tenemos que conseguir que alguien entre en el enlace malicioso, mas adelante se vera lo que es un enlace malicioso.

Hay intentos de aplicaciones que pueden hacer mas facil esto del XSS pero realmente lo bonito es encontrarlas PENSANDO:

La primera es: acunetix web vulnerability scannner http://www.acunetix.com/
es una aplicacion de pago, pero tiene una version free que escanea ataques XSS
La segunda: Exploit-ME http://www.securitycompass.com/ Son un par de aplicaciones una para hacer SQL INJECTION y otra para ataques XSS , en realidad son plugins para firefox, que insertan trozos de condigo SQL o Javascript en la pagina.

Asi que lo recomendable es empezar a aprender JavaScript (en un post futuro pondre las inyecciones mas tipicas…)

Gracias a Zhynar_X y a el foro de elhacker.net

Un saludo

Anuncios