
Exploit de prova de conceito para CVE-2026-48030, uma injeção crítica de comandos do sistema operacional no Pheditor 2.0.1-2.0.3. Inclui análise de código vulnerável, script PoC e orientação de correção para pesquisadores de segurança.
| Campo | Detalhes |
|---|
| CVE ID | CVE-2026-48030 |
| Produto | pheditor |
| Fornecedor | Hamid Samak |
| Versões Afetadas | 2.0.1, 2.0.2, 2.0.3 |
| Versão Corrigida | 2.0.4 |
| Gravidade | Crítico |
| Pontuação CVSS | 9.9 |
| Vetor CVSS | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H |
| CWE | CWE-78 (Injeção de Comando de SO) |
| Descoberto por | Muslimbek Burxonov |
Uma vulnerabilidade crítica de Injeção de Comando de SO existe no manipulador de ação do terminal de pheditor.php. O parâmetro POST dir é concatenado diretamente em shell_exec() sem sanitização, permitindo que um atacante autenticado ignore a lista branca TERMINAL_COMMANDS e execute comandos arbitrários do SO.
pheditor.php, linha 586:
$command = $_POST['command']; // ✓ metacaracteres verificados
$dir = $_POST['dir']; // ✗ NÃO verificado — vulnerável
// A verificação aplica-se apenas a $command, NÃO a $dir
if (strpos($command, '&') !== false ||
strpos($command, ';') !== false ||
strpos($command, '||') !== false) {
die(...);
}
// $dir injetado sem sanitização no shell_exec
$output = shell_exec(
(empty($dir) ? null : 'cd ' . $dir . ' && ')
. $command . ' && echo \ ; pwd'
);
python3 poc.py --target http://TARGET/pheditor.php --password admin
Veja poc.py para o script PoC completo.
pheditor.php, linha 586 — substituir:
// ANTES (vulnerável)
'cd ' . $dir
// DEPOIS (corrigido)
'cd ' . escapeshellarg($dir)
Este PoC é fornecido apenas para fins educacionais e de pesquisa. Use apenas em sistemas que você tenha permissão explícita para testar.