漏洞概述

Copier 是一个用于渲染项目模板的库和命令行工具。在 9.11.2 版本之前,Copier 默认配置下允许通过符号链接(symlinks)从模板外部读取任意文件或目录,即使模板被标记为“安全”(即未使用如自定义 Jinja 扩展等需显式启用 –UNSAFE 或 –trust 标志的功能)。该问题源于默认设置 _preserve_symlinks: false,攻击者可借此构造恶意模板,导致本地信息泄露。

漏洞详情

  • CVE 编号:CVE-2026-23968
  • 漏洞类型:CWE-61(UNIX 符号链接问题)
  • CVSS 评分:6.8(中危),CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:N/VA:N
  • 影响版本:Copier 9.11.2 之前的所有版本

影响范围

所有使用 Copier 且版本低于 9.11.2 的系统,尤其是在处理来自不可信来源的模板时,若未手动启用符号链接保护机制,均可能受到此漏洞影响。

风险分析

攻击者可构造包含恶意符号链接的“看似安全”的模板,在用户使用 Copier 渲染该模板时,读取本地文件系统中模板目录以外的敏感文件(如配置文件、私钥等),造成信息泄露。由于攻击需用户主动执行模板生成操作(被动用户交互),且仅影响本地文件系统,因此 CVSS 评分为中危。

修复建议

  • 立即升级 Copier 至 9.11.2 或更高版本,该版本已修复此问题。
  • 在无法立即升级的情况下,应避免处理来自不可信来源的模板;如必须使用,可手动设置 _preserve_symlinks: true 以禁用符号链接解析。

参考链接