Skip to content
OpenAdvisories
High · 8.9 CVE-2026-45144 EUVD-2026-113996

Chamilo LMS: Stored XSS in public user-profile fields

Published Oct 30, 2026 · Updated Nov 4, 2026 · Assigned by GitHub_M

Description

Chamilo LMS is an open-source learning management system. From 2.0.0 until 2.0.1, `GET /user/{username}` is anonymously reachable and renders six user-editable profile fields (`firstname`, `lastname`, `competences`, `openarea`, `teach`, and `diplomas`) inside `{% autoescape false %}`, without server-side sanitization on the write path. A ROLE_STUDENT attacker can plant HTML in their own profile; self-registration, when enabled, lets an otherwise anonymous attacker obtain that role. The stored content executes in the browser of any visitor, including administrators, who follows the public profile link, potentially allowing account takeover through session, JWT, or `localStorage` exfiltration. This issue is fixed in version 2.0.1.

Affected products

VendorProductAffectedFixed
chamilo chamilo-lms >= 2.0.0, < 2.0.1 —

References