Skip to main content

Chamilo LMS EUVDEUVD-2026-82420

| CVE-2026-45140 CRITICAL
Path Traversal (CWE-22)
2026-09-17 https://github.com/chamilo/chamilo-lms GHSA-g4c3-4g96-6g4m
9.8
CVSS 3.1 · Vendor: https://github.com/chamilo/chamilo-lms
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach unauthenticated CStudio upload endpoint
  2. Delivery
    Send chunked upload with traversal filename
  3. Exploit
    Bypass missing sanitization/auth gate
  4. Execution
    Write PHP webshell to web root
  5. Persist
    Request uploaded shell
  6. Impact
    Execute arbitrary code on server

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

No special conditions - remote unauthenticated exploitation against default configurations of Chamilo LMS <= 2.0.0, provided the CStudio plugin's import-project big-upload endpoint (public/plugin/CStudio/editor/import-project/inc/big-upload.php) is reachable. The specific prerequisite is that this CStudio upload flow is deployed/accessible, since the fix confirms it lacked any authentication check (api_get_user_id() was added) and lacked filename sanitization. Limiting factors are minimal: no user interaction, no authentication, and no non-default toggle are required per CVSS PR:N/UI:N - the only realistic limiter is whether the CStudio editor plugin is installed and network-reachable, and upgrading to 2.0.1 fully closes it.

Impact

This is a genuine top-tier priority. The CVSS vector (AV:N/AC:L/PR:N/UI:N, S:U, C:H/I:H/A:H = 9.8) is corroborated rather than merely asserted: the GitHub Security Advisory (GHSA-g4c3-4g96-6g4m) titles it 'unauthenticated remote code execution,' and the fix commit (4bdba1b) directly confirms the mechanism - the CStudio 'big-upload' chunked upload endpoint took the filename straight from attacker-controlled input ($_FILES['bigUploadFile']['name'] and $_POST['name']) with no sanitization and no session/authentication gate, matching CWE-22 (Path Traversal) leading to arbitrary file write and code execution. The patch adds three defenses at once (an api_get_user_id() authentication check, api_replace_dangerous_char()/disable_dangerous_file() filename sanitization, and moving the final filename into server-side session state so a POST value cannot override it), which independently validates all three impacts. Signals that would normally temper urgency are absent or neutral: there is no EPSS score, no CISA KEV listing, and no named public exploit in the provided data, so per precision rules this is 'no public exploit identified at time of analysis' - NOT active exploitation. However, the fix commit is public and effectively a blueprint (it reveals the exact vulnerable parameter and traversal path), so weaponization is low-effort and the practical exploitability is high despite the missing EPSS/KEV signals. Net: high-CVSS AND high-real-risk; patch to 2.0.1 without delay.

Exploit ScenarioDerived

An unauthenticated attacker sends a chunked upload to the CStudio import-project big-upload endpoint (public/plugin/CStudio/editor/import-project/inc/big-upload.php) and supplies a crafted filename containing directory-traversal sequences and a PHP extension, causing the reassembled file to be written to an attacker-chosen web-accessible location. The attacker then requests that uploaded PHP file to execute arbitrary code on the server. No authentication is required and no public exploit is identified at time of analysis, but the public fix commit discloses the exact vulnerable parameters.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
Patch available 1.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 17, 2026

Unauthenticated remote code execution in Chamilo LMS 2.0.0 and earlier lets any network-reachable attacker run arbitrary code on the server through the CStudio editor plugin's import-project big-upload endpoint, which shipped without an authentication check and without sanitizing attacker-supplied filenames. Graded CVSS 9.8 (AV:N/AC:L/PR:N/UI:N/C:H/I:H/A:H) with no special prerequisites beyond the CStudio upload flow being deployed and reachable, this is assessed as a genuine top-tier priority for any exposed instance; no public exploit code was identified at time of analysis and no CISA KEV listing applies, though the vendor-released patch in 2.0.1 fully closes the issue.

RemediationAI

Upgrade to Chamilo LMS 2.0.1, the vendor-released fixed version (release tag v2.0.1), which adds the missing api_get_user_id() authentication check, sanitizes uploaded filenames via api_replace_dangerous_char() and disable_dangerous_file(), and binds the final filename to the server-side session so it can no longer be controlled by an attacker's POST body. If an immediate upgrade is not possible, specific compensating controls are: disable or remove the CStudio editor plugin entirely if project import is not required (loses HTML5 authoring/SCORM import functionality for legitimate users), or block network access to /public/plugin/CStudio/editor/import-project/ - including the ?action=upload endpoint - at the reverse proxy or WAF so only trusted networks reach it, at the cost of breaking the SCORM/zip project import workflow; fronting that path with HTTP/SSO authentication would also enforce a session but may interfere with Chamilo's own session handling for other plugin features. Primary fix references: advisory https://github.com/chamilo/chamilo-lms/security/advisories/GHSA-g4c3-4g96-6g4m and commit 4bdba1b9a8820bd70c0809317775d7f6eaa79844.

