Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach public AJAX handler unauthenticated
-
ExploitInvoke export_all_certificates / get_users_by_group_course action
-
ImpactHarvest learner names and certificate PDFs
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
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 | Exploitable only against Chamilo LMS 2.0.0-alpha.1 up to (not including) 2.0.0-RC.3, where the legacy AJAX handlers in public/main/inc/ajax/ (course.ajax.php, usergroup.ajax.php, gradebook.ajax.php, user_manager.ajax.php, online.ajax.php) ship without role checks on actions like get_users_by_group_course, user_by_all_roles, and export_all_certificates. No special feature toggle or non-default configuration is required - these endpoints are reachable by unauthenticated or low-privileged users in a default install. Limiting factors: the affected range is entirely pre-release (alpha/RC), so stable 1.x production sites are unaffected; impact is confined to disclosure of learner names and certificate PDFs with no write/modify or availability impact; and upgrading to v2.0.0-RC.3 (which adds the authorization guards) fully remediates. |
| Impact | This is a genuine but moderate-severity information-disclosure issue, not a critical system-compromise bug. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N) is internally consistent with the description: network-reachable, low-complexity, no privileges or user interaction required, with low confidentiality impact and zero integrity/availability impact - matching a missing-authorization (CWE-862) flaw that leaks names and certificate PDFs rather than enabling code execution or data modification. The confidentiality impact is rated Low because the exposed data (learner names, certificate PDFs) is sensitive PII but not credentials or secrets. No EPSS score was provided, the CVE is NOT in CISA KEV, and no public POC was supplied, so there is no public exploit identified at time of analysis; the SSVC framework cannot be fully applied as no exploitation-status/automatable decision data was given. The single most important limiting signal, which the raw severity obscures, is that the affected range is strictly pre-release (2.0.0-alpha.1 through 2.0.0-RC.2); stable production Chamilo deployments run the 1.x line and are not in scope, sharply reducing real-world exposure. Net: a legitimate, easy-to-trigger PII leak that warrants patching for anyone running the 2.0 release candidates, but low urgency absent active exploitation and given the narrow pre-release footprint. |
| Exploit ScenarioDerived | An unauthenticated attacker sends crafted HTTP requests directly to legacy AJAX endpoints under public/main/inc/ajax/ (e.g. invoking actions such as get_users_by_group_course, user_by_all_roles, or export_all_certificates) which lacked authorization checks. Because no privileges or user interaction are required (PR:N/UI:N), the attacker enumerates learner names and downloads other users' certificate PDFs at scale. No public exploit code was identified at time of analysis, but the attack is trivial to reproduce from the fix diff. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 21, 2026
Missing authorization checks in the legacy AJAX handlers of Chamilo LMS 2.0.0 pre-releases (2.0.0-alpha.1 through RC.2) let unauthenticated remote attackers enumerate learner accounts and pull other users' certificate PDFs by calling actions such as get_users_by_group_course, user_by_all_roles and export_all_certificates. Impact is confined to confidentiality (user names and certificate documents); there is no write, modification or availability effect, and stable 1.x production installations are not in the affected range. The independent assessment rates this as a genuine but moderate-severity information-disclosure issue (CVSS v4.0 score of 6.9, assessed CVSS 3.1 vector AV:N/AC:L/PR:N/UI:N/C:L), and no public exploit code or CISA KEV entry was identified at time of analysis.
RemediationAI
Upgrade to Chamilo LMS 2.0.0-RC.3 or later (release notes: https://github.com/chamilo/chamilo-lms/releases/tag/v2.0.0-RC.3), which applies the authorization guards in commit 2861afd4896ff898a950302f2c00f44726fa6f0a - vendor-released patch: 2.0.0-RC.3. Because every affected version is a pre-release, the strongest control is simply not to run alpha/RC builds in production; migrate such instances to a patched release before exposing them to untrusted networks. Where an immediate upgrade is not possible, put a reverse-proxy or WAF rule in front of /public/main/inc/ajax/ that rejects unauthenticated requests to the affected actions (get_users_by_group_course, user_by_all_roles, export_all_certificates and the user_manager/online handlers); the trade-off is that legitimate teacher and admin UI calls to those same endpoints will also be blocked unless the rule is scoped by role or session, so expect broken course-tool and gradebook features. Alternatively, restrict the whole /public/main/inc/ajax/ path to authenticated users with teacher or platform-admin roles at the web server, accepting the same functional breakage for student-facing pages, or rebuild the affected pre-release deployment from the RC.3 tag. Certificate PDFs and user-name listings already harvested before the fix should be treated as disclosed, and any exposed pre-release instance should be reviewed for follow-on enumeration attempts in access logs.
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
The root cause is CWE-862 (Missing Authorization): procedural PHP endpoints under public/main/inc/ajax/ that survived into the 2.0 codebase were reachable without any role gate, so request handling reached the data-return logic before any capability check ran. The upstream commit 2861afd4896ff898a950302f2c00f44726fa6f0a shows the missing checks being inserted - guards such as !$isPlatformAdmin && !api_is_session_admin() && !api_is_teacher() in course.ajax.php, !$isAllowedToEdit && !api_is_platform_admin() && !api_is_teacher() in usergroup.ajax.php, !api_is_allowed_to_edit(null, true) && !api_is_student_boss() in gradebook.ajax.php, api_is_anonymous() in online.ajax.php, and role checks replacing api_block_anonymous_users() in user_manager.ajax.php. The same commit also retrofits Symfony security attributes onto newer controllers (IsGranted('IS_AUTHENTICATED_FULLY') and IsGranted('ROLE_TEACHER'), plus denyAccessUnlessGranted(CourseVoter::EDIT, $course) in GradebookController, OnlineController and AiController), reflecting a hybrid architecture where legacy AJAX scripts and Symfony 6 controllers coexist. The CPE cpe:2.3:a:chamilo:chamilo-lms:*:*:*:*:*:*:*:* is a wildcard, so version scoping must come from the advisory: everything from 2.0.0-alpha.1 up to but excluding 2.0.0-RC.3. Because the vector is PR:N, the exposed handlers are reachable pre-authentication - the attacker does not need a session or course enrolment.
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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Endpoints are network-reachable with no auth or interaction (AV:N/AC:L/PR:N/UI:N); only PII/certificate confidentiality leaks (C:L), with no integrity or availability impact and no scope change.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Chamilo LMS from 2.0.0-alpha.1 before 2.0.0-RC.3 contains a missing authorization vulnerability in legacy AJAX handlers under public/main/inc/ajax/ that exposes user names and certificates. Unauthenticated or low-privileged users can call actions like get_users_by_group_course, user_by_all_roles, and export_all_certificates to harvest user names and other learners' certificate PDFs.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
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-107237
GHSA-h28r-m2q7-jx9p
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB