Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-66492 — A extensão Joomla PhocaCommander é vulnerável a Path Traversal na ação de upload de arquivos - CVSS 6.1 | Kitploit
Ferramentas/GitHubGitHub/toanln-cov/cve-2026-66492
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebSegurança WebTestes de Penetração
GitHubtoanln-cov/cve-2026-66492

CVE-2026-66492

A extensão Joomla PhocaCommander é vulnerável a Path Traversal na ação de upload de arquivos - CVSS 6.1

Ver Repositório
13há 1 mêsAinda 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

Travessia de Caminho no Destino de Upload de Arquivo

PhocaCommander ≤ 6.1.3 — Administrador Autenticado Grava Arquivos Fora do Webroot

CVE CVSS CWE-22 Affected Researcher


RESUMO

O manipulador de upload de arquivos no PhocaCommander constrói o caminho de destino a partir de um parâmetro folder codificado em base64 e controlado pelo atacante, sem qualquer validação de contenção de caminho. Um administrador autenticado pode enviar arquivos para locais arbitrários fora do webroot que sejam graváveis pelo processo do servidor web.

Confirmado em laboratório: ao enviar com folder=Li4vLi4vLi4vdG1w (= ../../../tmp), o arquivo enviado é colocado em — fora de — pertencente a . Em ambientes de produção com PHP-FPM, isso pode ser encadeado para obter execução remota de código.

/tmp/
/var/www/html/
www-data

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: Administrador (sessão + token CSRF)

Arquivo: administrator/components/com_phocacommander/helpers/fileupload.php — realMultipleUpload()

Causa raiz

realMultipleUpload() decodifica o parâmetro POST folder de base64 e o passa diretamente para uma concatenação em Path::clean(), que é então usada como destino do upload sem qualquer verificação de contenção.

FILEUPLOAD.PHP — CÓDIGO VULNERÁVEL

root@kitploit:~
$folder = $app->getInput()->get('folder', '', '', 'string');
$folder = base64_decode($folder);         // ← attacker-controlled

$path = JPATH_ROOT;                       // = /var/www/html

if (isset($folder) && $folder != '') {
    $pathFolder = Path::clean($path . '/' . $folder . '/');
    // e.g. Path::clean('/var/www/html/../../../tmp/')
    // = '/tmp/' — outside the webroot, no error thrown
}

// ...
File::upload($file['tmp_name'], $pathFolder . strtolower($file['name']));

Path::clean() normaliza os separadores de diretório, mas não resolve nem remove sequências ../. O caminho resolvido é passado diretamente para File::upload() sem nenhuma verificação adicional de limite.

Lista de permissões de extensões de upload

O manipulador aplica uma lista de permissões de extensões (imagens, documentos, arquivos compactados, arquivos de texto) e bloqueia tipos executáveis pelo servidor, como .php e .htaccess. No entanto, muitos tipos de arquivo permitidos pela lista — incluindo scripts de shell, definições de cron jobs e fragmentos de configuração — podem causar danos significativos quando gravados em caminhos sensíveis do sistema operacional.


PROVA DE CONCEITO

Cenário 1 — Gravação Arbitrária de Arquivo em /tmp via Travessia no Parâmetro folder

1. Faça login no painel administrativo do Joomla e obtenha o token CSRF

Autentique-se pela página de login administrativo. Recupere o token CSRF do Joomla em qualquer página administrativa — ele aparece como um campo de formulário oculto ou pode ser extraído do código-fonte da página.

Solicitação GET extraindo token CSRF do painel administrativo

2. Envie o arquivo com travessia no parâmetro folder

Envie uma solicitação POST multipart para POST /administrator/index.php?option=com_phocacommander&task=phocacommanderupload.multipleupload com o conteúdo do arquivo no campo file e o caminho de travessia codificado em base64 Li4vLi4vLi4vdG1w (= ../../../tmp) no campo folder. O servidor responde com HTTP 200 e {"jsonrpc":"2.0","result":"OK","code":200,"message":"Success: ","details":"Files uploaded"}.

SOLICITAÇÃO / RESPOSTA

Solicitação POST de upload com parâmetro folder de travessia e resposta 200 OK

3. Confirme que o arquivo foi gravado em /tmp — fora do webroot

O arquivo é confirmado em /tmp/upload_test.txt, pertencente a www-data, fora de /var/www/html/.

Terminal ls -la /tmp mostrando upload_test.txt pertencente a www-data


IMPACTO

  1. Gravação arbitrária de arquivos fora do webroot — qualquer caminho gravável por www-data pode receber conteúdo escolhido pelo atacante, incluindo caminhos usados pelo agendador do SO, daemon SSH e outros serviços
  2. Potencial RCE em ambientes PHP-FPM — enviar um arquivo .txt contendo código PHP combinado com um .user.ini (auto_prepend_file) para um diretório acessível pela web aciona a execução do PHP na próxima solicitação a esse diretório

REFERÊNCIAS

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