【漏洞预警】BentoML 遗留 Dockerfile 模板可在构建主机执行任意 RUN(CVE-2026-112264)
2026/10/20Docker漏洞预警轩辕镜像团队约 7 分钟阅读

【漏洞预警】BentoML 遗留 Dockerfile 模板可在构建主机执行任意 RUN(CVE-2026-112264)

BentoML 1.4.39 及更早的遗留模板 base.j2 对 docker.env 的键未做换行消毒。恶意 bentofile 或 bento 归档可让 bentoml containerize 生成含任意 RUN 的 Dockerfile,并在 docker build 所在主机执行(CVE-2026-112264,CVSS 3.1 为 7.8,CVSS 4.0 为 8.5)。公开渠道最新仍是 1.4.39,没有已发布的修复版。

本文使用的 Docker 镜像

发布日期: 2026 年 10 月 20 日
风险等级: 高危(High)
漏洞编号: CVE-2026-112264
涉及镜像: bentoml/bento-server — 轩辕镜像 · Docker Hub · bentoml/model-server — 轩辕镜像 · Docker Hub
CVSS: 8.5(High,CVSS 4.0);CVSS 3.1 为 7.8
披露时间: 2026 年 10 月公开
相关公告: GHSA-rq23-h86h-7v4x


一、漏洞概述

问题在 pip 包 bentoml 的 containerize 构建路径,不是某个正在运行的服务镜像上的远程接口。

1.4.39 及更早版本里,遗留模板 base.j2 对 docker.env 的字典键没有做换行消毒。配置使用 docker.base_image、因而走这条遗留模板时,恶意的 bentofile.yaml 或 bento 归档可以在键里插入换行,让 bentoml containerize 写出包含任意 RUN 的 Dockerfile。

受害者执行构建时,这些 RUN 会在 docker build 所在主机上、以 Docker daemon 的权限执行。构建机密可能被读走,随后生成的镜像也可能被改掉。CI 和会构建不可信归档的机器风险更高。触发需要有人实际跑这次 containerize。

更早的 CVE-2026-44346 修的是 base_v2.j2 里 envs[*].name。遗留的 base.j2 没有一起修好。


二、漏洞状态

统计截止: 2026 年 10 月 20 日(UTC+8)

项目状态
漏洞细节已公开(GitHub Advisory Database、NVD)
漏洞类型遗留 Dockerfile 模板对 docker.env 键未消毒,构建时写入任意 RUN
受影响版本BentoML ≤ 1.4.39
官方补丁无。GitHub tags 与 PyPI 最新仍是 1.4.39,公告未给出已修复版本
前置条件使用 docker.base_image、走遗留 base.j2,并对不可信 bentofile 或归档执行 bentoml containerize
CISA KEV未列入

三、影响范围

1. 发行形态

形态与这条漏洞的关系
pip 包 bentoml ≤ 1.4.39受影响的是 containerize
bentoml/bento-server相关的基础镜像坐标,已不再作为当前发行。拉取它不会修好 1.4.39 的模板
bentoml/model-server页面对应 0.13.x。不是 1.4.39 的修复包

不要按一个尚未发布的版本号去升级。Hub 上这两个仓库的可见标签分别停在 1.0.0a7 与 0.13.2 一带,都不能当成 CVE-2026-112264 的修复标签。

2. 典型受影响场景

  • CI 对外部提交的 bentofile 或 bento 归档执行 bentoml containerize
  • 开发机打开不可信项目后执行构建
  • 构建机能读到 build secrets,或构建结果会被推到镜像仓库

只运行已经构建好的服务镜像、本机不执行 containerize 时,不走这条构建路径。


四、修复建议

1. 目前没有可升级到的修复版

公开渠道最新仍是 1.4.39。在上游发布高于 1.4.39 的版本,并且发行说明写明修好遗留模板之前,不要把任何一个标签写成已修复。

关注 GHSA-rq23-h86h-7v4x 和 BentoML 的后续发行。出现明确修复版之后,再把 pip 包和构建任务固定到该版本。

2. 已经对不可信归档执行过 containerize 时

按构建主机和产物镜像可能已被改动处理:轮换该机构建时能读到的凭据,丢弃来源不可信的镜像,用干净环境重新构建。


五、临时缓解措施

在修复版发布之前:

  1. 不要对不可信 bentofile 或 bento 归档执行 bentoml containerize
    注入的 RUN 会在 docker build 那台主机上执行。

  2. CI 不要默认构建外部提交的 Bento 归档
    把构建限制在已审核的配置上。这不能补上 base.j2 的换行消毒。

  3. 不要用 bentoml/bento-server 或 bentoml/model-server 代替 pip 包升级
    这两个坐标不是 1.4.39 的修复发布。


六、与轩辕镜像用户的相关说明

这条修复要等 BentoML 的 pip 包发布高于 1.4.39 的版本。加速拉取 bentoml/bento-server 或 bentoml/model-server 不会更换构建机上的 bentoml 包,也不会消掉遗留模板里的问题。


七、参考链接


轩辕镜像安全团队
2026 年 10 月 20 日

评论交流

加载中

免责声明

本博客文章所提供的内容、技术方案、配置示例及部署指南等信息,仅供学习交流和技术参考使用。文章内容基于发布时的技术环境和版本信息编写,可能因时间推移、技术更新或环境差异而存在不适用的情况。

用户在参考本博客内容进行部署操作前,应当充分了解相关技术风险,并建议在测试环境中进行充分验证和测试,确认无误后再考虑在生产环境中使用。生产环境部署前,请务必进行数据备份,并制定相应的回滚方案。

用户因使用本博客内容进行部署操作而产生的任何损失、数据丢失、系统故障、安全风险或其他问题,均由用户自行承担全部责任。轩辕镜像官方不对因使用本博客内容而产生的任何直接或间接损失承担责任。

本免责声明的最终解释权归轩辕镜像官方所有。

最后更新:2026/10/20
官方技术交流群:问题咨询请:提交工单
专业版 · 高速稳定拉取镜像
50GB 仅 ¥8/年
高速镜像下载在线技术支持99.95% SLA 保障付费会员免广告