CVE-2026-32892Chamilo LMS在特定版本中存在操作系统命令注入漏洞。由于文件移动功能未对用户输入路径进行严格的Shell转义,直接将其拼接到系统命令中执行。经过认证的攻击者可利用此漏洞,通过构造恶意目录名并移动文件,实现任意代码执行,从而威胁服务器安全。
该漏洞源于Chamilo LMS的`fileManage.lib.php`文件中的`move()`函数。当用户通过`document.php`移动文档时,`move_to` POST参数仅经过`Security::remove_XSS()`过滤,该方法仅移除HTML标签,无法防止Shell命令注入。攻击者控制的路径被直接拼接到`exec("mv $source $target")`中。利用链首先要求攻击者通过“课程备份导入”功能,在服务器上创建一个包含Shell元字符(如分号或反引号)的目录。随后,攻击者发送移动文档的请求,将文件移动至该恶意目录。此时,`exec()`函数会解析目录名中的元字符,导致攻击者预设的系统命令以Web服务器用户身份被执行。由于系统默认允许认证用户创建课程,该漏洞利用门槛较低。