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-48907-Joomla-JCE-detection — Validação em laboratório defensivo e orientações de detecção para SOC da CVE-2026-48907 no Joomla JCE <= 2.9.99.4, incluindo telemetria Apache/Joomla/auditd, artefatos de webshell, regras Sigma, mapeamento MITRE ATT&CK e recomendações de mitigação. | Kitploit
Ferramentas/GitHubGitHub/g0thamrabb1t/cve-2026-48907-joomla-jce-detection
Análise de VulnerabilidadesExploraçãoAnálise ForenseSegurança WebInteligência de AmeaçasPapers e PesquisaAprendizado e EducaçãoResposta a IncidentesAnálise de Logs
GitHubg0thamrabb1t/cve-2026-48907-joomla-jce-detection

CVE-2026-48907-Joomla-JCE-detection

Validação em laboratório defensivo e orientações de detecção para SOC da CVE-2026-48907 no Joomla JCE <= 2.9.99.4, incluindo telemetria Apache/Joomla/auditd, artefatos de webshell, regras Sigma, mapeamento MITRE ATT&CK e recomendações de mitigação.

Ver Repositório
13há 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

Joomla JCE CVE-2026-48907 — Validação de PoC, Artefatos de Webshell e Detecção para SOC

Relatório de validação defensiva e notas de detecção orientadas a SOC para a CVE-2026-48907, que afeta o Joomla Content Editor (JCE) até a versão 2.9.99.4.

Propósito do repositório

Este repositório documenta uma validação controlada em laboratório da CVE-2026-48907 no Joomla JCE e tem foco em engenharia de detecção prática para equipes de SOC.

O objetivo não é fornecer orientação de exploração. O objetivo é mostrar quais fontes de telemetria foram úteis durante a validação, quais artefatos foram criados e como os defensores podem detectar e responder a essa atividade.

Relatórios

  • Relatório em PDF (inglês)
  • Relatório em PDF (polonês)
  • Relatório em DOCX (inglês)
  • Relatório em DOCX (polonês)

Resumo

ÁreaResultado
VulnerabilidadeCVE-2026-48907 no Joomla Content Editor (JCE); fluxo não autenticado de criação/importação de perfis que pode levar ao upload de PHP e à execução de código.
Versão testadaJCE 2.9.99.4. O painel administrativo do Joomla exibiu uma atualização disponível para 2.9.99.7.
Resultado no laboratórioA validação do PoC público confirmou RCE e criou um webshell PHP no /tmp do Joomla como jce*.xml.php. Os comandos foram executados como www-data.
Telemetria mais valiosaaccess.log do Apache, error.log do Apache/PHP, telemetria execve do auditd e artefatos do sistema de arquivos em joomla_html/tmp.
Logs do JoomlaÚteis como contexto complementar, mas insuficientes por si só. Os logs de aplicação do Joomla não reconstruíram a cadeia completa: exploração → webshell → execução de comandos.
Prioridade para SOCCrítica para instâncias do Joomla expostas à internet ou instâncias do Joomla acessíveis a partir de redes internas menos confiáveis.

Referências públicas

  • Repositório público do PoC: JoomlaSniper
  • Registro CVE: CVE-2026-48907
  • NVD: CVE-2026-48907
  • Catálogo KEV da CISA: Catálogo de Vulnerabilidades Exploradas Conhecidas

Ambiente de laboratório

ParâmetroValor
URL da aplicaçãohttp://172.20.10.3:9999
Contêiner do Joomlajoomla-jce-lab, imagem joomla:5-apache
Contêiner do banco de dadosjoomla-jce-db, imagem mariadb:11
Mapeamento de portas0.0.0.0:9999 -> 80/tcp
ApacheApache/2.4.67 (Debian)
PHPPHP 8.3.31
MariaDB11.8.8-MariaDB
JoomlaJoomla 5.4.6 Stable
JCE2.9.99.4
Origem do testeWindows 11, IP 172.20.10.2
Registro de logsLogs de acesso/erro do Apache, logs do Joomla, auditd, logs do Docker, artefatos do sistema de arquivos

Capturas de tela das evidências

Site do laboratório do Joomla

Site do laboratório do Joomla

