Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-60137 — wpsqli extractor completo de SQLi + volcador para CVE-2026-60137 | Kitploit
Herramientas/GitHubGitHub/adarshthakur14777-cyber/cve-2026-60137
Ataques de ContraseñasAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebRecopilación de InformaciónSeguridad WebPruebas de PenetraciónSeguridad de Bases de Datos

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
GitHubadarshthakur14777-cyber/cve-2026-60137

CVE-2026-60137

wpsqli extractor completo de SQLi + volcador para CVE-2026-60137

Ver Repositorio
42hace 2 mesesAún no revisado

wpsqli - Extractor SQLi de WordPress (CVE-2026-60137)

Una herramienta rápida de extracción de bases de datos basada en menús que explota la vulnerabilidad de inyección SQL author__not_in en el núcleo de WordPress. Esta herramienta se centra exclusivamente en la enumeración y el volcado de bases de datos, utilizando la confusión de rutas del endpoint REST por lotes (CVE-2026-63030) para alcanzar el sumidero SQLi sin autenticación.


Tabla de Contenidos

  • Descripción General
  • Cadena de Vulnerabilidades
  • Versiones Afectadas
  • Características
  • Instalación
  • Uso
  • Opciones del Menú
  • Modos de Extracción
  • Rendimiento
  • Aviso Legal

Descripción General

wpsqli es una herramienta escrita en Python puro diseñada para explotar una vulnerabilidad encadenada en el núcleo de WordPress que permite una inyección SQL no autenticada en la base de datos. Evita la validación de la API REST de WordPress mediante un error de confusión en las rutas del endpoint por lotes, enviando una cadena de carga útil cruda directamente al sumidero SQL de WP_Query.

Esta herramienta está diseñada para ser rápida y flexible: intenta automáticamente la extracción in-band basada en UNION (instantánea), recurre a la extracción boolean-blind paralela con 8 hilos y, finalmente, a la extracción secuencial basada en tiempo si es necesario.


Cadena de Vulnerabilidades

Esta herramienta encadena dos vulnerabilidades independientes para lograr la extracción no autenticada de la base de datos:

Bug A — Inyección SQL en author__not_in (CVE-2026-60137)

Ubicación: wp-includes/class-wp-query.php, WP_Query::get_posts()

El parámetro author__not_in solo aplica la sanitización absint() si la entrada es un array. Si se pasa una cadena, se omite la comprobación is_array(), la cadena pasa a través de implode() sin cambios y se concatena cruda en la cláusula SQL $where.

// Línea 2404: la comprobación solo se activa para ARRAYS
if ( is_array( $query_vars['author__not_in'] ) ) {
    $query_vars['author__not_in'] = array_unique( array_map( 'absint', $query_vars['author__not_in'] ) );
    sort( $query_vars['author__not_in'] );
}
// Línea 2408: la cadena pasa directamente
$author__not_in = implode( ',', (array) $query_vars['author__not_in'] );
// Línea 2409: interpolación cruda
$where .= " AND {$wpdb->posts}.post_author NOT IN ($author__not_in) ";

Bug B — Confusión de Rutas en el Endpoint REST por Lotes (CVE-2026-63030)

El endpoint de entradas de la API REST asigna author_exclude a author__not_in, pero lo declara como type => 'array' de enteros, por lo que el núcleo coacciona/rechaza una cadena. El Bug B introduce de contrabando la cadena más allá de la validación abusando de un error de desincronización en el endpoint por lotes de REST (/wp-json/batch/v1). Al inyectar un iniciador de ruta malformado que wp_parse_url() rechaza, se introduce un WP_Error en la lista de solicitudes del lote, desincronizando $matches de $validation. Esto permite que una sub-solicitud posterior se envíe bajo el manejador incorrecto sin validación de parámetros.


Versiones Afectadas

Rango de VersionesEstado
6.8.0 – 6.8.5Bug SQLi presente, pero la cadena NO es alcanzable (la confusión por lotes se introdujo en 6.9.0)
6.9.0 – 6.9.4VULNERABLE — cadena completa sin autenticación
7.0.0 – 7.0.1VULNERABLE — cadena completa sin autenticación
6.8.6Parcheado (SQLi)
6.9.5Parcheado
7.0.2Parcheado
7.1-beta2+Parcheado

