CVE-2026-32146Gleam编译器在处理git依赖时存在路径验证不当漏洞。攻击者可以通过构造恶意的依赖名称(包含路径遍历序列),在依赖下载和解析阶段覆盖或删除目标文件系统之外的任意目录。该漏洞影响Gleam 1.9.0-rc1至1.15.4版本。
该漏洞的根源在于Gleam编译器在构建文件系统路径时,未对`gleam.toml`或`manifest.toml`中提供的依赖名称进行充分的校验或沙箱限制。在执行`gleam deps download`等解析git依赖的命令时,程序会将受控的依赖名称直接拼接进路径中,并执行目录删除和创建操作。攻击者通过控制直接或间接的git依赖,在依赖名称中注入相对路径(如`../`)或绝对路径参数,从而突破预期的依赖目录限制,导致任意文件系统位置的目录被删除或覆盖。这种文件系统的篡改可能导致数据丢失,甚至通过覆盖Git钩子或Shell配置文件进一步实现代码执行。