Versão vulnerável do JCE instalada

Versão instalada do JCE

Joomla exibe atualização do JCE disponível

Atualização do JCE disponível

Bloco de atualizações do painel do Joomla

Resultado da validação do PoC no laboratório

RCE confirmado pelo JoomlaSniper

Shell interativo e execução de comandos como www-data

Shell interativo do JoomlaSniper

Artefatos de arquivos no diretório tmp do Joomla

Artefatos de webshell no tmp do Joomla

Principal observação defensiva

Uma constatação operacional importante é que os logs de aplicação do Joomla não foram suficientes.

Durante o teste de laboratório, os logs do Joomla registraram contexto no nível da aplicação, como um evento joomlafailure, mas não mostraram a cadeia completa de exploração. A cadeia útil era visível principalmente em:

  1. access.log do Apache
  2. error.log do Apache/PHP
  3. Registros de execve do auditd
  4. Artefatos do sistema de arquivos em joomla_html/tmp

Para o monitoramento por SOC, os logs do Joomla devem ser tratados como telemetria complementar, e não como a principal fonte de detecção para esta vulnerabilidade.

Cadeia de ataque observada

Cadeia de alto nível observada durante o teste controlado:

root@kitploit:~
JCE version discovery
    ↓
POST to Joomla JCE component
    ↓
PHP webshell written to Joomla /tmp
    ↓
HTTP request to /tmp/jce*.xml.php
    ↓
Command execution through webshell
    ↓
auditd confirms /usr/bin/dash and commands executed as www-data

Sequência HTTP observada

A evidência mais clara estava presente no access.log do Apache:

root@kitploit:~
GET  /plugins/editors/jce/jce.xml
GET  /
POST /index.php?option=com_jce
GET  /tmp/jceolxtshs3.xml.php
GET  /plugins/editors/jce/jce.xml
POST /index.php?option=com_jce
GET  /tmp/jce624jdcfx.xml.php
GET  /tmp/jce624jdcfx.xml.php?c=id%20%26%26%20hostname%20%26%26%20pwd
GET  /tmp/jce624jdcfx.xml.php?c=whoami
GET  /tmp/jce624jdcfx.xml.php?c=hostname
GET  /tmp/jce624jdcfx.xml.php?c=id
GET  /tmp/jce624jdcfx.xml.php?c=pwd

Indicadores do log de erros do Apache/PHP

O log de erros do Apache/PHP continha rastros valiosos relacionados ao parser:

root@kitploit:~
simplexml_load_string()
administrator/components/com_jce/helpers/profiles.php
RXST
RXEND

Os marcadores RXST e RXEND foram indicadores particularmente úteis para esta família específica de PoC, pois apareceram no caminho de manipulação do payload.

Limitação dos logs do Joomla

Os logs do Joomla confirmaram que o registro de aplicação estava ativo, mas não reconstruíram a exploração:

root@kitploit:~
#Software: Joomla! 5.4.6 Stable [ Kutegemea ] 26-May-2026 16:00 GMT
#Fields: datetime priority clientip category message
2026-06-18T20:37:57+00:00 INFO 172.20.10.2 joomlafailure Username and password do not match or you do not have an account yet.

Isso significa que coletar apenas os logs do Joomla pode deixar de lado a evidência mais importante da exploração da CVE-2026-48907.

Artefatos do sistema de arquivos

O teste criou arquivos de webshell PHP no tmp do Joomla:

root@kitploit:~
/var/www/html/tmp/jce624jdcfx.xml.php
/var/www/html/tmp/jceolxtshs3.xml.php

Caminhos no lado do host, no laboratório:

root@kitploit:~
/home/user/joomla-jce-lab/joomla_html/tmp/jce624jdcfx.xml.php
/home/user/joomla-jce-lab/joomla_html/tmp/jceolxtshs3.xml.php

Hashes SHA256 observados:

root@kitploit:~
b6fa303daef8aa8cb39566c73d2cb4a458efb2b1fba48052dd039d45c3beb0aa  jce624jdcfx.xml.php
f8bcc802ab56b845c968ed6727228f200f8f4bcd332b8ce82c6980d93ac228fd  jceolxtshs3.xml.php

