文章总结: Nacos3.0.0至3.2.3版本存在严重鉴权作用域错配漏洞,因@Secured注解默认值导致用户/角色/权限管理接口落入未鉴权作用域。未认证攻击者可通过8848端口创建用户、绑定角色并授予全量权限,实现服务端完全接管。官方已在3.2.4版本修复,建议立即升级或开启鉴权开关并限制网络访问。 综合评分: 90 文章分类: 漏洞分析,安全工具,安全建设,应用安全,解决方案
Nacos 3.x 鉴权作用域错配 未授权接管漏洞分析
原创
chicken chicken
爱坤sec
2026年8月29日 02:30 重庆
在小说阅读器读本章
去阅读
在公众号小说中沉浸阅读
Nacos 3.x 鉴权作用域错配漏洞分析
未授权创建管理员账户 完全接管服务端
SecLab 安全研究 · 2026-08-27 公开披露
⚠️ 严重 · 未授权账户接管
攻击向量:网络 | 所需权限:无 | 用户交互:无 | 暂未分配 CVE 编号
漏洞描述
Nacos 是阿里巴巴开源的服务注册与配置中心,广泛用于微服务架构。CVE 暂未分配的该漏洞影响 Nacos 3.0.0 ~ 3.2.3:用户、角色、权限三个管理接口落在了一个默认不鉴权的作用域里。
远程未认证攻击者无需任何凭证,即可在 8848 端口上创建用户、绑定角色、授予全量权限,随后正常登录获取 token——等同于完全接管 Nacos 服务端,读写全部命名空间配置(常含数据库/Redis/中间件凭据)。即使运维按官方文档开启了 admin/console 鉴权,漏洞依然存在。
影响版本
Nacos 3.0.0 ~ 3.2.3 均受影响
攻击面:服务端主端口 8848(SDK/gRPC 端口)
修复版本
✅ 升级至 3.2.4 及以上版本
⚠️ 官方修复:为受影响接口的 @Secured 注解补上 apiType = ApiType.ADMIN_API
漏洞根因
Nacos 3.x 将 HTTP 鉴权按 @Secured 注解的 apiType 拆分为多条独立作用域(scope),由不同 Servlet Filter 处理:
作用域拆分(关键)
ADMIN_API 走 AuthAdminFilter,开关 nacos.core.auth.admin.enabled,默认开启;OPEN_API 走 AuthFilter,开关 nacos.core.auth.enabled,默认关闭。
注解默认值陷阱
@Secured 注解的 apiType() 默认值是 OPEN_API——而 3.0.0~3.2.3 中用户/角色/权限管理控制器(nacos-default-auth-plugin 模块)的一批方法漏标了 apiType = ApiType.ADMIN_API,导致本应受默认开启的 Admin 鉴权保护的管理接口,落入默认关闭的普通鉴权作用域。
结果:AuthAdminFilter 只匹配 ADMIN_API,直接跳过这些接口;AuthFilter 因 auth.enabled=false 直接放行——形成「鉴权作用域错配」。
受影响接口
createUser / deleteUser → POST/DELETE /nacos/v3/auth/user
createRole / deleteRole → POST/DELETE /nacos/v3/auth/role
createPermission / deletePermission → POST/DELETE /nacos/v3/auth/permission
利用链(4 步)
① 未授权创建用户:POST /nacos/v3/auth/user
② 未授权创建角色并绑定:POST /nacos/v3/auth/role
③ 授予全量权限:POST /nacos/v3/auth/permission(resource=* / action=rw)
④ 正常登录:POST /nacos/v3/auth/user/login 获取 accessToken
两个关键绕过点:服务层禁止创建内置 ROLE_ADMIN → 改用随机角色名 + * 通配资源拿等价全量权限;权限缓存默认延迟 ~15s → 刚创建的用户立即访问可能失败,需重试。
公开 PoC
GitHub 上已有公开利用脚本(TlyHj/nacos-v3-attack、HackSpeak/nacos-authscope),
支持一键检测、批量扫描与完整利用(创建账户 → 绑角色 → 授权 → 登录取 token),
攻击者可未授权创建管理员等价账户完全接管。PoC 已公开,存在被批量利用的风险。
FOFA 语法
body="nacos" && port="8848"
# 或
title="Nacos" && port="8848"
修复建议
1️⃣ 立即升级 Nacos 至 3.2.4 及以上版本
2️⃣ 临时缓解:开启 nacos.core.auth.enabled=true(漏标接口同样要求认证)
3️⃣ 网络层面限制 8848 端口仅对可信内网开放
4️⃣ 排查系统中是否已存在攻击者注入的异常账户/角色
⚠️ PoC 已公开,存在被批量利用的风险,请尽快处置
参考链接
https://github.com/TlyHj/nacos-v3-attack
https://github.com/HackSpeak/nacos-authscope
https://github.com/alibaba/nacos
⚠️ 安全提示
本文内容仅用于安全研究与防御加固学习。请勿对未授权目标实施攻击,否则后果自负。
— EOF —
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:爱坤sec chicken chicken《Nacos 3.x 鉴权作用域错配 未授权接管漏洞分析》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论