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-checker — WordPress Core RCE no autenticado (CVE-2026-63030, CVE-2026-60137) | Kitploit
Herramientas/GitHubGitHub/0xjessie21/wp2shell-checker
Frameworks de Pruebas de PenetraciónEscáneres de VulnerabilidadesExplotaciónSeguridad WebSeguridad de Redes
GitHub0xjessie21/wp2shell-checker

wp2shell-checker

WordPress Core RCE no autenticado (CVE-2026-63030, CVE-2026-60137)

Ver Repositorio
112hace 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
root@kitploit:~
__        ______ ____  ____  _   _ _____ _     _     
\ \      / /  _ \___ \/ ___|| | | | ____| |   | |    
 \ \ /\ / /| |_) |__) \___ \| |_| |  _| | |   | |    
  \ V  V / |  __// __/ ___) |  _  | |___| |___| |___ 
   \_/\_/  |_|  |_____|____/|_| |_|_____|_____|_____|

wp2shell-checker | Detector de Desincronización de la API Batch de WordPress

Detector comprobador para la RCE pre-autenticación de la API REST Batch de WordPress Core

Python Severidad Modo Licencia


Creado por 0xjessie21 — Cybersecurity ILCS


Resumen

Firmawp2shell / WP Core REST Batch API Desync
Severidad9.8 CRÍTICO — AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Versiones afectadasWordPress 6.9.0-6.9.4 y 7.0.0-7.0.1
Corregido en6.9.5, 7.0.2
PrecondicionesNinguna — sin autenticación, sin plugins, configuración por defecto
ModoNo destructivo / sonda de solo lectura

Evidencia

Captura de pantalla de la herramienta detectando una instancia vulnerable de WordPress en un compromiso interno de VAPT autorizado.

Evidencia


Descargo de responsabilidad — Leer antes de usar

Esta herramienta es estrictamente para pruebas de seguridad autorizadas y fines de verificación defensiva únicamente.

Úsela solamente contra instancias de WordPress que posea, o para las que tenga autorización explícita por escrito para realizar pruebas (por ejemplo, un alcance interno de VAPT aprobado).
Esta sonda está diseñada para ser no destructiva — apunta a un ID de categoría inexistente (0) y se detiene en la capa de verificación de permisos, por lo que nunca se crean, modifican o eliminan datos.
No modifique la carga útil (por ejemplo, cambiando el ID de categoría a uno real, o apuntándola a otras rutas REST) para intentar una explotación real. Hacerlo convierte esto de un detector en un exploit armado — para lo cual esta herramienta no está diseñada explícitamente y no lo soporta.
No publique, redistribuya ni ejecute esto contra sistemas fuera de su alcance autorizado. El uso no autorizado contra sistemas de terceros puede violar la Ley ITE (UU ITE) en Indonesia y leyes equivalentes sobre uso indebido de ordenadores en otros lugares.
Se proporciona tal cual, sin garantía alguna. El autor y cualquier organización asociada no asumen ninguna responsabilidad por uso indebido, daños o consecuencias legales derivadas del uso de esta herramienta.

Al usar esta herramienta acepta que es el único responsable de garantizar que su uso cumple con la legislación aplicable y las políticas de autorización de su organización.


Cómo funciona

La API REST Batch de WordPress Core (/wp-json/batch/v1) mantiene tres arreglos paralelos sincronizados al resolver un lote de sub-solicitudes. Una sub-solicitud intencionalmente malformada desincroniza estos arreglos — provocando que cada sub-solicitud posterior se despache utilizando el manejador y callback de permisos incorrectos.

Esta herramienta envía una solicitud batch manipulada e inspecciona únicamente los códigos de respuesta, sin cruzar nunca a una operación que cambie el estado.

#Sub-solicitudPropósito
0POST http://:Intencionalmente malformada — desencadena la desincronización de índices
1DELETE /wp/v2/categories/0Sensor seguro — el ID de categoría 0 nunca existe
2POST /wp/v2/block-renderer/core/paragraphManejador de referencia usado para detectar la fuga

Lógica de veredicto

ResultadoVeredicto
block_cannot_readVULNERABLE — la verificación de permisos se filtró del manejador de block-renderer
rest_term_invalidPARCHEADO — el manejador de categorías respondió correctamente
sin marcador encontradoINCONCLUSIVO — WAF, API deshabilitada o no es WordPress

Adicionalmente, la herramienta realiza huellas dactilares pasivas de WAF/CDN a partir de las cabeceras de respuesta:

Cloudflare · Sucuri · Akamai · AWS CloudFront · Imperva · Fastly · F5 BIG-IP · Wordfence


Uso

root@kitploit:~
# Escaneo básico
./wp2shell_checker.py https://tu-sitio.com

# Múltiples objetivos en una ejecución
./wp2shell_checker.py https://sitio1.com https://sitio2.com https://sitio3.com

# Tiempo de espera personalizado
./wp2shell_checker.py https://tu-sitio.com --timeout 20

# Mostrar solicitud/respuesta completa en bruto (carga útil, cabeceras, cuerpo)
./wp2shell_checker.py https://tu-sitio.com --raw

# Deshabilitar colores/animación (para guardar en un archivo de registro)
./wp2shell_checker.py https://tu-sitio.com --no-color > reporte_escaneo.txt

Todas las banderas

BanderaDescripción
targetsUna o más URLs base para escanear (obligatorio)
--timeout NTiempo de espera de la solicitud en segundos (por defecto: 10)
--no-colorDeshabilitar colores ANSI y animación de escaneo
--rawImprimir la carga útil y cabeceras completas de solicitud/respuesta en bruto

Requisitos

  • Python 3.7+
  • Sin dependencias externas — solo biblioteca estándar

Corrección

Si un objetivo resulta VULNERABLE:

  1. Actualice WordPress inmediatamente a 7.0.2 (o 6.9.5 en la rama 6.9). Confirme que la actualización realmente se aplicó.
  2. Si una actualización inmediata no es posible, aplique una mitigación temporal:
    • Instale el plugin Disable WP REST API para bloquear el acceso REST no autenticado.
    • Bloquee /wp-json/batch/v1 y ?rest_route=/batch/v1 en su WAF/proxy inverso — ambas formas deben estar bloqueadas.
    • Implemente un plugin must-use que requiera autenticación para la ruta batch.
  3. Inventario de cada instancia de WordPress en el alcance — los sitios de staging y campaña son los que suelen pasarse por alto.

Referencias

wp2shell.comcomprobador y aviso original, Searchlight Cyber
Hadrian Security — Análisis técnicoanálisis de causa raíz

Licencia

Este proyecto está licenciado bajo la Licencia MIT — consulte el archivo LICENSE para más detalles.


Cybersecurity ILCS · construido para uso defensivo interno

Visitantes

Descargar herramienta