EXPLOIT-CVE-2026-8832

Una herramienta de explotación para probar vulnerabilidades de Ejecución Remota de Código (RCE) en el plugin de WordPress WPCode Lite (Insert Headers and Footers) v2.3.5. Esta vulnerabilidad se origina al registrar el Tipo de Contenido Personalizado (CPT) wpcode sin definir un capability_type personalizado. Este descuido permite que cualquier usuario con el rol de Autor (o superior) ejecute código PHP arbitrario en el servidor a través de XML-RPC.
Crédito: Creado basado en el análisis de vulnerabilidad por t.me/Fanatix_Legion.
⚠️ Descargo de responsabilidad
SOLO PARA PRUEBAS DE SEGURIDAD AUTORIZADAS.
El uso no autorizado de esta herramienta contra sistemas que no posee es ILEGAL. Úselo estrictamente en sistemas donde tenga permiso explícito por escrito para realizar pruebas de penetración. El autor no asume ninguna responsabilidad y no es responsable por ningún mal uso o daño causado por este programa.
🚀 Características
- Explotación automatizada: Ejecuta la cadena completa de explotación desde la identificación hasta la ejecución de código en 6 pasos automatizados.
- Bypass de XML-RPC: Aprovecha el endpoint
wp.newPost a través de XML-RPC para evitar las protecciones administrativas de la interfaz de usuario del plugin.
- Payloads PHP puros: Todos los payloads integrados están diseñados usando funciones nativas puras de PHP. Esto está específicamente diseñado para bypassear las restricciones de
disable_functions comúnmente encontradas en entornos de hosting compartido (como CloudLinux) que bloquean funciones como shell_exec y system.
- Shell interactivo basado en web: Incluye una opción de payload con GUI web para navegar y ejecutar comandos PHP fácilmente desde un navegador.
- Limpieza automática: Limpia de forma segura la base de datos eliminando fragmentos de prueba y publicaciones desencadenantes después de la ejecución.
📦 Requisitos
- Python 3.6+
- Biblioteca
requests
🛠️ Uso
Ejecute el script desde su terminal/símbolo del sistema:
python wpcode_rce_tester.py
La herramienta le pedirá interactivamente lo siguiente:
- URL de WordPress: La URL objetivo (p.ej.,
http://localhost).
- Nombre de usuario: Un nombre de usuario con al menos privilegios de Autor.
- Contraseña: La contraseña de la cuenta.
- Payload: La elección de payload que desea ejecutar (seleccione 1-8).
Payloads Disponibles
- Información del Sistema: Muestra el usuario actual (
get_current_user) e información del SO (php_uname).
- Shell PHP interactivo vía GET: Ejecuta la entrada de la consola como código PHP (vía parámetro
?cmd=).
- Info de PHP: Ejecuta
phpinfo().
- Lector de config de WordPress: Lee constantes internas de WordPress como credenciales de base de datos.
- Listado de archivos: Lista recursivamente archivos y carpetas en
DOCUMENT_ROOT de forma nativa usando scandir().
- Shell PHP interactivo basado en web: Crea un formulario HTML POST simple para escribir y ejecutar código PHP de forma interactiva en el navegador, muy efectivo cuando la ejecución a nivel de SO está bloqueada.
- Prueba de Concepto: Simplemente muestra 'RCE VERIFICADO' sin leer datos sensibles ni dañar el sistema.
- Payload personalizado: Ingrese su propio código PHP en bruto para su ejecución.
🛡️ Mitigación
Para asegurar su sitio WordPress:
- Actualice inmediatamente el plugin WPCode Lite a la última versión.
- Si no es posible actualizar, deshabilite XML-RPC por completo si no está en uso añadiendo lo siguiente a un plugin o mu-plugins:
add_filter('xmlrpc_enabled', '__return_false');