Advertencia: El sumidero SQLi solo se alcanza cuando NO se utiliza una caché de objetos persistente (Redis/Memcached).


Características

  • Sin Dependencias: Biblioteca estándar pura de Python. No se requiere pip install.
  • Extracción en Tres Niveles:
    • Basada en UNION: Forja una fila falsa de wp_posts para extraer cadenas completas en una única solicitud HTTP (instantánea).
    • Boolean-blind (Paralela): Si UNION está bloqueada por la caché de objetos, utiliza 8 hilos paralelos con búsqueda binaria para extraer ~7 solicitudes por carácter.
    • Basada en Tiempo (Secuencial): Respaldo si el oráculo booleano no devuelve filas.
  • Enumeración Completa: Lista bases de datos, tablas y columnas.
  • Volcado de Tablas: Volcado de tablas individuales, de todas las tablas de una base de datos o un volcado nuclear completo a un archivo de texto con marca de tiempo.
  • Interrupción Controlada: Ctrl+C durante la extracción detiene la consulta actual y devuelve resultados parciales sin bloquear la sesión.
  • Persistencia de Sesión: Conéctese una vez y ejecute múltiples consultas mediante el menú interactivo.
  • Sanitización de URLs: Elimina automáticamente rutas/consultas de la entrada del host para evitar la duplicación del endpoint.
  • Resultados Listos para el Descifrado: Los volcados de usuarios incluyen el formato ID|user_login|user_pass con hashes bcrypt listos para hashcat -m 35500.

Instalación

No se requiere instalación. Solo descargue y ejecute:

# Clonar el repositorio
git clone https://github.com/AdarshThakur14777-cyber/CVE-2026-60137.git
# Navegar al directorio
cd CVE-2026-60137

# Ejecutar
python main.py

Requisitos:

  • Python 3.8+
  • No se necesitan paquetes externos (solo biblioteca estándar)

Uso

Lance el menú interactivo:

python main.py

Ejemplo de Sesión

============================================================
  WP SQLi Extractor v3 (CVE-2026-60137)
============================================================
------------------------------------------------------------
  CONEXIÓN
   0. Conectar / Cambiar objetivo
   1. Comprobar objetivo (versión + confirmación de vulnerabilidad)
------------------------------------------------------------
  HUELLA DIGITAL
   2. Versión de MySQL (@@version)
   3. Nombre de la base de datos actual
   4. Usuario actual de la base de datos
   5. Prefijo de tablas de WordPress
   6. Volcar wp_users (ID, login, hash de contraseña)
   7. Consulta SQL personalizada
   8. Extraer todas las huellas digitales (2+3+4+5)
------------------------------------------------------------
  ENUMERACIÓN
   9. Listar todas las bases de datos
  10. Listar todas las tablas (base de datos actual)
  11. Listar columnas de una tabla
------------------------------------------------------------
  VOLCADO
  12. Volcar una tabla específica
  13. Volcar todas las tablas (base de datos actual)
  14. Volcado completo a archivo (todas las tablas + todas las filas)
------------------------------------------------------------
  15. Salir
============================================================

Elección: 0
Objetivo (https://example.com): https://target.com
¿Omitir verificación TLS? (s/N):
Retardo de espera para basado en tiempo (por defecto 3):

[*] Conectando a https://target.com ...
[+] Endpoint por lotes: https://target.com/wp-json/batch/v1
[*] Versión de WordPress: 6.9.4 VULNERABLE
[*] Probando extracción basada en UNION ...
[!] UNION no disponible — probando boolean blind (8 hilos paralelos) ...
[+] Modo boolean-blind activo (8 hilos, ~7 solicitudes/carácter)
[+] Basado en tiempo también funciona (0.69s vs 3.78s)

Opciones del Menú

Conexión

OpciónDescripción
0Conectar a un objetivo (sanitiza las URLs automáticamente)
1Verificar la vulnerabilidad y el modo de extracción activo

Huella Digital

Descargar herramienta