
Una vulnerabilità di sicurezza critica, identificata come CVE-2023-50164 (CVE: 9.8), è stata trovata in Apache Struts e consente agli attaccanti di manipolare i parametri di caricamento dei file, il che può potenzialmente portare a path traversal non autorizzato e all'esecuzione remota di codice (RCE).
Una vulnerabilità di sicurezza critica, identificata come CVE-2023-50164 (CVE: 9.8), è stata trovata in Apache Struts e consente agli aggressori di manipolare i parametri di upload dei file, il che può potenzialmente portare a path traversal non autorizzato ed esecuzione di codice in remoto (RCE).
Questo script di exploit è stato scritto per un'analisi della CVE su vsociety.
Una semplice app fittizia è stata sviluppata a scopo dimostrativo (vedi cartella struts-app).
Puoi distribuirla su Tomcat o su qualsiasi altro servlet, oppure eseguirla con mvn jetty:run.
In quest'ultimo caso puoi raggiungere l'app sulla porta 9999.
Lo script di exploit funziona solo nei casi in cui l'app è distribuita su Tomcat, poiché il percorso di sfruttamento consiste nel caricare una webshell WAR.
Tuttavia, molti altri percorsi di sfruttamento possono funzionare in caso della stessa vulnerabilità, in base alle tecnologie utilizzate e ad altre circostanze.
Distribuisci l'app dell'exploit su Docker:
docker container stop exploit
docker build -t exploit .
docker run -d --rm --name exploit -p 8080:8080 exploit
Installa i pacchetti pip:
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Quindi, esegui lo script di exploit:
Per Docker:
python3 exploit.py --url http://localhost:8080/upload-1.0.0/upload.action
Per Vagrant:
python3 exploit.py --url http://192.168.56.25:8080/upload-1.0.0/upload.action
Nota che l'exploit richiede un URL completo dove è implementata la funzionalità di upload dei file.
Questo script di exploit è stato creato esclusivamente per scopi di ricerca e per lo sviluppo di tecniche difensive efficaci. Non è inteso per essere utilizzato per attività dannose o non autorizzate. L'autore e il proprietario dello script declinano qualsiasi responsabilità per usi impropri o danni causati da questo software. Gli utenti sono invitati a usare questo software in modo responsabile e solo in conformità con le leggi e le normative applicabili. Usalo in modo responsabile.