Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain student credentials
-
DeliveryAuthenticate to Chamilo API
-
ExploitSend PUT /api/users/{id} with roles:[ROLE_ADMIN]
-
ExecutionBypass ownership-only access check
-
ImpactGain full administrative privileges
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V8 - Authorization Least privilege enforcement
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Chamilo LMS versions prior to 2.0.0-RC.3. Attacker must be authenticated with ROLE_STUDENT role. Exploit targets the PUT /api/users/{id} endpoint by modifying the roles field in request to set ROLE_ADMIN. No victim interaction required. |
| Impact | This vulnerability presents extremely high real-world risk despite requiring authentication (PR:L). The CVSS v3.1 score of 8.8 accurately reflects the severe impact: network-accessible (AV:N), low complexity (AC:L), no user interaction (UI:N), and high impact across confidentiality, integrity, and availability (C:H/I:H/A:H). While EPSS data is not provided, the combination of low attack complexity and devastating impact (full administrative takeover) makes this a priority-one remediation target for any organization running affected Chamilo versions. The attack requires only legitimate student account credentials-a low barrier in educational environments where user registration may be open or loosely controlled. Although no public exploit code exists and CISA KEV does not list active exploitation, the technical simplicity means proof-of-concept development would be trivial (a single authenticated HTTP PUT request with modified JSON payload). SSVC analysis indicates high technical impact (total control), easily automatable exploitation, and while not actively exploited, the vulnerability's disclosure increases exploitation probability. Organizations should treat this as an emergency patch situation for any internet-facing Chamilo instances, particularly those with open enrollment or untrusted student populations. |
| Exploit ScenarioDerived | A malicious student with valid credentials authenticates to a Chamilo LMS instance and identifies their user ID (available through their profile or session data). The attacker crafts an HTTP PUT request to /api/users/{their_id} with a JSON payload containing their modified user data, crucially setting the roles field to include ROLE_ADMIN. The inadequate authorization check validates only that the user owns the record being modified, not whether they have permission to change security-critical fields, allowing the request to succeed. The student account is immediately elevated to administrator, granting unrestricted access to all courses, the ability to view and modify grades for all students, access to personally identifiable information of all users, and control over system configuration. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 14, 2026
Privilege escalation in Chamilo LMS versions prior to 2.0.0-RC.3 allows authenticated students to gain full administrative access via API manipulation. Low-privilege users (ROLE_STUDENT) can modify their own user record through the PUT /api/users/{id} endpoint to assign themselves ROLE_ADMIN privileges, bypassing intended access controls. The vulnerability stems from inadequate authorization checks that verify only record ownership without restricting modification of security-critical fields. With CVSS 8.8 (High) and low attack complexity requiring only basic authentication, this represents a critical access control failure in educational platforms. No public exploit code or active exploitation (CISA KEV) identified at time of analysis, though the straightforward attack vector makes exploitation trivial for malicious insiders.
RemediationAI
Immediately upgrade to Chamilo LMS version 2.0.0-RC.3 or later, which contains fixes that properly restrict modification of the roles field through API endpoints. The patched release is available at https://github.com/chamilo/chamilo-lms/releases/tag/v2.0.0-RC.3. Organizations unable to immediately upgrade should implement compensating controls including restricting network access to the /api/users/ endpoint to trusted administrative networks only, implementing web application firewall rules to block PUT requests to /api/users/{id} containing roles field modifications, and conducting immediate audits of user role assignments to identify any unauthorized privilege escalations that may have already occurred. Review application logs for suspicious PUT requests to the users API endpoint, particularly those originating from student accounts. After upgrading, verify that the roles field is no longer writable through the API by non-administrative users and consider implementing additional monitoring for privilege changes. Consult the GitHub security advisory at https://github.com/chamilo/chamilo-lms/security/advisories/GHSA-7phx-w897-4c9x for additional vendor guidance.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in 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 an open-source learning management system built on API Platform, which uses Symfony security expressions for authorization. The vulnerability resides in the API Platform security configuration for the User entity's PUT endpoint. The security expression is_granted('EDIT', object) performs ownership validation but fails to implement attribute-level access control. The roles field is improperly included in the writable serialization group, allowing authenticated users to modify their own role assignments through standard HTTP PUT requests. This represents a classic example of CWE-269 (Improper Privilege Management), where the application fails to properly validate authorization for privilege-modifying operations. The API Platform framework's declarative security model relies on developers explicitly restricting access to sensitive fields, which was not implemented for the roles attribute. The vulnerability specifically affects the /api/users/{id} REST endpoint where {id} can be the authenticated user's own identifier.
Know when Chamilo Lms 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
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Primary rating from Vendor (github) · only source for this CVE.
CVSS VectorVendor: github
Lifecycle Timeline
4DescriptionCVE.org
Chamilo LMS is an open-source learning management system. In versions prior to 2.0.0-RC.3, an insecure direct object modification vulnerability in the PUT /api/users/{id} endpoint allows any authenticated user with ROLE_STUDENT to escalate their privileges to ROLE_ADMIN by modifying the roles field on their own user record. The API Platform security expression is_granted('EDIT', object) only verifies record ownership, and the roles field is included in the writable serialization group, enabling any user to set arbitrary roles such as ROLE_ADMIN. Successful exploitation grants full administrative control of the platform, including access to all courses, user data, grades, and administrative settings. This issue has been fixed in version 2.0.0-RC.3.
Executive ViewAI
Chamilo LMS versions prior to 2.0.0-RC.3 contain a privilege escalation vulnerability allowing any authenticated student to grant themselves administrator access through API manipulation, potentially compromising institutional data security and student records across educational deployments. This access control failure enables insiders with minimal technical skill to assume full platform control, posing significant risk to organizations managing sensitive educational and administrative information.
Vendor-released patch: Chamilo LMS version 2.0.0-RC.3 or later. If immediate patching is not feasible: (1) Restrict API endpoint /api/users/{id} at network/firewall level to administrative IP ranges only; (2) Disable student self-service account modification features in application settings; (3) Implement real-time monitoring on user role modifications with alerts for ROLE_ADMIN assignment; (4) Require multi-factor authentication for all administrative accounts.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.
More in Chamilo Lms
View allChamilo LMS prior to 1.11.28 has a code injection through SOAP request parameters enabling remote code execution.
Chamilo LMS prior to 1.11.30 has a time-based SQL injection in a different endpoint, providing an additional database ex
Chamilo LMS prior to 1.11.30 has an error-based SQL injection enabling database extraction.
Chamilo LMS v1.11.x was discovered to contain a SQL injection via the doc parameter in main/plagiarism/compilatio/upload
Chamilo LMS 1.11.8 and 2.x allows remote code execution through an lp_upload.php unauthenticated file upload feature. Ra
Chamilo LMS prior to 1.11.30 has a blind SSRF vulnerability enabling internal network reconnaissance from the learning p
Unrestricted file upload in big file upload functionality in `/main/inc/lib/javascript/bigupload/inc/bigUpload.php` in C
Chamilo is a learning management system. [CVSS 8.8 HIGH]
Chamilo is a learning management system. Prior to version 1.11.30, an input validation vulnerability exists when importi
Chamilo LMS 1.11.26 is vulnerable to Incorrect Access Control via main/auth/profile. Rated high severity (CVSS 8.8), thi
Unrestricted file upload in `/main/inc/ajax/work.ajax.php` in Chamilo LMS <= v1.11.24 allows authenticated attackers wit
Unrestricted file upload in `/main/inc/ajax/exercise.ajax.php` in Chamilo LMS <= v1.11.24 allows authenticated attackers
EUVD-2026-22772
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB