jSQL Injection en Kali Linux

 

 https://www.onlinetis.com/es/

jSQL Injection en Kali Linux

Si estás buscando información sobre jSQL Injection en Kali Linux, estás en el lugar correcto. Esta es una de las herramientas favoritas para realizar pruebas de penetración (pentesting) de forma gráfica, lo que la hace mucho más amigable que opciones de terminal como sqlmap.

Aquí tienes una guía rápida y clara sobre qué es y cómo empezar.


¿Qué es jSQL Injection?

jSQL Injection es una aplicación ligera en Java diseñada para automatizar el proceso de encontrar y explotar vulnerabilidades de SQL Injection en servidores web. A diferencia de otras herramientas, jSQL te ofrece una interfaz visual donde puedes ver las bases de datos, tablas y columnas casi como si estuvieras usando un explorador de archivos.

Características principales:

  • Inyección automática: Soporta varios tipos de inyección (Normal, Blind, Error, Time-based).

  • Gestión de archivos: Permite leer y escribir archivos en el servidor si los privilegios lo permiten.

  • Fuerza bruta: Capacidad para realizar ataques de diccionario sobre hashes de contraseñas.

  • Shell remota: Puede intentar crear una shell (web shell) para control total.


Cómo usarlo en Kali Linux

1. Instalación

Normalmente ya viene en los repositorios de Kali. Puedes instalarlo o actualizarlo con:

sudo apt update && sudo apt install jsql

2. Ejecución

Puedes buscarlo en el menú de aplicaciones bajo la categoría "Database Assessment" o simplemente escribir en tu terminal:

jsql

3. Pasos básicos para una prueba:

  1. Introduce la URL: Pega la dirección del sitio sospechoso en la barra superior (ejemplo: http://sitio-ejemplo.com/item.php?id=1).

  2. Analizar: Presiona el botón de la flecha o "Enter". jSQL analizará si el parámetro es vulnerable.

  3. Explorar: Si encuentra la vulnerabilidad, verás en el panel izquierdo la estructura de la base de datos.

  4. Extraer: Selecciona las tablas (como users o admin) y haz clic derecho para ver los datos.


⚠️ Nota de seguridad y ética

Recuerda que usar jSQL contra sitios web sin el permiso explícito del dueño es ilegal. Esta herramienta debe ser usada exclusivamente en entornos controlados, laboratorios de práctica o durante auditorías de seguridad profesionales debidamente autorizadas.

Tip de experto: Aunque jSQL es excelente por su interfaz, a veces falla con firewalls (WAF) complejos. Si jSQL no logra "romper" un sitio, suele ser buena idea intentar lo mismo con sqlmap --level 5 --risk 3.


Vamos a profundizar. Aunque jSQL es conocido por ser "apuntar y hacer clic", su verdadero poder reside en la pestaña de Settings (Configuración), donde puedes ajustar cómo se comporta la herramienta para evadir firewalls o manejar bases de datos específicas.

Aquí tienes los parámetros clave que deberías conocer para optimizar tus pruebas:


1. Pestaña de Conexión (Connection)

Esta es la sección más importante si el servidor objetivo tiene protecciones básicas.

  • User-Agent: Por defecto, jSQL se identifica como un script de Java. Muchos WAF (Web Application Firewalls) bloquean esto de inmediato.

    • Tip: Cámbialo por un User-Agent de un navegador real (ej. Chrome o Firefox) para pasar desapercibido.

  • Proxy: Si quieres ocultar tu IP real o usar Burp Suite para analizar el tráfico que genera jSQL, aquí es donde configuras el 127.0.0.1:8080.

  • Timeouts: Si el sitio es lento, aumenta el tiempo de espera para evitar que jSQL asuma que el parámetro no es vulnerable solo porque la respuesta tardó en llegar.

2. Pestaña de Inyección (Injection)

Aquí defines "cómo" va a atacar la herramienta.

  • Métodos (Methods): Puedes forzar a la herramienta a usar solo un tipo de inyección.

    • Blind (Ciega): Úsala si la página no muestra errores de SQL en pantalla pero cambia sutilmente su contenido.

    • Time-based: Es la más lenta, pero efectiva cuando no hay cambios visuales (la base de datos "pausa" su respuesta para confirmar la inyección).

  • Prefix / Suffix: A veces necesitas "cerrar" manualmente la consulta SQL original para que el exploit funcione.

    • Ejemplo: Si la URL original es .../id=('1'), podrías necesitar un prefijo como ') y un sufijo como -- -.


3. Estrategias de Evasión (Tamper)

Si el servidor tiene filtros que bloquean palabras como SELECT o UNION, puedes intentar lo siguiente en la configuración:

ParámetroFunción
CommentsInserta comentarios de SQL (/**/) entre las palabras clave para confundir filtros simples.
URL EncodeCodifica los caracteres especiales para que el firewall no los reconozca como código malicioso.
Case SensitivityAlterna entre sElEcT y SELECT para evadir reglas de filtrado rígidas.

4. Archivos y Shell (File / Shell)

Si logras privilegios de administrador (DBA), jSQL te permite interactuar con el sistema de archivos:

  • Load File: Úsalo para leer archivos sensibles como /etc/passwd (en Linux) o archivos de configuración de PHP (config.inc.php) para obtener contraseñas de la base de datos.

  • Web Shell: Puedes intentar subir un pequeño script PHP para ejecutar comandos de sistema directamente en el servidor.


Dato curioso: jSQL utiliza internamente una lista de "pay-loads" muy similar a la de herramientas profesionales. Si una inyección falla, revisa la pestaña Network (dentro de jSQL) para ver exactamente qué respuesta está devolviendo el servidor (403 Forbidden, 404, 500, etc.).

Entradas populares de este blog

Hacking y ciberseguridad en kali linux con Fping

Hacking y ciberseguridad en kali linux con atk6-thcping6

Como utilizar Fierce en kali linux