
TomcatScanner est un outil de sécurité complet conçu pour détecter et exploiter la vulnérabilité CVE-2025-24813 dans les serveurs Apache Tomcat.
TomcatScanner est un outil de sécurité complet conçu pour détecter et exploiter la vulnérabilité CVE-2025-24813 dans les serveurs Apache Tomcat. Cette vulnérabilité implique un problème d'équivalence de chemin dans le paramètre « file.Name » qui peut conduire à une exécution de code à distance (RCE).

git clone https://github.com/yourusername/tomcat-scanner.git
cd tomcat-scanner
pip install -r requirements.txt
Le fichier requirements.txt doit inclure :
requests>=2.28.0
urllib3>=1.26.0
Créez un fichier nommé wordlist.txt contenant les chemins à tester pour la vulnérabilité ou utilisez la liste de mots d'exemple fournie.
Analyser une seule cible :
python tomcat_scanner.py -u http://example.com:8080
Analyser plusieurs cibles à partir d'un fichier :
python tomcat_scanner.py -l targets.txt
usage: tomcat_scanner.py [-h] [-u URL] [-l LIST] [-w WORDLIST] [-t THREADS]
[-o OUTPUT] [--timeout TIMEOUT] [--ssl-verify]
[-v] [--exploit] [--command COMMAND]
Scanner for CVE-2025-24813 vulnerability in Apache Tomcat
optional arguments:
-h, --help show this help message and exit
-u URL, --url URL Single target URL (e.g., http://example.com:8080)
-l LIST, --list LIST File containing a list of target URLs
-w WORDLIST, --wordlist WORDLIST
Wordlist file containing paths to test (default: wordlist.txt)
-t THREADS, --threads THREADS
Number of parallel threads (default: 10)
-o OUTPUT, --output OUTPUT
Output file for results
--timeout TIMEOUT Request timeout in seconds (default: 5)
--ssl-verify Verify SSL certificates
-v, --verbose Enable verbose mode with HTTP response codes
--exploit Attempt to exploit vulnerable targets
--command COMMAND Test command for exploit mode (default: echo CVE-2025-24813)
Pour non seulement détecter mais aussi exploiter la vulnérabilité :
python tomcat_scanner.py -u http://vulnerable-server.com:8080 --exploit
Spécifier une commande personnalisée à exécuter pendant l'exploitation :
python tomcat_scanner.py -u http://vulnerable-server.com:8080 --exploit --command "whoami"
python tomcat_scanner.py -u http://example.com:8080 -w my_wordlist.txt
python tomcat_scanner.py -u http://example.com:8080 -t 20 -v
python tomcat_scanner.py -l target_list.txt -o vulnerable_targets.txt
python tomcat_scanner.py -u http://example.com:8080 --exploit --command "id" -v --timeout 10
TomcatScanner nécessite une liste de mots contenant les chemins à tester. La liste de mots doit contenir les chemins potentiellement vulnérables, un par ligne.
Exemple d'entrées de liste de mots :
/path/uploads/file.name
/webapps/manager/file.name
/tomcat/manager/uploads/file.name
/uploads/../sessions/absholi7ly.session
L'outil fournit une sortie codée en couleurs pour identifier facilement les informations importantes :
À la fin de chaque analyse, l'outil affiche un résumé avec :
CVE-2025-24813 affecte Apache Tomcat et implique une vulnérabilité d'équivalence de chemin dans la manière dont l'application gère le paramètre « file.Name ». Cette vulnérabilité peut permettre aux attaquants de :
La vulnérabilité se manifeste généralement lorsqu'une requête PUT est autorisée à écrire dans un chemin contenant « file.name » ou lorsqu'un traversement de chemin est possible via une opération PUT partielle.
CET OUTIL EST FOURNI UNIQUEMENT À DES FINS ÉDUCATIVES ET DE TESTS ÉTHIQUES.
L'utilisation de TomcatScanner pour attaquer des cibles sans consentement mutuel préalable est illégale. Il incombe à l'utilisateur final de respecter toutes les lois locales, nationales et fédérales applicables. Les développeurs déclinent toute responsabilité et ne sont pas responsables de toute utilisation abusive ou de tout dommage causé par ce programme.
Les contributions sont les bienvenues ! N'hésitez pas à soumettre une demande de tirage (Pull Request).
Étapes pour contribuer :
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)Ce projet est sous licence MIT — voir le fichier LICENSE pour plus de détails.
MIT License
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files...