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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
wp2shell-scan — Un escáner y kit de prueba de concepto para CVE-2026-63030 (wp2shell) - ejecución remota de código sin autenticación en el núcleo de WordPress | Kitploit
Herramientas/GitHubGitHub/fullhunt/wp2shell-scan
Escáneres de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónRed Teaming
GitHubfullhunt/wp2shell-scan

wp2shell-scan

Un escáner y kit de prueba de concepto para CVE-2026-63030 (wp2shell) - ejecución remota de código sin autenticación en el núcleo de WordPress

Ver Repositorio
5231hace 2 mesesAún no revisado
Sitio web

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-scan

Un escáner y kit de prueba de concepto para CVE-2026-63030 (wp2shell), una vulnerabilidad de ejecución remota de código sin autenticación en el núcleo de WordPress

Características

  • Dos métodos de detección no destructivos: --check-type time-based (temporización SLEEP) y --check-type error-based (diferencial TRUE/FALSE/roto). Ambos seguros para escaneos amplios.
  • Soporte para listas de URLs y múltiples objetivos en una sola ejecución.
  • La extracción por oráculo booleano basado en contenido funciona sin SLEEP, salida de errores ni privilegios FILE de MySQL.
  • Extracción ciega basada en temporización como alternativa para oráculos booleanos no fiables.
  • Sondeo de endpoints REST para descubrir qué rutas pasan la inyección a WP_Query.
  • Validación completa de la cadena de explotación (SQLi → INTO OUTFILE → ejecución PHP), controlada por el indicador explícito --i-have-authorization.
  • Entorno de pruebas local vulnerable (Docker) para reproducción segura sin conexión.

🚨 Anuncio (Julio 2026)

CVE-2026-63030 ("wp2shell") es una vulnerabilidad de ejecución remota de código sin autenticación en el núcleo de WordPress. Un error de confusión de ruta / desincronización de índices en el endpoint por lotes de la API REST (/batch/v1) permite a un atacante no autenticado introducir un valor author_exclude sin sanitizar en WP_Query, resultando en inyección SQL. Cuando el usuario de la base de datos tiene el privilegio FILE, esto conduce a la ejecución remota de código mediante SELECT ... INTO OUTFILE. No se requieren plugins. Una instalación estándar de WordPress es vulnerable.

WordPress publicó parches en 6.9.5, 7.0.2 y 7.1-beta2. Parchee inmediatamente. Si necesita ayuda para escanear o descubrir esta vulnerabilidad en su infraestructura, envíe un correo a [email protected]. Lea más en el blog de fullhunt.io.

RamaVulnerableCorregido
6.96.9.0–6.9.46.9.5
7.07.0.0–7.0.17.0.2
7.17.1-beta17.1-beta2
< 6.9No afectado (el endpoint por lotes no está presente)—

Descripción

Hemos estado investigando wp2shell (CVE-2026-63030) desde su divulgación pública, y hemos trabajado en la prevención de esta vulnerabilidad con nuestros clientes. Estamos publicando como código abierto una herramienta de detección y escaneo abierta para descubrir y validar CVE-2026-63030. Esta debería ser utilizada por los equipos de seguridad para escanear su infraestructura en busca de wp2shell y para verificar que las reglas WAF y los parches realmente bloqueen la cadena de ataque en el entorno de la organización.

wp2shell-scan.py es un escáner único y unificado que admite ocho modos:

ModoPropósitoAutorización
checkDetección no destructiva. Dos tipos de verificación: --check-type time-based (sonda de temporización SLEEP) o --check-type error-based (diferencial TRUE/FALSE/roto).No
probe-endpointsDescubrir qué endpoints REST pasan la inyección a WP_Query.No
probeComparación lado a lado de respuestas de N cargas SQL.No
extractExtracción por oráculo booleano de metadatos y hashes de la DB.Sí
blindExtracción ciega basada en temporización (alternativa cuando el oráculo booleano no es fiable).Sí
exploitValidar la cadena completa SQLi → INTO OUTFILE → ejecución PHP.Sí
adduserEscribir un backdoor mu-plugin que crea una cuenta de administrador; recurre a la extracción de hash booleano.Sí
get-usersVolcado por oráculo booleano de todas las credenciales de wp_users.Sí

