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-48908-PoC — PoC de RCE não autenticada para CVE-2026-48908 — SP Page Builder para Joomla (≤ 6.6.1): upload arbitrário de arquivo via asset.uploadCustomIcon. Autolimpante, protegido por token. Testes autorizados apenas. | Kitploit
Ferramentas/GitHubGitHub/papageo75/cve-2026-48908-poc
Geração de PayloadsAnálise de VulnerabilidadesAnálise de CódigoExploraçãoExploração de Aplicações WebSegurança WebTestes de PenetraçãoAprendizado e Educação

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 →
GitHub
papageo75/cve-2026-48908-poc

CVE-2026-48908-PoC

PoC de RCE não autenticada para CVE-2026-48908 — SP Page Builder para Joomla (≤ 6.6.1): upload arbitrário de arquivo via asset.uploadCustomIcon. Autolimpante, protegido por token. Testes autorizados apenas.

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

CVE-2026-48908 — SP Page Builder (Joomla) RCE não autenticado

Exploit de prova de conceito para CVE-2026-48908, uma vulnerabilidade crítica (CVSS 4.0 = 10.0) de execução remota de código não autenticada no componente SP Page Builder (com_sppagebuilder) para Joomla, da JoomShaper.

CVECVE-2026-48908
FraquezaCWE-284 Controle de Acesso Improprio → Upload Arbitrário de Arquivo Não Autenticado → RCE
ComponenteSP Page Builder (com_sppagebuilder) para Joomla
Afetado1.0.0 – 6.6.1
Corrigido em6.6.2
Privilégios necessáriosNenhum (pré-autenticação)
Interação do usuárioNenhuma

Descrição

O SP Page Builder expõe a tarefa do controlador asset.uploadCustomIcon para lidar com o upload de um pacote de fontes de ícones personalizados:

root@kitploit:~
index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon

Nas versões afetadas, essa tarefa é acessível sem autenticação e sem um token anti-CSRF válido. Ela aceita um arquivo ZIP (campo multipart custom_icon) e extrai seu conteúdo em um diretório publicamente servido pela web sob a raiz do documento:

root@kitploit:~
/media/com_sppagebuilder/assets/iconfont/<nome>/   (incluindo a subpasta fonts/)

Como o upload é acessível antes da autenticação e os arquivos extraídos vão parar na raiz da web, um atacante pode escrever arquivos controlados pelo atacante em um local navegável e acessá-los via HTTP.

Alcançando execução de código apesar do filtro de extensão

Algumas compilações adicionam um filtro de nome de arquivo no lado do servidor sobre as entradas do arquivo. Este PoC supera uma implementação comum dele com uma cadeia de três etapas:

  1. Lista de bloqueio sensível a maiúsculas/minúsculas. O filtro rejeita .php, .phtml, .phar, .php3–.php8, .pht, .inc em minúsculas, mas não normaliza maiúsculas/minúsculas, então .PHP (e outras variantes mistas) e .htaccess passam.
  2. Manipulador do servidor web sensível a maiúsculas/minúsculas. Um manipulador PHP Apache padrão (<FilesMatch "\.php$">) executa apenas .php em minúsculas, então um .PHP carregado é inicialmente servido como texto fonte, não executado.
  3. Substituição por .htaccess. Um .htaccess (que a lista de bloqueio também perde) contendo AddType application/x-httpd-php .PHP é colocado junto com o payload. Onde AllowOverride permitir, isso registra .PHP como PHP e o shell carregado executa.

O PoC sempre empacota uma estrutura de fontes de ícones válida (selection.json, style.css, fonts/<nome>.ttf) para que o upload seja aceito, depois adiciona o shell.

Adaptativo — percorre uma lista de extensões executáveis de PHP (menor pegada primeiro), depois um fallback de .htaccess, e para na primeira que realmente executa código:

  1. Uploads diretos de arquivo único — fonts/<shell>.<ext> para cada uma de php, php3, php4, php5, php7, pht, phtml, phar, PHP, pHp, Php. Sem .htaccess. Diferentes filtros do SP Page Builder bloqueiam conjuntos diferentes, e diferentes configurações do Apache executam extensões diferentes — então isso encontra qualquer combinação que o alvo permita e execute.
  2. fonts/.htaccess + fonts/<shell>.PHP (fallback) — apenas se todas as tentativas diretas falharem. O .htaccess descartado (AddType … .PHP) força um .PHP maiúsculo a executar onde AllowOverride permitir (é disso que os hosts estilo 5.4.6 precisam).

Ele para no primeiro método que executa e imprime qual deles foi bem-sucedido. Cada upload aceito é rastreado, então --cleanup remove todos eles (várias tentativas podem deixar diretórios somente escrita).

Dependendo da versão e do hardening do servidor, o resultado varia, e o PoC o declara explicitamente (veja Resultados abaixo): RCE completo, somente escrita de arquivo (PHP desabilitado / AllowOverride None), corrigido (somente admin), ou não vulnerável.

Requisitos

