Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-66491 — A extensão Joomla PhocaCommander é vulnerável a Path Traversal na função getSource - CVSS 8.2 | Kitploit
Ferramentas/GitHubGitHub/toanln-cov/cve-2026-66491
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebColeta de InformaçõesSegurança WebTestes de Penetração
GitHubtoanln-cov/cve-2026-66491

CVE-2026-66491

A extensão Joomla PhocaCommander é vulnerável a Path Traversal na função getSource - CVSS 8.2

Ver Repositório
32há 2 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Leitura Arbitrária de Arquivos via getSource() no PhocaCommander

PhocaCommander ≤ 6.1.3 — Path Traversal de Administrador Autenticado, CSRF Não Necessário

CVE CVSS v4.0 CWE-22 Affected Researcher


RESUMO

Existe uma vulnerabilidade de leitura arbitrária de arquivos no endpoint do editor de arquivos do PhocaCommander. A função getSource() decodifica um parâmetro filename codificado em base64 e o passa diretamente para file_get_contents() sem verificação de contenção de caminho. Um administrador autenticado pode ler qualquer arquivo acessível ao processo do servidor web — incluindo arquivos fora da raiz web — simplesmente enviando uma solicitação GET. Nenhum token CSRF é necessário.

A exploração vaza as credenciais do banco de dados e a chave secreta do Joomla de configuration.php, e pode ler arquivos de sistema como /etc/passwd por meio de sequências de path traversal (ex.: ../../../../etc/passwd).


VERSÕES AFETADAS

COMPONENTEVULNERÁVELTESTADO EMCORRIGIDO
PhocaCommander1.0.0 – 6.1.3Joomla 5.4.7 + PhocaCommander 6.1.3 (PHP 8.2 / Apache)6.1.4

DETALHES DA VULNERABILIDADE

Autenticação necessária: Sessão de administrador (nenhum token CSRF necessário - solicitação GET)

Arquivo: administrator/components/com_phocacommander/models/phocacommanderedit.php

Causa Raiz

getSource() decodifica filename de base64 e o concatena diretamente a JPATH_ROOT, depois lê o arquivo sem verificação de contenção:

PHOCACOMMANDEREDIT.PHP — CÓDIGO VULNERÁVEL

public function getSource($fileName) {
    $fileName = base64_decode($fileName); // ← attacker-controlled
    $item = new stdClass;
    if (PhocaCommanderHelper::fileExists(JPATH_ROOT . '/' . $fileName)) {
        $item->source = file_get_contents(JPATH_ROOT . '/' . $fileName); // ← no containment check
    }
    return $item;
}

fileExists() usa is_file(Path::clean($file)). Path::clean() normaliza barras, mas não remove sequências ../, então as travessias escapam da raiz web sem verificação.

A base de código contém getContainedRealPath() em helpers/phocacommander.php, que realiza a contenção adequada baseada em realpath(). Ela é chamada por save() e download(), mas nunca foi adicionada a getSource(). Além disso, o método edit() do controller é despachado via GET, portanto as verificações padrão de token CSRF não se aplicam — um cookie de sessão de administrador ativo é suficiente para acionar leituras arbitrárias de arquivos.


PROVA DE CONCEITO

Cenário 1 — Ler /etc/passwd via Path Traversal Fora da Raiz Web

1. Entre no painel de administração do Joomla

Autentique-se pela página de login do administrador para obter um cookie de sessão válido. Nenhum privilégio adicional além de uma sessão de administrador padrão é necessário.

2. Leia /etc/passwd via path traversal - fora da raiz web

Envie a seguinte solicitação GET com o caminho de travessia codificado em base64:

GET /administrator/index.php?option=com_phocacommander&task=phocacommanderedit.edit&filename=Li4vLi4vLi4vLi4vZXRjL3Bhc3N3ZA==
Cookie: [admin session]

filename decodificado: Li4vLi4vLi4vLi4vZXRjL3Bhc3N3ZA== → ../../../../etc/passwd

Caminho resolvido: /var/www/html/../../../../etc/passwd = /etc/passwd

O editor renderiza o conteúdo completo de /etc/passwd, confirmando acesso de leitura fora da raiz web.

REQUISIÇÃO / RESPOSTA

Solicitação e resposta do Burp Suite mostrando o conteúdo de /etc/passwd renderizado no editor do Joomla


IMPACTO

  1. Divulgação de arquivos do sistema — chaves SSH e arquivos de configuração de aplicações co-hospedadas são todos acessíveis (se legíveis pelo processo do servidor web)
  2. Nenhuma interação necessária — O ataque é uma única solicitação GET, sem token CSRF, sem envio de formulário, sem necessidade de interação da vítima
  3. Cadeia de escalonamento de privilégios — A chave secreta vazada permite forjar tokens do Joomla offline, ampliando a superfície de ataque contra o site alvo

REFERÊNCIAS

  • CVE: https://www.cve.org/CVERecord?id=CVE-2026-66491
  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-66491
  • Repositório do Fabricante: https://github.com/PhocaDesign/PhocaCommander
Baixar ferramenta