Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!
Joomla-CMS-Full-Lifecycle-Pentest — Un progetto completo di penetration testing sull'intero ciclo di vita per Joomla 4.2.5, che sfrutta CVE-2023-23752 in un ambiente di laboratorio Dockerizzato. | Kitploit
Un progetto completo di penetration testing sull'intero ciclo di vita per Joomla 4.2.5, che sfrutta CVE-2023-23752 in un ambiente di laboratorio Dockerizzato.
Test di Penetrazione CMS a Ciclo Completo (Joomla 4.2.5)
📌 Panoramica del Progetto
Questo progetto dimostra un test di penetrazione a ciclo di vita completo condotto su un CMS open source (Joomla 4.2.5). L'intero test segue metodologie standard (OWASP/PTES) dalla distribuzione del laboratorio fino allo sfruttamento, al post-exploitation e alla compromissione dell'account amministrativo.
🛠️ Fase 1: Guida alla Distribuzione del Laboratorio (Passo Dopo Passo)
Segui questi passaggi esatti per distribuire e replicare questo ambiente vulnerabile sulla tua infrastruttura locale.
Passo 1: Preparare la Macchina Target (VM Server)
Accendi la tua VM Ubuntu target e connettiti via SSH (oppure apri il terminale direttamente all'interno della VM).
Installa Docker e l'utilità Compose in base alla tua versione di Ubuntu:
Apri un nuovo file denominato docker-compose.yml utilizzando l'editor nano:
root@kitploit:~
nano docker-compose.yml
Copia l'intero contenuto del file docker-compose.yml disponibile in questo repository e incollalo nel terminale.
Salva ed esci dall'editor premendo: Ctrl + O poi Invio, quindi Ctrl + X.
Passo 3: Avviare l'Ambiente
Avvia i contenitori in background (modalità distaccata) eseguendo:
root@kitploit:~
sudo docker compose up -d
Attendi qualche istante per il completamento del download. Verifica che i servizi siano attivamente in esecuzione:
root@kitploit:~
sudo docker compose ps
Passo 4: Accedere e Configurare dalla Macchina Host (Attacker Box)
Torna alla tua Macchina Host Principale (o Kali Linux Box).
Apri il browser web e naviga all'indirizzo IP della VM target sulla porta 8080:
root@kitploit:~
http://<YOUR_VM_IP>:8080
Segui la procedura guidata di installazione di Joomla e inserisci queste credenziali esatte del database per collegare i contenitori:
Tipo/Connettore di Database: MySQL (PDO)
Nome Host:db
Nome Utente:joomla_user
Password:joomlapassword
Nome del Database:joomla_db
🔍 Fase 2: Ricognizione e Scansione
Agendo come un attaccante, sono stati utilizzati strumenti di scansione di rete e specifici per CMS da Kali Linux:
Nmap: Condotto per identificare porte e servizi aperti sulla porta 8080.
JoomScan / CMSeek: Utilizzati per identificare la versione esatta del CMS (Joomla 4.2.5).
⚡ Fase 3: Analisi delle Vulnerabilità e Sfruttamento
Basandosi sull'identificazione della versione, la ricerca delle vulnerabilità ha portato alla scoperta di CVE-2023-23752 (Controllo degli Accessi Improprio nell'API Core di Joomla).
Esecuzione dell'Attacco:
Utilizzando il Metasploit Framework (msfconsole), il modulo exploit specializzato è stato eseguito contro il target:
Risultato: Estratte con successo le credenziali del database in chiaro (joomla_user / joomlapassword).
🔑 Fase 4: Post-Exploitation e Compromissione dell'Account
In una valutazione reale, le configurazioni errate spesso producono effetti a cascata. Per testare il Riutilizzo delle Credenziali, la password del database trapelata è stata utilizzata per tentare una compromissione amministrativa:
Navigato alla dashboard di accesso dell'amministratore di Joomla (/administrator).
Testata la password del database estratta contro il pannello di accesso dell'Admin.
Autenticato con successo come Super User, ottenendo pieno accesso amministrativo alla configurazione core del CMS senza attivare alcun avviso.
📝 Fase 5: Remediation e Mitigazione
Per proteggere il sistema da CVE-2023-23752:
Aggiornamento: Aggiorna immediatamente Joomla alla versione 4.2.8 o successiva.
Sicurezza di Rete: Limita l'accesso agli endpoint /api utilizzando Web Application Firewall (WAF) o blocchi configurabili a livello di server.