root@kitploit:~
pip install -r requirements.txt   # requests

Uso

root@kitploit:~
# confirmar a vulnerabilidade e provar execução de código (executa `id`)
python3 sppb_rce.py https://target.example

# executar um comando específico
python3 sppb_rce.py --url target.example -c "uname -a"

# pseudo-shell interativo
python3 sppb_rce.py https://target.example --shell

# apenas verificar; não executar comando
python3 sppb_rce.py https://target.example --check

# remover o diretório de payload carregado depois
python3 sppb_rce.py https://target.example --cleanup

O alvo pode ser fornecido como argumento posicional ou via --url, com ou sem esquema.

Exemplo (sanitizado)

root@kitploit:~
[*] alvo    : https://target.example
[*] endpoint: index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon
[*] tentar .php            -> rejeitado pelo filtro
[*] tentar .php3           -> rejeitado pelo filtro
...
[*] tentar .PHP            -> enviado, não executado
[*] tentar .htaccess+.PHP  -> EXECUTADO
[+] EXECUÇÃO DE CÓDIGO CONFIRMADA via '.htaccess+.PHP' (echo 7*6 -> 42)
[*] executando: id
------------------------------------------------------------
uid=33(www-data) gid=33(www-data) groups=33(www-data)
------------------------------------------------------------
[*] limpeza: concluída (4 diretórios)

Resultados (e códigos de saída)

O PoC sempre informa o veredito para o alvo:

SaídaSignificadoSaída
EXECUÇÃO DE CÓDIGO CONFIRMADA via '<método>'Vulnerável — RCE completo sem autenticação0
[~] PARCIALMENTE VULNERÁVEL — escrita de arquivo sem autenticação funciona, mas PHP NÃO executouSomente escrita de arquivo (AllowOverride None / PHP desabilitado em /media)3
[-] ALVO NÃO VULNERÁVEL — SP Page Builder está corrigido (6.6.2+)Corrigido — upload agora requer autenticação de admin1
[-] ALVO NÃO VULNERÁVEL — todo upload foi rejeitado, ou SP Page Builder está ausente/corrigidoNão explorável / componente não presente2

Recursos de segurança

  • O web shell descartado é protegido por um token aleatório por execução e retorna 404 para qualquer um sem ele — não é uma backdoor aberta ao mundo.
  • --cleanup exclui o diretório de payload que criou.
  • Ações padrão são benignas (id, um marcador aritmético).

Remediação

  1. Atualize o SP Page Builder para 6.6.2 ou superior (adiciona autenticação, autorização e verificações CSRF à tarefa de upload). Esta é a correção principal.
  2. Defesa em profundidade no servidor web:
    • Desabilite a execução de PHP em diretórios de upload (/media/, /images/, /tmp) via pool FPM ou php_admin_flag engine off.
    • Defina AllowOverride None nesses diretórios para que um .htaccess descartado não possa reativar manipuladores.
    • Use uma lista de permissões que não diferencie maiúsculas/minúsculas para extensões de upload, nunca uma lista de bloqueio.
  3. Revisão assumindo violação: procure por .php/.PHP inesperados sob media/.../iconfont/, novas contas de Super Usuário e gerenciadores de arquivos plantados.

Referências

  • NVD — CVE-2026-48908
  • Registro CVE.org — CVE-2026-48908
  • Artigo técnico — SP Page Builder uploadCustomIcon RCE (mySites.guru)
  • Fornecedor — JoomShaper SP Page Builder (correção de segurança no 6.6.2)
  • SP Page Builder — Diretório de Extensões Joomla

Palavras-chave

Exploit SP Page Builder Joomla · com_sppagebuilder RCE não autenticado · PoC CVE-2026-48908 · asset.uploadCustomIcon upload arbitrário de arquivo · Joomla execução remota de código · script de exploit para pentest.

AVISO LEGAL

Este software é publicado para fins educacionais e testes de segurança autorizados apenas — por exemplo, testes de penetração para os quais você tem permissão por escrito, programas de bug bounty que incluam o alvo no escopo, competições CTF e seus próprios sistemas de laboratório.

Acessar, modificar ou interromper sistemas de computador sem autorização é ilegal na maioria das jurisdições. Você é o único e total responsável por suas próprias ações. Ao usar, baixar ou distribuir este código, você concorda que:

  • você o utilizará apenas contra sistemas que possui ou para os quais tem permissão explícita e documentada para testar;
  • o(s) autor(es) e contribuidores não aceitam nenhuma responsabilidade por qualquer dano, perda de dados, interrupção de serviço ou consequências legais decorrentes do uso ou uso indevido deste código;
  • este material é fornecido "COMO ESTÁ", sem garantia de qualquer tipo, expressa ou implícita.

Se você não concorda com estes termos, não use este software. Como qualquer exploit/PoC disponível publicamente, é compartilhado de boa fé para ajudar defensores a detectar, entender e remediar a vulnerabilidade; o que você faz com ele é por sua conta e risco.

Licença

MIT — veja LICENSE.

Baixar ferramenta