
Exploit de prueba de concepto para CVE-2026-63030 (RCE pre-autenticación en WordPress) con detección de inyección SQL, extracción de credenciales e implementación de webshell. Incluye flujo de explotación de 8 etapas y guía de remediación.
📖 Lee primero el análisis técnico completo: CVE-2026-63030: Explicación del RCE Pre-Autenticación en WordPress
Este repositorio contiene el exploit de prueba de concepto al que se hace referencia en ese artículo. Empieza con el blog para comprender la vulnerabilidad, las limitaciones y el proceso de reproducción.
| Aspecto | Detalles |
|---|---|
| Vulnerabilidad | CVE-2026-63030 (confusión de rutas) + CVE-2026-60137 (inyección SQL) |
| Tipo | Ejecución remota de código previa a la autenticación |
| Puntuación CVSS | 9.8 (Crítica) |
| Versiones afectadas | WordPress 6.9.0–6.9.4, 7.0.0–7.0.1 |
| Corregida en | WordPress 6.9.5, 7.0.2+ |
| Impacto | Más de 500M de sitios WordPress potencialmente afectados |
| Requisitos previos | Ninguno — funciona en instalaciones estándar de WordPress |
Este repositorio contiene:
wordpress-rest-exploit.py — Herramienta de explotación Python de un solo archivo (1.005 líneas, sin dependencias)README.md — Este archivo con la configuración y el usoPOC.md — Guía detallada de reproducción paso a paso con ejemplos realesLICENSE — Licencia MITAntes de usar este exploit, comprende la limitación crítica que hace que esta vulnerabilidad sea diferente de cómo ha sido reportada:
La cadena de vulnerabilidades es real y crítica. Sin embargo:
¿Por qué? WordPress permite prefijos personalizados para las tablas de la base de datos. El predeterminado es wp_, pero la mayoría de los sitios endurecidos usan bw1w_, wordpress_ o cadenas aleatorias. Sin conocer el prefijo, la extracción de hashes falla silenciosamente.
El artículo del blog explica:
./wordpress-rest-exploit.py
La herramienta te guiará a través de:
CVE-2026-63030: WordPress REST Batch Route-Confusion SQLi
------------------------------------------------------------
Target URL: https://example.com/
[*] Checking if target is vulnerable to CVE-2026-63030...
[+] WordPress 7.0 detected (AFFECTED VERSION)
[+] VULNERABLE - batch route-confusion behavior confirmed
What would you like to do?
1) Read database fingerprint
2) Extract WordPress user logins and password hashes
3) Execute custom SQL query
4) Deploy plugin webshell (requires admin credentials)
5) Confirm SQL injection with timing payload
6) Exit
Select option [1]:
Es esencial comprender esto antes de usar el exploit.
WordPress permite prefijos personalizados para las tablas de la base de datos como medida de endurecimiento. La herramienta de explotación no puede detectar automáticamente el prefijo.
✅ Default prefix (wp_): Exploitation works
❌ Custom prefix (bw1w_, etc.): Exploitation fails silently
Cuando la herramienta pregunte por el prefijo de tabla:
Opción 1: Conoces el prefijo
Database table prefix [wp_]: bw1w_
[+] Querying bw1w_users...
[+] Found credentials!
Opción 2: Adivina prefijos comunes
wp_ (predeterminado)wordpress_bw1w_ (endurecimiento popular)wpdb_Opción 3: Acceso directo
Si tienes acceso SSH o puedes leer wp-config.php:
$table_prefix = 'bw1w_'; // Found it!
Opción 4: Fuerza bruta vía SQLi La herramienta puede probar prefijos comunes mediante inyección SQL ciega (lenta pero posible).
SLEEP(3)wp_users (o con prefijo personalizado)Para una reproducción detallada con salida real de comandos y ejemplos, consulta:
👉 POC.md — Recorrido completo de las 8 etapas
Esta guía incluye:
Actualiza de inmediato (máxima prioridad):
# Update to patched versions
WordPress 7.0.2 or 6.9.5
Si la actualización inmediata no es posible:
Block: /wp-json/batch/v1
Block: /?rest_route=/batch/v1