
Environnement de test Docker pour CVE-2025-34299 - Vulnérabilité Pre-Auth RCE de Monsta FTP
| Champ | Valeur |
|---|
| ID CVE | CVE-2025-34299 |
| Sévérité | Critique (CVSS 9.8) |
| CWE | CWE-434 (Téléversement sans restriction de fichier dangereux) |
| Versions affectées | <= 2.11.2 |
| Version corrigée | 2.11.3 |
| KEV | Oui |
Les versions de Monsta FTP <= 2.11.2 contiennent une vulnérabilité d'exécution de code à distance sans authentification via un téléversement de fichier arbitraire sans restriction. Le point de terminaison d'API downloadFile (/mftp/application/api/api.php) accepte des chemins de fichiers contrôlés par l'utilisateur sans assainissement approprié, permettant aux attaquants de :
actionName: downloadFile# Clone this repository
git clone https://github.com/KrE80r/CVE-2025-34299-lab.git
cd CVE-2025-34299-lab
# Start the vulnerable environment
docker-compose up -d
# Verify it's running
curl -s http://localhost:8080/mftp/ | grep -o "MonstaFTP"
# Test with nuclei template
nuclei -t CVE-2025-34299.yaml -u http://localhost:8080
# Expected output:
# [CVE-2025-34299] [http] [critical] http://localhost:8080/mftp/application/api/api.php ["2.10.4"]
# Check if the vulnerable API endpoint is accessible
curl -X POST http://localhost:8080/mftp/application/api/api.php \
-H "Content-Type: application/x-www-form-urlencoded" \
-d 'request={"connectionType":"ftp","configuration":{"host":"127.0.0.1","username":"test","initialDirectory":"/","password":"test","port":21},"actionName":"downloadFile","context":{"remotePath":"/test.txt","localPath":"/tmp/test.txt"}}'
# Expected response contains "CONNECTION_FAILURE_ERROR" proving the vulnerable code path is reached
# Stop and remove the container
docker-compose down
# Remove the image
docker rmi cve-2025-34299-lab-monsta-ftp-vulnerable
Cet environnement est fourni uniquement à des fins de recherche et de test en sécurité. Ne l'utilisez pas contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas d'autorisation explicite de tester.
Licence MIT