Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
wp2shell — CVE-2026-63030 (RCE) + CVE-2026-60137 (SQLi) | Kitploit
Herramientas/GitHubGitHub/ekomssavior/wp2shell
Descifrado de ContraseñasGeneración de PayloadsAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebRecopilación de InformaciónPruebas de PenetraciónRed Teaming
GitHubekomssavior/wp2shell

wp2shell

CVE-2026-63030 (RCE) + CVE-2026-60137 (SQLi)

Ver Repositorio
8218hace 1 mesAún no revisado

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

wp2shell por: ek0ms savi0r

Ejecución remota de código no autenticada para WordPress Core POC (CVE-2026-63030 + CVE-2026-60137)

wp2shell es un exploit para una cadena de vulnerabilidades críticas en el núcleo de WordPress. Encadena un fallo de confusión de rutas en el lote de la API REST con una inyección SQL en WP_Query para lograr ejecución remota de código no autenticada en instalaciones de WordPress vulnerables.

DetalleInformación
CVEsCVE-2026-63030 (confusión de rutas en el lote REST) + CVE-2026-60137 (SQLi en author__not_in)
AfectaWordPress 6.9.0 – 6.9.4, 7.0.0 – 7.0.1
Parcheado6.9.5, 7.0.2
Autenticación requeridaNinguna — no autenticada
CVSSCrítico (cadena RCE)
Descubierto porAdam Kues (Assetnote / Searchlight Cyber)
DependenciasPython 3.8+ — solo biblioteca estándar

Cómo funciona

El exploit encadena dos fallos en el núcleo de WordPress:

  1. CVE-2026-60137 — Inyección SQL – Cuando author__not_in se pasa como una cadena en lugar de un array, WordPress omite la protección de saneamiento is_array() e interpola el valor sin procesar en una cláusula SQL NOT IN (...).

  2. CVE-2026-63030 — Confusión de rutas en el lote – El endpoint /wp-json/batch/v1 construye arrays paralelos $matches y $validation. Una sub-petición malformada se añade a $validation pero no a $matches, lo que provoca un desplazamiento de índice de +1. La sub-petición i se despacha con el manejador de la sub-petición i+1.

Encadenados: una petición POST /wp/v2/posts que lleva una petición interna GET /wp/v2/users con una cadena author_exclude elude tanto la lista blanca de métodos como el saneamiento de entradas. La cadena llega a WP_Query como author__not_in y se interpola en el SQL, lo que proporciona inyección SQL ciega no autenticada.

A partir de ahí, la herramienta puede:

  • Extraer el hash de la contraseña del administrador
  • Autenticarse como administrador (una vez descifrado el hash)
  • Subir un plugin malicioso
  • Ejecutar comandos arbitrarios del sistema

Características


Instalación

root@kitploit:~
git clone https://github.com/ekomsSavior/wp2shell.git
cd wp2shell
chmod +x wp2shell.py

Eso es todo. No se requieren paquetes de terceros.


Uso

root@kitploit:~
./wp2shell.py <url> [command] [options]

Modo interactivo (menú guiado)

root@kitploit:~
./wp2shell.py http://target.com

Lanza un menú interactivo con toda la funcionalidad disponible mediante opciones numeradas.

Comandos

check — Confirmar vulnerabilidad (seguro)

Realiza una sonda de retardo temporal para confirmar la explotabilidad. No lee datos ni cambia nada.

root@kitploit:~
./wp2shell.py http://target.com check

read — Extraer datos (inyección SQL ciega)

Extrae información de la base de datos mediante inyección SQL ciega basada en tiempo.

root@kitploit:~
# Server fingerprint (version, database, user)
./wp2shell.py http://target.com read

# Extract user logins and password hashes
./wp2shell.py http://target.com read --users

# Extract database name
./wp2shell.py http://target.com read --database

# Extract MySQL version
./wp2shell.py http://target.com read --version

# Custom SQL query
./wp2shell.py http://target.com read --query "SELECT @@version"

shell — Ejecución remota de código

Requiere credenciales de administrador válidas. La inyección SQL puede recuperar el hash de la contraseña, pero debes proporcionar la contraseña en texto plano recuperada.

root@kitploit:~
# Execute a single command
./wp2shell.py http://target.com shell --user admin --password 'recovered_pass' --cmd "id"

# Execute a single command (short form)
./wp2shell.py http://target.com shell --user admin --password 'recovered_pass' --cmd whoami

Opciones


Flujo de trabajo de ejemplo

root@kitploit:~
# 1. Check if the target is vulnerable
./wp2shell.py https://example.com check

# 2. Extract admin password hashes
./wp2shell.py https://example.com read --users

# 3. Crack the hash offline (using hashcat, john, etc.)
# hashcat -m 400 <hash> /path/to/wordlist.txt

# 4. Execute a command with the recovered password
./wp2shell.py https://example.com shell --user admin --password 'cracked_pass' --cmd "id"

Versiones afectadas

RamaAfectadasCorregidas
6.9.x6.9.0 – 6.9.46.9.5
7.0.x7.0.0 – 7.0.17.0.2
6.8.x6.8.0 – 6.8.5 (solo SQLi, sin RCE)6.8.6

Las versiones anteriores a 6.9.0 no están afectadas por la cadena RCE completa.


Detección y mitigación

Para defensores:

  • Actualiza de inmediato a 6.9.5, 7.0.2 o posterior
  • Los clientes de Cloudflare WAF están protegidos automáticamente
  • Los clientes de Wordfence cuentan con reglas de firewall
  • Supervisa las peticiones POST /wp-json/batch/v1 con cuerpos requests anidados
  • Un 404 en la ruta de lote no siempre significa "parcheado": también puede significar que un WAF/CDN está bloqueando el acceso anónimo a la API REST

Aviso legal

Esta herramienta es únicamente para fines educativos y de pruebas de seguridad autorizadas.


Créditos

  • Descubrimiento: Adam Kues (Assetnote / Searchlight Cyber)
  • CVE-2026-60137 (SQLi): TF1T, dtro, haongo
  • CVE-2026-63030 (Confusión de rutas en el lote): Adam Kues

Para más detalles sobre la vulnerabilidad, consulta el blog de investigación de Searchlight Cyber.

Descargar herramienta
CaracterísticaDescripción
Comprobación de vulnerabilidadSonda segura de retardo temporal: no lee datos ni cambia nada
Extracción de datosInyección SQL ciega con optimización de búsqueda binaria para una extracción eficiente
Volcado de hashes de usuariosExtrae los hashes de user_login y user_pass de wp_users
Ejecución remota de códigoAutenticarse como administrador, subir un plugin webshell y ejecutar comandos
Shell interactivoSesión persistente de ejecución de comandos
Salida en colorRetroalimentación visual clara para los resultados del escaneo
Sin dependenciasUtiliza solo la biblioteca estándar de Python
OpciónDescripción
--usersExtrae user_login y user_pass de wp_users
--databaseExtrae el nombre de la base de datos actual
--versionExtrae la versión de MySQL
--query "SQL"Ejecuta una consulta SQL personalizada (extracción ciega)
--user USERNombre de usuario administrador para RCE
--password PASSContraseña del administrador para RCE (texto plano, recuperada mediante SQLi)
--cmd CMDComando a ejecutar a través del webshell