Description
Chamilo LMS is an open-source learning management system. Prior to 2.0.1, `public/main/inc/lib/career.lib.php` and `public/main/cron/import_csv.php` call PHP's native `unserialize()` on `user_career.extra_data` retrieved from the database without the `allowed_classes: false` safety option. An attacker able to write crafted serialized PHP objects to that column, for example through a separate SQL injection, a compromised admin CSV import, or a lower-privilege admin panel, can instantiate arbitrary PHP objects and trigger POP gadget chains in autoloaded `Symfony`, `Doctrine`, or `Monolog` components. This permits arbitrary OS commands as the web server user, compromising server confidentiality, integrity, and availability. This issue is fixed in version 2.0.1.
Published: 2026-10-30
Score: 7.5 High
EPSS: n/a
KEV: No
Impact: Remote code execution
Action: Immediate patch
AI Analysis

Impact

Chamilo LMS has a PHP object injection vulnerability arising from the use of PHP's unserialize function on data retrieved from the database without setting allowed_classes to false. An attacker that can inject crafted serialized objects into the user_career.extra_data field, for example via SQL injection, a compromised CSV import, or a lower‑privilege admin panel, can trigger gadget chains in autoloaded Symfony, Doctrine, or Monolog components, allowing execution of arbitrary OS commands as the web server user. This results in full compromise of the server, affecting confidentiality, integrity, and availability.

Affected Systems

Chamilo LMS, version 2.0.0 and earlier, across all installations that use the public/main/inc/lib/career.lib.php or public/main/cron/import_csv.php modules and store user career data in the database. The vulnerability was fixed in the 2.0.1 release.

Risk and Exploitability

The CVSS score of 7.5 indicates high risk, and the lack of an EPSS score means exploitation probability cannot be quantified. The vulnerability is not listed in the CISA KEV catalog. An attacker must first gain the capability to write serialized payloads into the database, which may require exploiting an existing SQL injection or compromising the CSV import process. Once that prerequisite is met, the gadget chain can be invoked to run arbitrary commands with the privileges of the web server.

Generated by OpenCVE AI on October 30, 2026 at 15:54 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the official patch by upgrading to Chamilo LMS 2.0.1 or a later release.
  • If upgrading immediately is not possible, immediately restrict write access to the user_career.extra_data column or clear existing serialized data to eliminate the vector.
  • As a temporary workaround, disable or restrict the autoloading of Symfony, Doctrine, or Monolog components that may facilitate gadget chains, and enforce strict input validation on any data that flows into unserialize calls.

Generated by OpenCVE AI on October 30, 2026 at 15:54 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 30 Oct 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Fri, 30 Oct 2026 16:00:00 +0000

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

Fri, 30 Oct 2026 14:45:00 +0000

Type Values Removed Values Added
Description Chamilo LMS is an open-source learning management system. Prior to 2.0.1, `public/main/inc/lib/career.lib.php` and `public/main/cron/import_csv.php` call PHP's native `unserialize()` on `user_career.extra_data` retrieved from the database without the `allowed_classes: false` safety option. An attacker able to write crafted serialized PHP objects to that column, for example through a separate SQL injection, a compromised admin CSV import, or a lower-privilege admin panel, can instantiate arbitrary PHP objects and trigger POP gadget chains in autoloaded `Symfony`, `Doctrine`, or `Monolog` components. This permits arbitrary OS commands as the web server user, compromising server confidentiality, integrity, and availability. This issue is fixed in version 2.0.1.
Title Chamilo LMS: Database-backed PHP object injection in career deserialization
Weaknesses CWE-502
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:H/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-10-30T15:51:30.372Z

Reserved: 2026-05-08T20:44:38.963Z

Link: CVE-2026-45145

cve-icon Vulnrichment

Updated: 2026-10-30T15:34:56.820Z

cve-icon NVD

Status : Received

Published: 2026-10-30T15:16:51.923

Modified: 2026-10-30T16:17:56.170

Link: CVE-2026-45145

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-30T16:00:16Z

Weaknesses
  • CWE-502

    Deserialization of Untrusted Data