CVE-2026-28430Chamilo LMS是一套开源的学习管理系统,广泛应用于教育机构和企业内部培训。在1.11.34版本之前,该系统存在一个严重的安全漏洞,允许未经身份验证的远程攻击者通过custom_dates参数注入恶意SQL代码。由于系统对用户输入缺乏充分的过滤和验证,攻击者可以构造特制的请求来操纵数据库查询,进而执行任意SQL命令。该漏洞可与系统中可预测的遗留密码重置机制相结合,形成完整的攻击链。攻击者首先利用SQL注入获取数据库结构信息,随后通过密码重置功能的弱点重置任意用户的密码,最终实现完整的超级管理员账户接管。一旦获得管理员权限,攻击者可以访问系统中存储的全部敏感数据,包括学员个人信息、课程内容、认证凭据等。此外,整个数据库内容都将暴露在攻击者面前,可能导致严重的隐私泄露和数据安全问题。该漏洞无需任何前置条件,攻击者只需能够访问系统网络即可发起攻击,对使用受影响版本Chamilo LMS的组织构成极高风险。
该漏洞的根本原因在于Chamilo LMS对custom_dates参数的处理存在SQL注入缺陷。在处理用户请求时,系统直接将该参数的值拼接到SQL查询语句中,而未进行任何过滤、转义或使用参数化查询。攻击者可以通过在custom_dates参数中注入SQL语句片段,如使用UNION SELECT、布尔盲注或时间盲注等技术来提取数据库中的敏感信息。具体的注入点位于用户资料编辑或课程设置等相关功能模块中,攻击者可通过构造如' UNION SELECT username,password FROM user;-- 等payload来获取用户凭据。更为严重的是,该SQL注入漏洞可与系统中存在的遗留密码重置机制缺陷相结合。Chamilo LMS保留了早期版本的密码重置令牌生成算法,该算法基于可预测的时间戳和用户ID生成,攻击者可以暴力破解或推断出有效的密码重置令牌。通过这种组合攻击,攻击者无需任何已有凭据即可重置任意账户的密码,包括管理员账户。整个攻击过程可以在自动化工具的辅助下快速完成,对企业网络安全构成重大威胁。