【漏洞预警】Nexus Repository 3 符号包缺少鉴权,角色管理可授出自己没有的权限(CVE-2026-97665 / 97712)
2026/10/18Docker漏洞预警轩辕镜像团队约 8 分钟阅读

【漏洞预警】Nexus Repository 3 符号包缺少鉴权,角色管理可授出自己没有的权限(CVE-2026-97665 / 97712)

Nexus Repository 3 在 3.97.0 之前有两条高危:启用 Symbol Server 的托管 NuGet 仓库上,仅有 read/browse 的账户可以上传 .snupkg(CVE-2026-97665,CVSS 4.0 为 7.1);持有角色创建或更新权限的用户可以把自己没有的角色授出,直至完整管理员(CVE-2026-97712,CVSS 4.0 为 8.7)。请把 sonatype/nexus3 升到 3.97.0 或更高。

本文使用的 Docker 镜像

发布日期: 2026 年 10 月 16 日
风险等级: 高危(High)
漏洞编号: CVE-2026-97665 · CVE-2026-97712
涉及镜像: sonatype/nexus3 — 轩辕镜像 · Docker Hub
CVSS: 8.7(High,CVSS 4.0,CVE-2026-97712)
披露时间: 2026 年 10 月,Sonatype 公告
相关公告: Nexus Repository 3.97.0 发行说明


一、漏洞概述

Sonatype Nexus Repository 3 是制品库,官方镜像是 sonatype/nexus3。下面两条在 3.97.0 一起修复。仓库类型包含 Docker 时,提权之后可以碰到这些仓库。

CVE-2026-97665: 已经启用 Symbol Server 的托管 NuGet 仓库,符号包上传路径没有做应有的鉴权。只持有 repository read / browse 的账户就可以上传并留下 .snupkg,普通包上传所需的写权限被绕过。如果开了匿名访问,内置 anonymous 默认具备全库 read / browse,未认证也能满足这个前提。

CVE-2026-97712: 持有 role create 或 role update 的用户,可以把自己并不具备的角色和特权授给别人,最高到完整管理员。权限模型被拆开之后,低权限管理员可以变成系统管理员,进而管理包括 Docker 仓库在内的全部制品库。记录中的受影响范围是 3.0.0 起、低于 3.97.0。


二、漏洞状态

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

项目状态
漏洞细节已公开(Sonatype 公告、NVD)
官方补丁3.97.0 及更高
CISA KEV未列入
CVECVSS 4.0要点受影响范围
CVE-2026-976657.1 HighNuGet 符号包上传缺少写权限检查CE / Pro 3.95.0 至 3.96.x,且托管 NuGet 仓库启用了 Symbol Server
CVE-2026-977128.7 High角色创建或更新时可以授出调用方自己没有的角色和特权3.0.0 起,低于 3.97.0

三、影响范围

1. 版本与发行形态

发行形态受影响范围修复
Nexus Repository 3低于 3.97.0≥ 3.97.0
官方镜像 sonatype/nexus3标签 3.96.4 及更早,含 3.96.xDocker Hub 已有 3.97.0、3.97.0-alpine、3.97.0-ubi

没有托管 NuGet 仓库,或没有打开 Symbol Server 的实例,不受 CVE-2026-97665 影响。角色管理那条仍覆盖 3.97.0 之前的版本。

2. 典型受影响场景

  • 匿名用户被授予全库 read / browse,同时某个 NuGet 托管仓库开了 Symbol Server
  • 有人只有 browse 权限,却能往符号包路径写入内容
  • 低权限管理员拥有 role create 或 role update,实例里还有 Docker 等生产仓库

四、修复建议

1. 升级到 3.97.0 或更高(推荐)

形态最低建议版本
sonatype/nexus33.97.0

如果当前用的是 alpine 或 ubi 变体,对应标签是 3.97.0-alpine、3.97.0-ubi。

Docker Hub: sonatype/nexus3

轩辕镜像: sonatype/nexus3

bash
docker pull docker.xuanyuan.run/sonatype/nexus3:3.97.0

将 Compose 或运行参数中的镜像改为上述坐标后,重新创建容器。升级后确认产品版本不低于 3.97.0。先备份数据目录。

发行说明:3.97.0。

2. 升级后审查权限

  1. 列出持有 role create、role update 的账户,去掉不需要的人。
  2. 核对匿名用户是否仍有全库 read / browse。
  3. 看启用了 Symbol Server 的 NuGet 托管仓库里,有没有升级前写入的异常符号包。

五、临时缓解措施

在完成升级之前:

  1. 关掉托管 NuGet 仓库的 Symbol Server
    这只缩小 CVE-2026-97665 的入口。角色提权仍然要靠升级到 3.97.0。

  2. read / browse 只给可信账户,并评估关闭匿名访问
    匿名默认可浏览时,符号包上传的前提更容易满足。

  3. 先收紧角色管理权限
    低于 3.97.0 时,能创建或更新角色的人可以把自己没有的特权授出去。收紧权限不能代替升级。


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

轩辕镜像提供的是镜像加速与拉取服务,不替代 Nexus 的版本升级。


七、参考链接


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

评论交流

加载中

免责声明

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

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

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

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

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