elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 05:57  


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)

+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Bugs y Exploits
| | |-+  Nivel Web (Moderadores: sirdarckcat, WHK)
| | | |-+  [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)  (Leído 4,773 veces)
ZaPa

Desconectado Desconectado

Mensajes: 36


Ver Perfil
[SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« en: 15 Marzo 2010, 00:35 »

Hola a todos.

¿Que tal?

Aver si me pueden hechar una mano.

Este fin de semana, he estado prácticando en la web de un amigo (que hizó de prueba, una tienda online con asp un poco cutre) el tema de sql injection.

El caso es qué aposté con el una cenita si conseguia encontrar/explotar algún fallo de seguridad en su página web que él recientemente habia hecho.

El caso es que he encontrado un fallo de seguridad con lo que se puede jugar con sql injection, el problema es que, no consigo hacer todo lo que quiero...

La sql injection está aqui:
Código:
http://www.paginaweb.com/cgi-bin/datos.asp?user=46&id='Select * from productos.ref--'

Detrás de la variable id= puedo jugar con sql injection, pero no consigo, por ejemplo, hacer un insert....:

Código:
http://www.paginaweb.com/cgi-bin/datos.asp?user=46&id='Select * from productos.ref--'
Al hacer esto por ejemplo (y con otras muchas más consultas) el servidor sql me contesta lo siguiente:


Código:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC SQL Server Driver][SQL Server]Error al convertir el tipo de datos varchar a float.

/cgi-bin/datos.asp, línea 25

Dice que no puede convertir datos de varchar a float... pero... ¿que datos?
Si solamente le estoy diciendo que muestre datos..

El caso es que...con (Select Count(*)...) si pudé adivinar los campos que tenia dicha tabla, ya que jugando con > & < pudé dar con los items disponbiles en la tabla productos, pero poco más..

¿Alguna idea?

Un saludo.
Muchas gracias.
« Última modificación: 15 Marzo 2010, 00:36 por ZaPa » En línea
Shell Root


Desconectado Desconectado

Mensajes: 2.456


Alex Jurado


Ver Perfil WWW
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #1 en: 15 Marzo 2010, 00:41 »

Creo que te puede servir

:http://mx0x.diosdelared.com/?coment=2456
En línea

---
ZaPa

Desconectado Desconectado

Mensajes: 36


Ver Perfil
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #2 en: 15 Marzo 2010, 00:59 »

Hola tooRllehS@xelA y muchisimas gracias por tu respuesta...


Entonces.... por donde estoy intentando hacer sql injection no puedo hacer más cosas?

¿No podria solucionar el error que me esta dando y asi conseguir info?


Un saludo.
En línea
tragantras


Desconectado Desconectado

Mensajes: 466


Ver Perfil
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #3 en: 16 Marzo 2010, 00:19 »

es precisamente con los errores como se consigue la información, la técnica se denomina "técnica del error".

mirate el documento que te puso shellroot
En línea

Colaboraciones:
1 2
ZaPa

Desconectado Desconectado

Mensajes: 36


Ver Perfil
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #4 en: 17 Marzo 2010, 12:39 »

Hola de nuevo y gracias a todos por vuestro interes y respuestas.

Si ya sé que con esta técnica la información se consigue de los errores pero.....si necesito conseguir algun dato de alguna tabla, primero debo de saber como se llama esa tabla,cierto??

El problema es ese, que no puedo visualizar las tablas o ver que tablas ahi. ¿No podria hacerlo?

¿Tendria que ir probando hasta acertar con el nombre de la tabla donde este el pass de administrador?


Un saludo.
Muchas gracias.
En línea
tragantras


Desconectado Desconectado

Mensajes: 466


Ver Perfil
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #5 en: 17 Marzo 2010, 14:05 »

al inyectar esto:   
Código:
' HAVING 1=1--
teoricamente te suelta la tabla que está usando, y a partir de ahi vas obteniendo el resto, mirate el documento que ahi aparece detallado, o si no busca por google... o si no, postea la web pero adivinar no se me da bien xD

un saludo :)
En línea

Colaboraciones:
1 2
ZaPa

Desconectado Desconectado

Mensajes: 36


Ver Perfil
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #6 en: 17 Marzo 2010, 17:38 »

Hola de nuevo y gracias por vuestras respuestas de verdad :D .
El problema es que al insertar la sentencia "HAVING" me da problemas de sintáxis...

Por ej:

Código:
variable=38715333 AND HAVING 1=1--

(38715333) Representa la referencia de un producto en la base de datos.

Al insertarle eso que introdujé anteriormente, me suelta esto:


Código:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC SQL Server Driver][SQL Server]Sintaxis incorrecta cerca de la palabra clave 'HAVING'.

Tambien he probado cerrando primero la comilla simple, osea quedaria asi:

Código:
variable=38715333 AND 'HAVING 1=1--

Pero ahi me suelta lo siguiente (avisandome de que una comilla simple no ha sido cerrada)

Código:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC SQL Server Driver][SQL Server]Comilla no cerrada antes de la cadena de caracteres 'HAVING 1=1-- ORDER BY Productos.ref'.

/cgi-bin/datos.asp, línea 25

Tambien he probado esscribiendo la sentencia having de esta forma:

Código:
variable=38715333 AND 'HAVING 1=1--'