Affected VersionsENISA

chamilo-lms < 2.0.1

Affected Packages

composer chamilo/chamilo-lms fix: 2.0.1
euvd chamilo_lms fix: 2.0.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in composer, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Chamilo LMS is a PHP learning management system; the vulnerable component is the optional CStudio HTML5 content-authoring plugin, specifically public/plugin/CStudio/editor/import-project/inc/big-upload.php, which implements a chunked file upload used when importing project archives. The fix commit shows the endpoint accepted chunk uploads with no session check whatsoever - the patch inserts an api_get_user_id() guard that returns HTTP 403 - and it passed attacker-controlled values ($_POST['name'] and $_FILES['bigUploadFile']['name']) straight into finishUpload() without sanitization, giving a path traversal / dangerous-extension write primitive (CWE-22, tagged RCE and Path Traversal). The remediation also applies filename hardening helpers (api_replace_dangerous_char() and disable_dangerous_file()) and stores the intended final filename in $_SESSION under a per-temp-name key so a later chunk cannot overwrite it, which is precisely the tamper vector that let an unauthenticated caller dictate the written path and name.

Know when Chamilo gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (https://github.com/chamilo/chamilo-lms) PRIMARY 9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 9.8 CRITICAL

Remote unauthenticated upload endpoint with no interaction (AV:N/AC:L/PR:N/UI:N) yields arbitrary file write and code execution, giving full C:H/I:H/A:H on the same host (S:U).

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (https://github.com/chamilo/chamilo-lms).

CVSS VectorVendor: https://github.com/chamilo/chamilo-lms

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

DescriptionCVE.org

Impact

Ability to run arbitrary code on the server without authentication.

Technical POC Analysis

Primary bug class: CWE-22 path traversal, with CWE-434 unrestricted upload and CWE-94 code injection also tagged in the advisory.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Chamilo LMS versions 2.0.0 and earlier contain a critical unauthenticated remote code execution vulnerability (CVE-2026-45140) that allows any network-accessible attacker to fully compromise the server. Organizations using this learning management system face severe risk of data theft, service disruption, and lateral movement into internal networks. Immediate patching to version 2.0.1 is essential to protect sensitive student and institutional data.

Business Impact: Severe
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
1.0%
Top 39% exploitable
Prevalence
Medium
Chamilo is a widely used open-source LMS but not ubiquitous infrastructure
Threat Intel
1
1 source
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 1.0%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
Very High
Technical Impact
Total

Priority Score

50
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +49
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

CVE-2023-34960 CRITICAL POC
9.8 Aug 01

A command injection vulnerability in the wsConvertPpt component of Chamilo v1.11.* up to v1.11.18 allows attackers to ex

CVE-2025-50187 CRITICAL POC
9.8 Mar 02

Chamilo LMS prior to 1.11.28 has a code injection through SOAP request parameters enabling remote code execution.

CVE-2025-50192 CRITICAL POC
9.8 Mar 02

Chamilo LMS prior to 1.11.30 has a time-based SQL injection in a different endpoint, providing an additional database ex

CVE-2025-50190 CRITICAL POC
9.8 Mar 02

Chamilo LMS prior to 1.11.30 has an error-based SQL injection enabling database extraction.

CVE-2023-3545 CRITICAL POC
9.8 Nov 28

Improper sanitisation in `main/inc/lib/fileUpload.lib.php` in Chamilo LMS <= v1.11.20 on Windows and Apache installation

CVE-2023-3533 CRITICAL POC
9.8 Nov 28

Path traversal in file upload functionality in `/main/webservices/additional_webservices.php` in Chamilo LMS <= v1.11.20

CVE-2023-3368 CRITICAL POC
9.8 Nov 28

Command injection in `/main/webservices/additional_webservices.php` in Chamilo LMS <= v1.11.20 allows unauthenticated at

CVE-2021-35414 CRITICAL POC
9.8 Dec 03

Chamilo LMS v1.11.x was discovered to contain a SQL injection via the doc parameter in main/plagiarism/compilatio/upload

CVE-2021-34187 CRITICAL POC
9.8 Jun 28

main/inc/ajax/model.ajax.php in Chamilo through 1.11.14 allows SQL Injection via the searchField, filters, or filters2 p

CVE-2019-13082 CRITICAL POC
9.8 Jun 30

Chamilo LMS 1.11.8 and 2.x allows remote code execution through an lp_upload.php unauthenticated file upload feature. Ra

CVE-2025-50199 CRITICAL POC
9.1 Mar 02

Chamilo LMS prior to 1.11.30 has a blind SSRF vulnerability enabling internal network reconnaissance from the learning p

CVE-2023-4220 MEDIUM POC
6.1 Nov 28

Unrestricted file upload in big file upload functionality in `/main/inc/lib/javascript/bigupload/inc/bigUpload.php` in C

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy