
Um script que fornece as credenciais de um painel Pterodactyl vulnerável ao CVE-2025-49132
/locales/locale.json com os parâmetros de consulta locale e namespace, um ator malicioso é capaz de executar código arbitrário sem estar autenticado. Com a capacidade de executar código arbitrário, isso poderia ser usado para obter acesso ao servidor do Painel, ler credenciais da configuração do Painel, extrair informações sensíveis do banco de dados, acessar arquivos de servidores gerenciados pelo painel, etc. Este problema foi corrigido na versão 1.11.11. Não há soluções alternativas de software para esta vulnerabilidade, mas o uso de um Web Application Firewall (WAF) externo pode ajudar a mitigar esse ataque.O atacante envia uma solicitação GET para /locales/locale.json; se a resposta retornar um JSON e a URL não contiver o parâmetro hash=, então está vulnerável ao CVE-2025-49132.
Para explorar a vulnerabilidade, você deve usar os parâmetros locale= e namespace= ao mesmo tempo para ler SOMENTE ARQUIVOS PHP e receberá uma resposta JSON com as variáveis armazenadas no arquivo PHP selecionado.
Por exemplo: /locales/locale.json?locale=../../../pterodactyl&namespace=config/database
Para encontrar arquivos PHP mais interessantes para ler, você pode consultar o repositório oficial do Pterodactyl ^^
Obtenha as credenciais do banco de dados com o comando: python3 CVE-2025-49132_PoC.py.py <url>
usersNeste ponto, você deve ter conhecimentos básicos de pentest para saber como obter uma reverse shell