Y entonces la base de datos me responde lo siguiente:


Código:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC SQL Server Driver][SQL Server]Comilla no cerrada antes de la cadena de caracteres 'HAVING 1=1-- ORDER BY Productos.ref'.

/cgi-bin/datos.asp, línea 25


Pero bueno....estas 2 segundas opciones son las combinaciones que he hecho yo para probar si la base de datos no se quejaba.

Lo que no entiendo es porque se queja con "Problema de Sintáxis" En la 1º inyección que he posteado.

¿Que falla aquí?


Un saludo y muchisimas gracias por su atención y ayuda.
En línea
Shell Root


Desconectado Desconectado

Mensajes: 2.456


Alex Jurado


Ver Perfil WWW
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #7 en: 17 Marzo 2010, 18:12 »

xD, pero te tiro lo que necesitas saber!
[Microsoft][ODBC SQL Server Driver][SQL Server]... Productos.ref'.
Your Pwned!, debes de leerte algo de esto, antes de intentar hacerlo!
En línea

---
ZaPa

Desconectado Desconectado

Mensajes: 36


Ver Perfil
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #8 en: 17 Marzo 2010, 18:49 »

Hola.

No te entendí.

¿Que es lo que debo leerme?

Muchas gracias man.
En línea
Shell Root


Desconectado Desconectado

Mensajes: 2.456


Alex Jurado


Ver Perfil WWW
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #9 en: 17 Marzo 2010, 20:20 »

Mira, ese tipo de inyecciones son de las más dificiles, en ocasiones encuentras 1 y de un momento a otro despues de llevar más de 20 min sacando tablas y campos, no podes seguir. xD;

Para que entiendas mejor, miraté este Tutorial de The X-C3LL.
http://foro.portalhacker.net/index.php/topic,65891.0.html
En línea

---
ZaPa

Desconectado Desconectado

Mensajes: 36


Ver Perfil
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #10 en: 18 Marzo 2010, 00:03 »

Hola de nuevo y gracias por tu respuesta shellroot.

Ya entendí lo que dijiste en el anterior mensaje....

Claro,con ese error me soltó lo que queria saber,que es el nombre de la tabla (con el que estamos trabajando) y el campo, pero en esa tabla no ahi ningun dato valioso, me gustaria saber si puedo acceder desde ahi a otras tablas...

¿Es posible?

¿como podria trabajar con otras tablas dispnibles en la db?

Muchisimas gracias man :)
En línea
Shell Root


Desconectado Desconectado

Mensajes: 2.456


Alex Jurado


Ver Perfil WWW
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #11 en: 18 Marzo 2010, 00:07 »

Nunca me llamo la antencion ese tipo de tecnica, es muy dificil y gastaria mucho tiempo, para al final depronto no conseguir nada. xD
Supongo que seria como una Blind SQL, no sé...
En línea

---
ZaPa

Desconectado Desconectado

Mensajes: 36


Ver Perfil
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #12 en: 18 Marzo 2010, 00:12 »

Pero...¿es muy dificil? pero si es una sql inyection normal,no? lo único que ocurre es que no nos enfrentamos con un formulario, es lo único que veo diferente.


Lo único que quiero saber es eso, si podria llegar a listar las tablas, osea, que no tenga que ejecutar sentencias si o si en la tabla que estamos ejecutando, que pueda trabajar con otras tablas aparte de la que esta trabajando la variable donde esta el sql inyection. ¿se entiende?


Un saludo y muchisimas gracias alex@shellroot .
En línea
Shell Root


Desconectado Desconectado

Mensajes: 2.456


Alex Jurado


Ver Perfil WWW
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #13 en: 18 Marzo 2010, 00:23 »

Se entiende correctamente, pero lo dudo bastante, dentro de MySQL seh se puede hacer. Pero dentro de este tipo de inyeccion se trabaja bajo MSSQL, si te sirve de algo, esta consulta lista todas las tablas de una base de datos.
Código
USE Base_de_Datos SELECT * FROM Information_Schema.TABLES

PD: Mejor espera que algun usuario de alto nivel (WHK, sirdarckcat, entre otros), respondan mejor la pregunta.
En línea

---
ZaPa

Desconectado Desconectado

Mensajes: 36


Ver Perfil
Re: [SQL INJECTION] ¿Me ayudas en un reto? (Abierto)
« Respuesta #14 en: 18 Marzo 2010, 00:40 »

El problema principal de esto es que me da error de sintáxis y no se porque...si yo añado esta sentencia, me da error de sintaxis:


Código:
http://www.paginaweb.com/productos.asp?variable=38715333 AND Select * from productos

Con esta nueva inyección (Select * from productos) me da error de sintáxis:

Código:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC SQL Server Driver][SQL Server]Sintaxis incorrecta cerca de la palabra clave 'SELECT'.

/cgi-bin/datos.asp, línea 25


¿Algo hago mal?

Muchas gracias de nuevo.
En línea
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[RETO ABIERTO] Cambio de base ~
Java
Dnk! 5 1,822 Último mensaje 2 Diciembre 2010, 20:28
por Dnk!
[RETO] Sql injection
Nivel Web
cur3n79 3 1,783 Último mensaje 12 Febrero 2011, 14:24
por xassiz~
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines