nacos越权漏洞复现

1.低版本(nacos<1.4.1)默认白名单UA

开启鉴权功能后,服务端之间的请求也会通过鉴权系统的影响。考虑到服务端之间的通信应该是可信的,因此在1.2~1.4.0版本期间,通过User-Agent中是否包含Nacos-Server来进行判断请求是否来自其他服务端。

但这种实现由于过于简单且固定,导致可能存在安全问题。因此从1.4.1版本开始,Nacos添加服务身份识别功能,用户可以自行配置服务端的Identity,不再使用User-Agent作为服务端请求的判断标准。
默认nacos/conf/application.properties中开启了白名单UA

nacos.core.auth.enable.userAgentAuthWhite=true

复制代码
### 开启鉴权
nacos.core.auth.enabled=true
 
### 关闭使用user-agent判断服务端请求并放行鉴权的功能
nacos.core.auth.enable.userAgentAuthWhite=false
 
### 配置自定义身份识别的key(不可为空)和value(不可为空)
nacos.core.auth.server.identity.key=example
nacos.core.auth.server.identity.value=example

** 注意 ** 所有集群均需要配置相同的server.identity信息,否则可能导致服务端之间数据不一致或无法删除实例等问题。

2.默认token.secret.key

Nacos服务管理平台因默认密钥导致的认证绕过漏洞。在默认配置为未修改的情况下,攻击者可以构造用户 token 进入后台,导致系统被攻击与控制。许多Nacos 用户只开启了鉴权,但没有修改默认密钥,导致Nacos系统仍存在被入侵的风险

使用jwt.io对accessToken进行构造(exp时间需要为当天)

复制代码
修改nacos.core.auth.default.token.secret.key的默认值

3.未开启授权

复制代码
将nacos.core.auth.enabled设置为true

4.默认账号

输入 nacos/nacos 成功登陆后台

相关推荐
caoerzhong2 分钟前
JeeWMS 开源仓库管理系统全景解读:一套 Java WMS 如何把 WMS/OMS/BMS/TMS 装进同一个系统
java·开源
曹牧13 分钟前
Java集合框架:List、ArrayList、Map 和 HashMap
java
顾城猿17 分钟前
STOMP 协议
java
骇客野人1 小时前
测试环境MySQL迁移Vastbase(海量数据库)完整改造与落地实施方案
运维·服务器
+VX:Fegn08951 小时前
计算机毕业设计|基于springboot + vue旅游管理系统(源码+数据库+文档)
java·开发语言·vue.js·spring boot·课程设计
需要8261 小时前
MySQL 索引 B+ 树与“查询为什么变慢了
java·spring boot·spring·spring cloud·tomcat
一 乐1 小时前
二手交易平台|基于springboot + vue二手交易平台(源码+数据库+文档)
java·数据库·vue.js·spring boot·小程序
万年咸鱼2 小时前
编译Java源程序
java
Wang's Blog2 小时前
Java 项目实战: 外卖平台-删除分类的关联校验与自定义业务异常
java·服务器·项目开发
zly35002 小时前
VMware Converter Standalone 物理机转化为虚拟机后源1硬盘变成了2个硬盘(2个硬盘文件)虚拟机无法启动。
linux·运维·服务器