
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.
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.
Segui questi passaggi esatti per distribuire e replicare questo ambiente vulnerabile sulla tua infrastruttura locale.
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:
sudo apt update && sudo apt install -y docker.io docker-compose-plugin
sudo apt update && sudo apt install -y docker.io docker-compose-v2
docker-compose.yml utilizzando l'editor nano:
nano docker-compose.yml
docker-compose.yml disponibile in questo repository e incollalo nel terminale.Ctrl + O poi Invio, quindi Ctrl + X.sudo docker compose up -d
sudo docker compose ps
8080:
http://<YOUR_VM_IP>:8080
dbjoomla_userjoomlapasswordjoomla_dbAgendo come un attaccante, sono stati utilizzati strumenti di scansione di rete e specifici per CMS da Kali Linux:
8080.Joomla 4.2.5).

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).
Utilizzando il Metasploit Framework (msfconsole), il modulo exploit specializzato è stato eseguito contro il target:
auxiliary/gather/joomla_vulnerable_config_disclosurejoomla_user / joomlapassword).
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:
/administrator).
Per proteggere il sistema da CVE-2023-23752:
4.2.8 o successiva./api utilizzando Web Application Firewall (WAF) o blocchi configurabili a livello di server.