
Une vulnérabilité de sécurité critique, identifiée comme CVE-2023-50164 (CVE: 9.8), a été découverte dans Apache Struts, permettant aux attaquants de manipuler les paramètres de téléchargement de fichiers, ce qui peut potentiellement conduire à un contournement de chemin non autorisé et à une exécution de code à distance (RCE).
Une vulnérabilité de sécurité critique, identifiée comme CVE-2023-50164 (CVE : 9.8) a été trouvée dans Apache Struts, permettant aux attaquants de manipuler les paramètres de téléchargement de fichiers, ce qui peut potentiellement conduire à une traversée de chemin non autorisée et à une exécution de code à distance (RCE).
Ce script d'exploitation est écrit pour une analyse de la CVE sur vsociety.
Une application factice simple est développée à des fins de démonstration (voir le dossier struts-app).
Vous pouvez la déployer sur Tomcat ou tout autre servlet, ou l'exécuter via mvn jetty:run.
Dans ce dernier cas, vous pouvez accéder à l'application sur le port 9999.
Le script d'exploitation fonctionne uniquement lorsque l'application est déployée sur Tomcat, car la voie d'exploitation consiste à télécharger une webshell WAR.
Cependant, de nombreuses autres voies d'exploitation peuvent fonctionner dans le cas de la même vulnérabilité en fonction des technologies utilisées et d'autres circonstances.
Déployez l'application d'exploitation sur Docker :
docker container stop exploit
docker build -t exploit .
docker run -d --rm --name exploit -p 8080:8080 exploit
Installez les packages pip :
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Ensuite, exécutez le script d'exploitation :
Pour Docker :
python3 exploit.py --url http://localhost:8080/upload-1.0.0/upload.action
Pour Vagrant :
python3 exploit.py --url http://192.168.56.25:8080/upload-1.0.0/upload.action
Notez que l'exploit nécessite une URL complète où la fonctionnalité de téléchargement de fichiers est implémentée.
Ce script d'exploitation a été créé uniquement à des fins de recherche et pour le développement de techniques défensives efficaces. Il n'est pas destiné à être utilisé pour des activités malveillantes ou non autorisées. L'auteur et le propriétaire du script déclinent toute responsabilité en cas d'utilisation abusive ou de dommages causés par ce logiciel. Les utilisateurs sont invités à utiliser ce logiciel de manière responsable et uniquement conformément aux lois et réglementations applicables. Utilisez-le de manière responsable.