A detecção baseada em hash deve ser tratada como de baixa resiliência, pois nomes de arquivo e payloads podem variar. A correlação por caminho, extensão, propriedade e comportamento é mais útil.

Evidências do auditd

O auditd confirmou que o usuário do servidor web executou comandos a partir do diretório tmp do Joomla:

root@kitploit:~
CWD=/var/www/html/tmp uid=www-data comm=sh exe=/usr/bin/dash
CWD=/var/www/html/tmp uid=www-data comm=id exe=/usr/bin/id
CWD=/var/www/html/tmp uid=www-data comm=hostname exe=/usr/bin/hostname
CWD=/var/www/html/tmp uid=www-data comm=whoami exe=/usr/bin/whoami

Esta é a confirmação mais forte de que a atividade não era apenas varredura, mas execução remota de código de fato.

Lógica de detecção

A detecção mais forte é baseada em correlação:

root@kitploit:~
GET /plugins/editors/jce/jce.xml
    followed by
POST /index.php?option=com_jce
    followed by
GET /tmp/jce*.xml.php
    followed by
GET /tmp/jce*.xml.php?c=
    and/or
auditd: www-data executes /usr/bin/dash from /var/www/html/tmp

Prioridade de detecção

GravidadeCondiçãoAção do SOC
BaixaGET /plugins/editors/jce/jce.xml de uma fonte incomumTrate como reconhecimento e correlacione com solicitações posteriores.
MédiaPOST /index.php?option=com_jce sem referer de administrador ou a partir de um IP desconhecidoAlerte e revise solicitações subsequentes para /tmp.
AltaPOST com_jce seguido de GET /tmp/*.php ou /tmp/*.xml.phpVerifique imediatamente os artefatos do sistema de arquivos e os logs de erros do PHP.
CríticaGET /tmp/jce*.xml.php?c= ou auditd mostrando www-data iniciando comandos de shell/sistemaTrate como RCE/webshell confirmado, isole ou restrinja o host e preserve as evidências.

Indicadores e padrões de hunting

Padrões HTTP

root@kitploit:~
/plugins/editors/jce/jce.xml
/index.php?option=com_jce
/tmp/jce[a-z0-9]{8}\.xml\.php
/tmp/.*\.(php|phtml|phar)(\?| )
cs-uri-query contains "c="

Padrões do sistema de arquivos

root@kitploit:~
joomla_html/tmp/jce*.xml.php
/var/www/html/tmp/jce*.xml.php
RXST
RXEND
shell_exec
system
passthru
exec
$_GET['c']

Exemplos de comandos de triagem

Use estes somente em sistemas que você possui ou para os quais está autorizado a investigar.

root@kitploit:~
grep -RniE "com_jce|profiles\.import|task=profiles|/tmp/.*\.php|RXST|RXEND" apache_logs joomla_html/administrator/logs 2>/dev/null
root@kitploit:~
find ./joomla_html/tmp ./joomla_html/images ./joomla_html/media \
  -type f \( -iname "*.php" -o -iname "*.phtml" -o -iname "*.phar" -o -iname "*.xml.php" \) -ls
root@kitploit:~
sudo ausearch -k wwwdata_exec -i | grep -E "uid=www-data|comm=sh|/usr/bin/dash|/var/www/html/tmp|whoami|hostname| id |pwd"

Regras Sigma

Arquivos separados de regras Sigma estão disponíveis em rules/sigma:

  • joomla_jce_webshell_tmp_access.yml
  • joomla_jce_component_exploit_attempt.yml
  • web_user_shell_from_joomla_tmp_auditd.yml

Resposta recomendada

EtapaAçãoObjetivo
1Verifique se a instância executa JCE <= 2.9.99.4 ou exibe uma atualização do JCE disponível.Confirmar o estado vulnerável.
2Pesquise nos logs de acesso/erro por com_jce, profiles.import, /tmp/*.php, jce*.xml.php.Identificar exploração tentada ou bem-sucedida.
3Inspecione tmp, images e media em busca de arquivos PHP/PHTML/PHAR e nomes incomuns.Detectar webshells ou backdoors.
4Revise o auditd/EDR em busca de www-data gerando shells ou utilitários do sistema.Confirmar execução de código.
5Se webshell/RCE for confirmado, isole o host ou restrinja o tráfego para a aplicação.Interromper atividades adicionais.
6Preserve os artefatos, remova os webshells, revise perfis JCE, contas do Joomla, tarefas cron e arquivos modificados.Triagem e erradicação.
7Atualize o JCE para a versão suportada mais recente e revise outras instâncias do Joomla.Mitigação e redução de risco.

Recomendações de mitigação

PrioridadeRecomendaçãoJustificativa
P1Atualize o JCE para a versão suportada mais recente do ramo Joomla/PHP.O JCE 2.9.99.4 estava vulnerável no laboratório e o Joomla exibiu uma atualização para 2.9.99.7.
P1Após o patch, verifique a existência de webshells e perfis JCE suspeitos.A atualização fecha o ponto de entrada, mas não remove artefatos deixados antes do patch.
P1Bloqueie a execução de PHP em tmp, images, media, cache e diretórios de upload.Mesmo que o upload seja bem-sucedido, o bloqueio da execução de PHP interrompe a cadeia de RCE.
P2Adicione WAF ou filtragem de solicitações para option=com_jce e task=profiles.import.Ajuda a detectar e bloquear tentativas de exploração antes que cheguem ao PHP.
P2Ingira de forma centralizada os logs de acesso do Apache, os logs de erros do PHP e a telemetria de auditd/EDR.Os logs da aplicação Joomla sozinhos foram insuficientes.
P2Implemente inventário periódico das extensões do Joomla e verificações do estado de atualização.O painel do Joomla expôs o sinal de atualização do JCE; isso deve alimentar os fluxos de trabalho de VM/SOC.
P3Mantenha uma linha de base de arquivos e alerte sobre novos arquivos PHP fora dos diretórios controlados.Ajuda a detectar webshells e persistência após o comprometimento.

Exemplo de direção para endurecimento do Apache

A configuração exata depende do modelo de implantação do Apache/PHP. O objetivo é impedir a execução de PHP em diretórios que nunca devem executar scripts.

root@kitploit:~
<Directory "/var/www/html/tmp">
    php_admin_flag engine off
    Options -ExecCGI
    RemoveHandler .php .phtml .phar
    <FilesMatch "\.(php|phtml|phar)$">
        Require all denied
    </FilesMatch>
</Directory>

<Directory "/var/www/html/images">
    php_admin_flag engine off
    Options -ExecCGI
    RemoveHandler .php .phtml .phar
    <FilesMatch "\.(php|phtml|phar)$">
        Require all denied
    </FilesMatch>
</Directory>

Mapeamento MITRE ATT&CK

TécnicaNomeJustificativa
T1190Exploração de aplicação exposta à internetExploração via HTTP do endpoint Joomla/JCE sem autenticação.
T1505.003Componente de Software de Servidor: Web ShellWebshell PHP criado como /tmp/jce*.xml.php.
T1059.004Interpretador de Comandos e Scripts: Shell Unix/usr/bin/dash executado por www-data.
T1033Descoberta de proprietário/usuário do sistemawhoami e id executados por meio do webshell.
T1082Descoberta de informações do sistemahostname executado por meio do webshell.
T1083Descoberta de arquivos e diretóriospwd e atividade em /var/www/html/tmp.

Avaliação de risco

O laboratório confirmou a exploração prática contra o JCE 2.9.99.4. A autenticação no Joomla não foi necessária no fluxo observado, e o PoC público automatizou a detecção de versão e a criação de webshell.

Para ambientes reais, o risco é alto a crítico quando o Joomla está exposto à internet ou é acessível a partir de redes internas menos confiáveis. Um ataque bem-sucedido pode deixar um webshell persistente; portanto, aplicar o patch sem inspecionar os artefatos não é suficiente após uma suspeita de exposição.

Aviso legal

Este repositório destina-se à pesquisa defensiva, à engenharia de detecção para SOC e ao gerenciamento de vulnerabilidades. Ele não contém código de exploração. Qualquer teste deve ser realizado somente em sistemas que você possui ou para os quais possui autorização explícita para avaliar.

Baixar ferramenta