jSQL Injection es una aplicación ligera utilizada para encontrar información de la base de datos de un servidor distante.
Es gratuito, de código abierto y multiplataforma para Windows, Linux y Mac OS X con Java de la versión 8 a la 15.
jSQL Injection también forma parte de la distribución oficial de pruebas de penetración Kali Linux y se incluye en varias otras distribuciones como Pentest Box, Parrot Security OS, ArchStrike y BlackArch Linux.
Características
- Inyección automática de 33 tipos de bases de datos: Access, Altibase, C-treeACE, CockroachDB, CUBRID, DB2, Derby, Exasol, Firebird, FrontBase, H2, Hana, HSQLDB, Informix, Ingres, InterSystems-IRIS, MaxDB, Mckoi, MemSQL, MimerSQL, MonetDB, MySQL, Neo4j, Netezza, NuoDB, Oracle, PostgreSQL, Presto, SQLite, SQL Server, Sybase, Teradata y Vertica
- Múltiples estrategias de inyección: Normal, Error, Apilado, Ciego y Tiempo
- Varios procesos de inyección: Default, Zip, Dios
- Sandbox para SQL y scripts de manipulación
- Lista para inyectar múltiples objetivos
- Lectura y escritura de archivos mediante inyección
- Crear y visualizar Web shell y SQL shell
- Fuerza bruta de hash de contraseña
- Búsqueda de páginas de administración
- Hash, codificación y decodificación de texto
- Autenticación mediante Basic, Digest, NTLM y Kerberos
- Conexión proxy en HTTP, SOCKS4 y SOCKS5
Instalación
Instale Java 8 o hasta 15, luego descarga la última versión y haz doble clic en el archivo jsql-injection-v0.83.jar
para iniciar el programa.
https://github.com/ron190/jsql-injection/releases/
También puedes escribir java -jar jsql-injection-v0.83.jar
en tu terminal para iniciar el programa.
Si estás usando Kali Linux, obtén la última versión usando el comando
sudo apt-get -f install jsql
o realiza una actualización completa del sistema con:
sudo apt update && sudo apt upgrade
Integración continua
Este software se desarrolla utilizando librerías de código abierto como Spring, Spock y Hibernate y se prueba utilizando plataformas de integración continua como Travis CI y Github Actions.
Las pruebas de no regresión se ejecutan contra bases de datos dockerizadas y en memoria, y la GUI se prueba en la pantalla VNC en la nube en plataformas CI.
A continuación, las comprobaciones de calidad se almacenan en plataformas de calidad de código.
+---+ +-----------------------------------------------------------------------+
| | | JUNIT TEST FRAMEWORK |
| | +-----------------|-------------------------------------|---------------+
| D | +-----------------v-------------------+ +--------------v---------------+
| O | | INJECTION MODEL <--+ GUI |
| C | +-----------------|-------------------+ +------------------------------+
| K | +-----------------v-----------------------------------------------------+
| E | | SPRING API |
| R | +---|---------|----------|----------|------|------|-------|--------|----+
| | +---v---------v----------v----------v------v------v-------v--------v----+
| | | MYSQL | POSTGRES | SQL SERVER | CUBRID | H2 | DERBY | HSQLDB | SQLITE |
+---+ +-----------------------------------------------------------------------+
Scripts de banco de pruebas para PHP
Utiliza los scripts de ejemplo para probar la inyección en tu entorno local. Primero instala un entorno de desarrollo como EasyPHP, luego descarga los scripts PHP test-bed y colócalos en www/
.
https://github.com/ron190/jsql-injection/tree/master/web/test-bed
Capturas de Pantalla
Hoja de Ruta
- WAF fingerprinting
- Inyección de consulta definida por el usuario
- Inyección de rango de filas
- Full Path Disclosure (FPD)
- Estrategias: Consulta DNS fuera de banda y enrutada
Los desarrolladores no asumen ninguna responsabilidad y no se responsabilizan de ningún mal uso o daño causado por este programa.
https://github.com/ron190/jsql-injection