CVE-2026-40291

Source
https://cve.org/CVERecord?id=CVE-2026-40291
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-40291.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-40291
Aliases
  • GHSA-7phx-w897-4c9x
Published
2026-04-14T21:37:55.490Z
Modified
2026-08-12T03:51:43.927238336Z
Severity
  • 8.8 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H CVSS Calculator
Summary
Chamilo LMS has Privilege Escalation via API User Role Modification
Details

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 ROLESTUDENT to escalate their privileges to ROLEADMIN by modifying the roles field on their own user record. The API Platform security expression isgranted('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 ROLEADMIN. 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.

Database specific
{
    "unresolved_ranges": [
        {
            "source": "AFFECTED_FIELD",
            "extracted_events": [
                {
                    "fixed": "2.0-RC.3"
                }
            ]
        }
    ],
    "cwe_ids": [
        "CWE-269",
        "CWE-863"
    ],
    "cna_assigner": "GitHub_M",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/40xxx/CVE-2026-40291.json"
}
References

Affected packages

Git / github.com/chamilo/chamilo-lms

Affected ranges

Type
GIT
Repo
https://github.com/chamilo/chamilo-lms
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Last affected
Database specific
Show details
{
    "source": "CPE_RANGE",
    "cpe": "cpe:2.3:a:chamilo:chamilo_lms:*:*:*:*:*:*:*:*",
    "extracted_events": [
        {
            "introduced": "0"
        },
        {
            "last_affected": "1.11.38"
        }
    ]
}

Affected versions

Other
CHAMILO_1_8_7_ALPHA_1
CHAMILO_1_8_7_ALPHA_2
CHAMILO_1_8_7_RC2
CHAMILO_1_8_7_RC_1
CHAMILO_1_8_7_STABLE
CHAMILO_1_8_7_STABLE_BIS
CHAMILO_1_8_8_2_RC_1
CHAMILO_1_8_8_2_STABLE
CHAMILO_1_8_8_2_STABLE_2
CHAMILO_1_8_8_4_STABLE
CHAMILO_1_8_8_ALPHA
CHAMILO_1_8_8_BETA_1
CHAMILO_1_8_8_BETA_2
CHAMILO_1_9_0_ALPHA_1
CHAMILO_1_9_0_ALPHA_2
CHAMILO_1_9_0_ALPHA_4
CHAMILO_1_9_0_PRE_ALPHA
CHAMILO_1_9_0_RC_1
CHAMILO_1_9_0_STABLE_2
CHAMILO_1_9_0_STABLE_3
CHAMILO_1_9_2_STABLE
CHAMILO_1_9_2_STABLE_QUARTER
CHAMILO_1_9_4_ALPHA_1
CHAMILO_1_9_4_RC_1
CHAMILO_1_9_4_STABLE
CHAMILO_1_9_6_RC_1
CHAMILO_1_9_6_RC_2
CHAMILO_1_9_6_STABLE
CHAMILO_1_8_8.*
CHAMILO_1_8_8.3_STABLE_4
v1.*
v1.11.10
v1.11.12
v1.11.14
v1.11.14-beta.1
v1.11.18
v1.11.20
v1.11.20-beta.1
v1.11.22
v1.11.22-beta.1
v1.11.22-beta.2
v1.11.24
v1.11.26
v1.11.26-rc.1
v1.11.28
v1.11.30
v1.11.30-rc.1
v1.11.32
v1.11.36
v1.11.38
v1.11.6
v1.11.6-alpha.1
v1.8.6.1
v1.9.8

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-40291.json"