{"id":"CVE-2026-33710","summary":"Chamilo LMS has Weak REST API Key Generation (Predictable)","details":"Chamilo LMS is a learning management system. Prior to 1.11.38 and 2.0.0-RC.3, REST API keys are generated using md5(time() + (user_id * 5) - rand(10000, 10000)). The rand(10000, 10000) call always returns exactly 10000 (min == max), making the formula effectively md5(timestamp + user_id*5 - 10000). An attacker who knows a username and approximate key creation time can brute-force the API key. This vulnerability is fixed in 1.11.38 and 2.0.0-RC.3.","aliases":["GHSA-rpmg-j327-mr39"],"modified":"2026-07-15T01:48:56.928209411Z","published":"2026-04-10T18:59:24.111Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-330"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/33xxx/CVE-2026-33710.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/33xxx/CVE-2026-33710.json"},{"type":"ADVISORY","url":"https://github.com/chamilo/chamilo-lms/security/advisories/GHSA-rpmg-j327-mr39"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-33710"},{"type":"FIX","url":"https://github.com/chamilo/chamilo-lms/commit/4448701bb8ec557e94ef02d19c72cbe9c49c2d09"},{"type":"FIX","url":"https://github.com/chamilo/chamilo-lms/commit/e7400dd840586ae134b286d0a2374f3d269a9a9d"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/chamilo/chamilo-lms","events":[{"introduced":"0"},{"fixed":"abb5547a46a96339dfe6079e9b7ecd329bca181a"},{"fixed":"4448701bb8ec557e94ef02d19c72cbe9c49c2d09"},{"fixed":"e7400dd840586ae134b286d0a2374f3d269a9a9d"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"1.11.38"}],"source":["CPE_RANGE","REFERENCES"],"cpe":"cpe:2.3:a:chamilo:chamilo_lms:*:*:*:*:*:*:*:*"}}],"versions":["v1.11.36","v2.0.0-RC.2","v2.0.0-RC.1","v2.0.0-beta.3","v2.0.0-beta.1","v2.0.0-alpha.5","v2.0.0-alpha.4","v2.0.0-alpha.3","v1.11.32","v1.11.30","v1.11.30-rc.1","v2.0.0-alpha.2","v1.11.28","v2.0.0-alpha.1","v1.11.26","v1.11.26-rc.1","v1.11.24","v1.11.22","v1.11.22-beta.2","v1.11.22-beta.1","v1.11.20-beta.1","v1.11.20","v1.11.18","v1.11.14","v1.11.14-beta.1","v1.11.12","v1.11.10","v1.11.6","v1.11.6-alpha.1","v1.9.8","CHAMILO_1_9_6_STABLE","CHAMILO_1_9_6_RC_2","CHAMILO_1_9_6_RC_1","CHAMILO_1_9_4_STABLE","CHAMILO_1_9_4_RC_1","CHAMILO_1_9_4_ALPHA_1","CHAMILO_1_9_2_STABLE_QUARTER","CHAMILO_1_9_2_STABLE","CHAMILO_1_9_0_STABLE_3","CHAMILO_1_9_0_STABLE_2","CHAMILO_1_9_0_RC_1","CHAMILO_1_8_8_4_STABLE","CHAMILO_1_9_0_ALPHA_4","CHAMILO_1_9_0_ALPHA_2","CHAMILO_1_9_0_ALPHA_1","CHAMILO_1_9_0_PRE_ALPHA","CHAMILO_1_8_8.3_STABLE_4","CHAMILO_1_8_8_2_STABLE_2","CHAMILO_1_8_8_2_STABLE","CHAMILO_1_8_8_2_RC_1","CHAMILO_1_8_8_BETA_2","CHAMILO_1_8_8_BETA_1","CHAMILO_1_8_8_ALPHA","CHAMILO_1_8_7_STABLE_BIS","CHAMILO_1_8_7_STABLE","CHAMILO_1_8_7_RC2","CHAMILO_1_8_7_RC_1","CHAMILO_1_8_7_ALPHA_2","CHAMILO_1_8_7_ALPHA_1","v1.8.6.1"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-33710.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N"}]}