Description
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.
Published: 2026-04-14
Score: 8.8 High
EPSS: < 1% Very Low
KEV: No
Impact: Privilege Escalation to Administrator
Action: Immediate Patch
AI Analysis

Impact

Chamilo LMS is an open‑source learning management system. An insecure direct object reference was discovered in the PUT /api/users/{id} endpoint, allowing any authenticated user who has the ROLE_STUDENT privilege to modify their own user record. By changing the roles field to include ROLE_ADMIN, the attacker can elevate privileges to full administrative control. This grants access to all courses, user data, grade information and administrative settings, effectively compromising the entire platform.

Affected Systems

The vulnerability affects all installations of Chamilo LMS using versions before 2.0.0‑RC.3 that expose the user API. The affected product is Chamilo LMS provided by the Chamilo project. Administrators should identify deployments running a pre‑RC.3 release and verify that the API is exposed.

Risk and Exploitability

The assigned CVSS score of 8.8 indicates high severity. The EPSS score is not available, and the vulnerability is not listed in the CISA KEV catalog. The likely attack vector is an authenticated student account that has network connectivity to the API; the attacker needs only to craft a PUT request to their own user ID and assign the ADMIN role. Because the API's security expression only checks record ownership, further defensive checks are not performed, making exploitation straightforward for any logged‑in user. Immediate patching is strongly recommended.

Generated by OpenCVE AI on April 14, 2026 at 23:26 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to version 2.0.0‑RC.3 or later
  • Ensure the roles field is removed from the writable serialization group for non‑admin users and verify the is_granted('EDIT', object) expression correctly limits role changes
  • Re‑audit user roles, remove unintended admin accounts, and review audit logs for recent role modifications

Generated by OpenCVE AI on April 14, 2026 at 23:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 22 Apr 2026 18:45:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:chamilo:chamilo_lms:*:*:*:*:*:*:*:*
cpe:2.3:a:chamilo:chamilo_lms:2.0.0:alpha1:*:*:*:*:*:*
cpe:2.3:a:chamilo:chamilo_lms:2.0.0:alpha2:*:*:*:*:*:*
cpe:2.3:a:chamilo:chamilo_lms:2.0.0:alpha3:*:*:*:*:*:*
cpe:2.3:a:chamilo:chamilo_lms:2.0.0:alpha4:*:*:*:*:*:*
cpe:2.3:a:chamilo:chamilo_lms:2.0.0:alpha5:*:*:*:*:*:*
cpe:2.3:a:chamilo:chamilo_lms:2.0.0:beta1:*:*:*:*:*:*
cpe:2.3:a:chamilo:chamilo_lms:2.0.0:beta2:*:*:*:*:*:*
cpe:2.3:a:chamilo:chamilo_lms:2.0.0:beta3:*:*:*:*:*:*
cpe:2.3:a:chamilo:chamilo_lms:2.0.0:rc1:*:*:*:*:*:*
cpe:2.3:a:chamilo:chamilo_lms:2.0.0:rc2:*:*:*:*:*:*

Wed, 15 Apr 2026 15:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 15 Apr 2026 14:00:00 +0000

Type Values Removed Values Added
First Time appeared Chamilo
Chamilo chamilo Lms
Vendors & Products Chamilo
Chamilo chamilo Lms

Tue, 14 Apr 2026 22:00:00 +0000

Type Values Removed Values Added
Description 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.
Title Chamilo LMS has Privilege Escalation via API User Role Modification
Weaknesses CWE-269
CWE-863
References
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}


Subscriptions

Chamilo Chamilo Lms
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-04-15T14:24:29.902Z

Reserved: 2026-04-10T20:22:44.035Z

Link: CVE-2026-40291

cve-icon Vulnrichment

Updated: 2026-04-15T14:24:26.077Z

cve-icon NVD

Status : Analyzed

Published: 2026-04-14T22:16:32.507

Modified: 2026-04-22T18:37:25.983

Link: CVE-2026-40291

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-04-15T14:31:57Z

Weaknesses