SQL Injection Tool

Iniciado por [Zero], 7 Diciembre 2008, 23:00 PM

0 Miembros y 3 Visitantes están viendo este tema.

[Zero]

Jeje cierto  ;D. Lo utilizaba para comprobar fallos, bueno así ya podéis hacerlo vosotros también, xDD.

Saludos

"El Hombre, en su orgullo, creó a Dios a su imagen y semejanza.”
Nietzsche

anikillador

Cita de: Hacker_Zero en  7 Diciembre 2008, 23:00 PM


Clicamos en los campos que queramos ver:




Así de sencillo podemos obtener valores de una base de datos, y si tenemos mala fe, defacearla, aunque no hice ésta aplicación para eso, sinó para mostrar lo sencillo que puede ser inyectar consultas sql que comprometen la seguridad de muchas webs.


Limitaciones de ésta versión:

-Falla en algunos casos debido a comportamientos diferentes de lo esperado.
-Cuelgues o retrasos inesperados ante un retraso en la carga de la web.
-Hay que poner una url del tipo página.com/index.php?id=123.

Novedades para la siguiente versión:

-Funcional con muchos más casos de webs.
-Uso de dorks para buscar páginas vulnerables en google.
-AutoSearch para buscar variables vulnerables en una página.
-Optimización del código y arreglo de bugs.


Espero sugerencias  :P


Saludos

Hasta aqui no llego,.... clickeo users me aparece ya los "atributos",, pero de ahi no hay manera qeu salga los datos  :-[.... 


Darioxhcx

hacelo manualmente u.u si no va con la tool xD

OzX

me gustaria aportar algo para esto del 1=0, y 1=1, no siempre estas tan efectivo
que pasa si tiene texto aleatoreo? textos de bienvenidas distintos?
o si muestra la Hora? (que no sea js).

o tantos otros factores, que en cierta medida no es un 100% eficaz. aunque si puede ser un metodo para detectar, sumandole otros, como verificar si existe algun error en al ingresar ' ,-1, etc
erroo  mysql_fetch, y todos esos errores que salen, si se logran mezclar con esos seria un margen bastante mas pekeño.

otra cosa.
si una tabla usuario tiene 400 datos, como sacaria todos esos datos?

Animo y espero que sigas lanzando versiones brota.
Saludos¡


[Zero]

Bueno, ya estamos trabajando en la nueva versión, de la que ya os adelanto estará programada en Java por lo que será multiplataforma. Conforme al método de deteccion, pues si, tienes toda la razón, por eso muchas veces da falsos positivos, es una de las cosas que estamos tratando de mejorar, como bien dices, la clave es combinar muchos métodos para darle al programa un porcentaje mayor de eficacia.

La segunda pregunta no la entiendo del todo. Las tablas las saca de information_schema con usando limit, ya que usando group_concat(table_name) en muchas páginas no salen todas porque el ancho de la página está limitado. Las columnas las saca con group_concat(column_name) de information_scheta, ya que suelen ser menos columnas y normalmente se pueden mostrar así todas, aunque es otro de los puntos a mejorar, en la nueva versión eligirá el camino mas rápido y efectivo. Para sacar datos de columnas pues no debería tener muchos problemas, sólo que la longitud de los datos está limitada, no sé si puse 50, que si los datos sobrepasan esa longitud no se muestren.

Saludos y gracias por las ideas  :)

"El Hombre, en su orgullo, creó a Dios a su imagen y semejanza.”
Nietzsche

OzX

Cita de: Hacker_Zero en 20 Diciembre 2008, 13:02 PM
Bueno, ya estamos trabajando en la nueva versión, de la que ya os adelanto estará programada en Java por lo que será multiplataforma. Conforme al método de deteccion, pues si, tienes toda la razón, por eso muchas veces da falsos positivos, es una de las cosas que estamos tratando de mejorar, como bien dices, la clave es combinar muchos métodos para darle al programa un porcentaje mayor de eficacia.

La segunda pregunta no la entiendo del todo. Las tablas las saca de information_schema con usando limit, ya que usando group_concat(table_name) en muchas páginas no salen todas porque el ancho de la página está limitado. Las columnas las saca con group_concat(column_name) de information_scheta, ya que suelen ser menos columnas y normalmente se pueden mostrar así todas, aunque es otro de los puntos a mejorar, en la nueva versión eligirá el camino mas rápido y efectivo. Para sacar datos de columnas pues no debería tener muchos problemas, sólo que la longitud de los datos está limitada, no sé si puse 50, que si los datos sobrepasan esa longitud no se muestren.

Saludos y gracias por las ideas  :)

;D

Pues claro, por ej si tu mezclas la deteccion de errores en la pagina (metodo 1)
con los valores booleanos (metodo 2).
mas algun otro metodo.

hay podrias sacar algun porcentaje de "validacion de la vulnz" la cual seria muy eficaz.

de todas formas todas las webs son distintas y las variables desconocidas son las que mas dan dolores de cabeza. es por ello que es bueno testear bastante. yo estoy codeando algo similar pero en php. cuando tenga la verison 0.1 terminada te la muestro. para compartir ideas.


sobre lo segundo, difiero en algo.

si la obtencion de informacion es basado por el schema, entonces tienes ciertos privilegios del sistema , por ende , muxas veces no todas, pero si un gran % tienes acceso al group_concat. por lo cual es bastante efectivo mezclado con el schema, pero como tu decias, aveces no muestra toda la informacion en pantalla. por lo cual lo bueno es ocupar limit. (y aunque no lo creas en algunas webs con blind, me e encontrado que limit esta bloqueado, y no se como se sacarian los datos si no tienes group_concat, o limit, nada mas obtienes el primer valor).

podrias por ej tomar los 20 primeros valores del group_concat, que es la media que muestra en pantalla, y luego de esos 20, vas con limit del 20,21 y asi, pero la primera obtenida de informacion ocupas group_concat, ahorras recursos al hacer menos conexiones , te ahorras 19 conexiones.

otra cosa que es un dramilla que encontre codeando.
que pasa si la web es sid=12&path=album
es facil solucionar, separas por & y luego maketas de vuelta.


bueno ganas brota ¡

OzX¡

[Zero]

Jaja totalmente de acuerdo en lo que dices, la cuestión es ir perfeccionando la herramienta, probarla con las máximas páginas posibles para adaptarse lo mejor posible y abarcar el mayor número de casos.

Dos variables, hm, en ésta versión beta le puse que la url sólo pudiese tener 1 variable no sólo porque hay que separar los datos, sinó que el usuario tendría que elegir cual usar o testear las dos y tendría que volver a leer mi desordenado code en .net, jeje. Ahora con java ésto ya tiene otro color, no cuesta nada agregar opciones futuras y cada vez que me pongo a codear se me ocurren nuevas ideas. En la nueva versión estoy pensando tambien en utilizar blind sql, parece fácil de programar una vez tengas un herramienta que haga inyecciones sql y és un muy buen complemento.

Me alegro de que estés codeando algo así a nivel web, así podemos charlar sobre ideas, problemas y hallazgos, jeje.

Saludos

"El Hombre, en su orgullo, creó a Dios a su imagen y semejanza.”
Nietzsche

el_cantante

Muy interesante el programa   :)
Lo probe con algunas paginas pero el programa se me cuelga demasiado...
quizas sera que ahora no tengo una senal muy buena asi que mi conexion va muy lenta... lo probare mas y despues comento...
De todos modos espero con ansia la version final!  :D

Saludos!
El sistema del zapping mental en su apogeo, donde las horas pasan con la velocidad de la vida. No es el mismo domingo del principio, es un domingo anterior, otra temporada en el infierno, siete di­as atras.

Mr pom0

#28
ggg

Zaraki_lkenpachi

interesante el programa a voy a probarlo a ver que tal ^^ saludos ojala no se me cuelge el form :D