首页 网络安全 正文
  • 本文约1366字,阅读需7分钟
  • 6
  • 0

Docker Compose路径遍历漏洞CVE-2025-62725

摘要

栋科技漏洞库关注到Docker Compose项目中存在一个高危路径遍历漏洞,该漏洞现已被追踪为CVE-2025-62725,漏洞CVSS 4.0评分8.9。

Docker Compose 项目是 Docker 开源项目,负责实现对Docker容器集群的快速编排,该产品是一个定义和运行多容器的docker应用工具。

Compose是一个定位定义和运行多个Docker容器应用的工具,使用Python编写,前身是Fig,目前使用的Compose兼容Fig格式的模板文件。

一、基本情况

Docker Compose 通过配置文件将多个关联的容器(前端、后端、数据库、缓存等)配置集中管理,实现 “一键启动 / 停止 / 重建” 应用栈。

通过 Compose,可以使用 YML 文件来配置应用程序需要的所有服务。然后使用一个命令就可以从 YML 文件配置中创建并启动所有服务。

Docker Compose路径遍历漏洞CVE-2025-62725

栋科技漏洞库关注到Docker Compose项目中存在一个高危路径遍历漏洞,该漏洞现已被追踪为CVE-2025-62725,漏洞CVSS 4.0评分8.9。

二、漏洞分析

CVE-2025-62725是 Docker Compose 中的高危路径遍历漏洞,这使恶意攻击者能够逃离Compose缓存目录,覆盖主机系统上的任意文件。

漏洞具体影响任何解决远程OCI编写工件、Docker Desktop、Linux上的独立编写二进制文件、CI/CD运行器、云开发环境的平台或工作流。

实际测试发现,该漏洞影响范围包括Docker Desktop安装实例、基于Linux的独立Compose二进制文件、持续集成运行器及云开发者沙箱。

该漏洞的根源在于Docker Compose处理OCI制品层以及其注解的方式。OCI(开放容器倡议)制品允许Compose文件远程分发和版本控制。

具体而言,Docker Compose信任嵌入在远程OCI Compose工件中的路径信息。

当一个层包含注释com.docker.compose.exextendscom.docker.compose.envfile时,

compose会将来自com.docker.compose.file/com.docker.compose.envfile的攻击者提供的值与其本地缓存目录连接,并将文件写入其中。

攻击者可逃离缓存目录并覆盖运行docker compose的机器上任意文件,即使用户只运行docker compose config或docker compose ps命令。

通过只读命令(如上所言docker compose config或docker compose ps)即可触发漏洞,这些命令通常在配置验证或CI代码检查阶段执行。

该漏洞影响广泛且严重,波及所有解析远程OCI Compose制品的平台或工作流,而且利用该漏洞无需构建或运行容器。

这意味着处理不可信OCI Compose文件(例如来自远程镜像仓库或第三方来源)的开发者或自动化流水线面临重大风险。

Docker Compose 2.40.2之前版本默认信任这些层注解值,尤其是com.docker.compose.extends 和com.docker.compose.envfile 键的注解。

攻击者可注入恶意相对路径(如../../../../../etc/passwd),诱使Compose将文件写入预期缓存目录之外,进而覆盖系统文件或敏感配置数据。

三、影响范围

Docker Compose < v2.40.2

四、修复建议

Docker Compose >= v2.40.2

五、参考链接

管理员已设置登录后刷新可查看



扫描二维码,在手机上阅读
评论
更换验证码
友情链接