Nota: Los modos marcados como "Sí" en Autorización requieren el indicador --i-have-authorization.

Uso

$ python3 wp2shell-scan.py -h
usage: wp2shell-scan.py [-h] [-u URL] [-l USEDLIST] [-p PROXY]
                        [--check-type {time-based,error-based}] [-k]
                        [--timeout TIMEOUT] [--sleep SLEEP]
                        [--endpoint ENDPOINT] [--webroot PATH[,PATH...]]
                        [--out-name OUT_NAME] [--php-code PHP_CODE]
                        [--user-login USER_LOGIN] [--user-pass USER_PASS]
                        [--user-email USER_EMAIL] [--i-have-authorization]
                        [--sql LABEL:SQL] [--query QUERY] [--dump [KEY ...]]
                        [--all] [-v]
                        {check,probe-endpoints,probe,extract,blind,exploit,adduser,get-users}

CVE-2026-63030 (wp2shell) scanner: time-based / error-based checks, Boolean and blind extraction, authorized exploit validation.

positional arguments:
  {check,probe-endpoints,probe,extract,blind,exploit,adduser,get-users}
                        Scan mode.

options:
  -h, --help            show this help message and exit
  -u URL, --url URL     Check a single URL.
  -l USEDLIST, --list USEDLIST
                        Check a list of URLs.
  -p PROXY, --proxy PROXY
                        Send requests through proxy.
  --check-type {time-based,error-based}
                        Detection method for check mode - [Default: time-based].
  -k, --insecure        Disable TLS certificate verification.
  --timeout TIMEOUT     HTTP timeout (in seconds) - [Default: 15].
  --sleep SLEEP         SLEEP seconds for time-based checks and blind mode - [Default: 5].
  --endpoint ENDPOINT   REST endpoint used for the injection - [Default: /wp/v2/categories].
  --webroot PATH[,PATH...]
                        Server webroot for OUTFILE writes; repeatable - [Default: /var/www/html].
  --out-name OUT_NAME   Dropped filename - [Default: random].
  --php-code PHP_CODE   PHP written as the OUTFILE row terminator - [Default: '<?php phpinfo(); ?>'].
  --user-login USER_LOGIN
                        Backdoor username for adduser mode - [Default: wpadmin].
  --user-pass USER_PASS
                        Backdoor password for adduser mode.
  --user-email USER_EMAIL
                        Backdoor email for adduser mode.
  --i-have-authorization
                        Required for exploit, adduser, get-users, extract, and blind modes.
  --sql LABEL:SQL       probe mode: repeatable label:sql payload pair.
  --query QUERY         extract/blind mode: custom SQL scalar query to extract.
  --dump [KEY ...]      extract mode: prebuilt query keys (comma or space separated); empty=user+db+version.
  --all                 extract mode: dump all prebuilt queries.
  -v, --verbose

Verificación basada en tiempo (sonda de temporización SLEEP no destructiva)

$ python3 wp2shell-scan.py check -u https://wp.lab.local --check-type time-based

Verificación basada en errores (diferencial TRUE / FALSE / roto no destructivo)

$ python3 wp2shell-scan.py check -u https://wp.lab.local --check-type error-based

Escanear una lista de URLs

$ python3 wp2shell-scan.py check -l urls.txt

Encontrar qué endpoints REST son inyectables

$ python3 wp2shell-scan.py probe-endpoints -u https://wp.lab.local

Extraer datos mediante el oráculo booleano (no se necesita privilegio FILE)

$ python3 wp2shell-scan.py extract -u https://wp.lab.local --i-have-authorization --dump user,database,version

Validar la cadena completa de RCE (solo objetivos autorizados)

$ python3 wp2shell-scan.py exploit -u https://wp.lab.local --i-have-authorization

Instalación

$ pip3 install -r requirements.txt

Soporte para Docker

git clone https://github.com/fullhunt/wp2shell-scan.git
cd wp2shell-scan
sudo docker build -t wp2shell-scan .
sudo docker run -it --rm wp2shell-scan check -u https://wp.lab.local
Descargar herramienta