关键信息 漏洞概述 CVE编号: CVE-2024-4981 漏洞类型: 安全漏洞 组件: vulnerability 优先级: 高 严重性: 高 影响范围 产品: Security Response 版本: unspecified 硬件: All 操作系统: Linux 报告与修复 报告时间: 2024-05-15 22:51 UTC 报告人: Nick Tait 修改时间: 2024-06-07 18:00 UTC 最后关闭时间: 2024-06-07 18:00:48 UTC 漏洞描述 在pagure/lib/git.py中, 方法允许直接从Web界面更新Pagure仓库中的文件。该方法将仓库克隆到临时文件夹中,执行写操作并提交更改,然后将其推回原始默认分支或新分支。 漏洞细节 问题: 代码在处理符号链接时没有采取足够的预防措施。如果 指向一个符号链接, 会跟随它,导致可以访问临时克隆文件夹之外的路径。 影响版本: 0.1.11及之后的版本 验证: 在最新开发版本中可被利用 利用步骤 1. 创建新仓库 2. 本地克隆 3. 运行命令创建文件 4. 提交并推送回Pagure 5. 通过Web界面编辑文件 6. 在文本区域输入内容并提交更改 7. 观察 文件在服务器上被创建 实际结果 调用 时,攻击者可以通过符号链接写入任意路径(只要系统git有目标路径的权限)。 修复建议 应仅在符号链接的目标位于临时克隆文件夹内时才执行 调用。使用 更为合适。