Hvv之Nacos漏洞分析与整改

news2024/11/19 16:25:26

目录

什么是nacos

漏洞复现过程

解压、修改配置文件、启动、

复现任意创建账户漏洞

问题分析

修改建议


什么是nacos

Nacos 是阿里巴巴推出来的一个新开源项目,这是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

 NACOS界面提示“内部系统、不可暴露到公网”个人也是建议第三方非系统程序、服务于系统程序的第三方软件建议部署在内网、不要暴露在公网上、避免安全事故发生。

漏洞复现过程

  • 下载地址一:nacos2.2.1windos版本

https://objects.githubusercontent.com/github-production-release-asset-2e65be/137451403/5c80d17e-e790-414e-9229-a621f088e262?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20230818%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230818T132716Z&X-Amz-Expires=300&X-Amz-Signature=fc0dfecce40cb7055371adef9219f28cb2514890b51c505fb4be8bd3307cfd1e&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=137451403&response-content-disposition=attachment%3B%20filename%3Dnacos-server-2.1.2.zip&response-content-type=application%2Foctet-stream

  • 下载地址二:nacos2.2.3windows版本

https://objects.githubusercontent.com/github-production-release-asset-2e65be/137451403/6c4fd4b7-3b7b-43f4-ac30-228a6ce9e7c9?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20230818%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230818T143618Z&X-Amz-Expires=300&X-Amz-Signature=6c4cc309aee5eb1c1aba2b6147643a00d4c2e15d16eb99ab103f39bb154ecb61&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=137451403&response-content-disposition=attachment%3B%20filename%3Dnacos-server-2.2.3.zip&response-content-type=application%2Foctet-stream

  • 下载地址三:nacos2.2.3linux版本

https://objects.githubusercontent.com/github-production-release-asset-2e65be/137451403/3c33d431-6d6e-4b76-a68a-63b054a11fe6?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20230818%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230818T143621Z&X-Amz-Expires=300&X-Amz-Signature=f40bae01cb434457ecbe44fab4f25440245e8609fbd46619af4d4be7cdbbd1be&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=137451403&response-content-disposition=attachment%3B%20filename%3Dnacos-server-2.2.3.tar.gz&response-content-type=application%2Foctet-stream

  • 下载地址四其他版本地址

Releases · alibaba/nacos · GitHub

解压、修改配置文件、启动、

前置条件

1、检查系统是否安装jdk环境

2、记事本打开修改set MODE="standalone"为修改后的值保存退出

3、启动

 4、访问地址默认账户nacos 密码nacos

 复现任意创建账户漏洞

首先界面添加添加一个nacos账户、抓包

该接口是添加用户接口、发现接口参数包含accessToken用户认证票据、但是由于nacos我们没有开启鉴权模式、所以服务端不会对accessToken进行校验、从而导致此漏洞发生

POST /nacos/v1/auth/users?accessToken=eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTY5MjQyNjM2OX0.ExBjvC-4gayzUqIKcmr7vkFvva9Xph8P7JQTzxxpHyg HTTP/1.1
Host: 192.168.0.101:8848
Content-Length: 29
Accept: application/json, text/plain, */*
accessToken: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTY5MjQyNjM2OX0.ExBjvC-4gayzUqIKcmr7vkFvva9Xph8P7JQTzxxpHyg
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Origin: http://192.168.0.101:8848
Referer: http://192.168.0.101:8848/nacos/index.html
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=134904554562CED3B7C41F6D3E01CDA7
Connection: close

username=nacos2&password=1234

 或者使用postman

 接口http://192.168.0.101:8848/nacos/v1/auth/users

 参数username=nacos3 password=1

 添加成功

 其他编辑用户、删除用户、查看用户接口不在演示

 问题分析

进入E:\nacos-server-2.2.3\nacos\conf 安装目录有个application.properties配置

问题一:认证鉴权配置 nacos.core.auth.enabled=false 关闭状态

 问题二:secret.key nacos<2.2.1版本密钥在配置文件存在默认值

nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789

可以伪造Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTY5MjQyNjM2OX0.ExBjvC-4gayzUqIKcmr7vkFvva9Xph8P7JQTzxxpHyg

例如nacos输入用户和密码验证OK。服务端返回accessToken

使用JWT在线反解、加密生成jtw token 

但是打开认证鉴权模式后,尝试使用JWT在线生成生成Authorization票据绕过认证创建账户、比较遗憾未复现出密钥固定值存在安全风险的漏洞

 修改建议

1、认证鉴权配置

application.properties文件 nacos.core.auth.enabled=false 关闭状态修改为true

2、nacos.core.auth.plugin.nacos.token.secret.key naocs版本低于2.2.1修改默认值key

=SecretKey012345678901234567890123456789012345678901234567890123456789默认值及时修改

3、更新nacos版本至2.2.3版本或者版本、目前2.2.3版本

nacos.core.auth.plugin.nacos.token.secret.key=""已经被修改、key默认值为空了

今天就到这里把祝大家周末愉快!!!!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

冠达管理:市盈率除以市净率是什么意思?

市盈率&#xff08;Price-to-Earnings Ratio&#xff0c;简称P/E&#xff09;和市净率&#xff08;Price-to-Book Ratio&#xff0c;简称P/B&#xff09;是股票商场中常用的两个评价目标。市盈率衡量的是一家公司的市值与其盈余才能的联系&#xff0c;而市净率则是衡量其市值与…

Ladp数据库安装和配置自定义schema ,Centos7环境

最近安装ldap看了不少教程&#xff0c;整理下用到的有用的资料&#xff0c;并把自己的搭建过程分享。 参考 ldap介绍&#xff1a;openLDAP入门与安装 官方文档&#xff1a;https://www.openldap.org/doc/admin22/schema.html 安装配置&#xff1a;Centos7 搭建openldap完整详…

C++之模板进阶

模板进阶 非类型模板参数模板的特化概念函数模板特化类模板特化全特化偏特化 模板分离编译什么是分离编译模板的分离编译解决方法 模板总结 非类型模板参数 模板参数分两种&#xff1a;类型形参与非类型形参。 类型形参&#xff1a;出现在模板参数列表中&#xff0c;跟在class…

LeetCode--HOT100题(35)

目录 题目描述&#xff1a;23. 合并 K 个升序链表&#xff08;困难&#xff09;题目接口解题思路1代码解题思路2代码 PS: 题目描述&#xff1a;23. 合并 K 个升序链表&#xff08;困难&#xff09; 给你一个链表数组&#xff0c;每个链表都已经按升序排列。 请你将所有链表合…

STM32单片机蓝牙-APP全自动洗衣机水位检测洗涤脱水排水

实践制作DIY- GC0164--蓝牙-APP全自动洗衣机水位检测 基于STM32单片机设计---蓝牙-APP全自动洗衣机水位检测 二、功能介绍&#xff1a; 硬件组成&#xff1a;STM32F103C单片机最小系统LCD1602显示器 1个5V直流电机&#xff08;低速洗衣高速脱水&#xff09;1个加水电磁阀1个排水…

Windows下打包工具包为一个exe

1. 目的 很多时候&#xff0c;一个工具包有除了一个exe还有不少配置文件及dll库。如果只想给客户发布一个exe&#xff0c;要怎么办呢&#xff1f;使用静态编译&#xff0c;不使用dll&#xff0c;将资源编译到exe中&#xff0c;使用时再释放出来。这种方法比较麻烦&#xff0c;…

ZK-C3595、ZK-C35100、ZK-C40100、ZK-C40110超越离合器

ZK-A3072、ZK-A3080、ZK-A4090、ZK-A3595、ZK-A35100ZK-A40100、ZK-A40110、ZK-A3072、ZK-C3080、ZK-C4090、ZK-C3595、ZK-C35100、ZK-C40100、ZK-C40110单向离合器(超越离合器) MG300M1300MG400、M1400MG500、M1500MG600、M1600MG700、M1700MG750、M1750MG800、M1800MG900、M1…

NLP的tokenization

GPT3.5的tokenization流程如上图所示&#xff0c;以下是chatGPT对BPE算法的解释&#xff1a; BPE&#xff08;Byte Pair Encoding&#xff09;编码算法是一种基于统计的无监督分词方法&#xff0c;用于将文本分解为子词单元。它的原理如下&#xff1a; 1. 初始化&#xff1a;将…

No accessible constructors were found for the type‘XXXXXX‘

abp框架新建了一个模版项目&#xff0c;启动报错。 //报错实例 Autofac.Core.Activators.Reflection.NoConstructorsFoundException:“No accessible constructors were found for the type weigu.Admin.Order.OrderHuizongAppService.”报错意思是没有为’ weight.admin.orde…

骑行运动耳机哪款好?五年骑行爱好者给你分享分享

作为一名骑行达人&#xff0c;我尝试过多种骑行耳机&#xff0c;有入耳式、耳罩式、骨传导等等&#xff0c;但总有一款让我特别满意。直到我遇到了这几款耳机&#xff0c;它不仅音质出色&#xff0c;而且非常适合骑行&#xff0c;让我爱不释手。下面&#xff0c;我将分享一下这…

渗透测试之逻辑漏洞

文章目录 一、支付漏洞1.修改附属值2.多重替换支付3.重复支付4.最小额支付5.最大值支付6.越权支付7.无限制试用8.多线程并发9.支付漏洞思路 二、密码找回漏洞1.本地验证绕过2.利用session重新绑定客户3.去掉验证参数绕过4.总结 三、短信验证码绕过1.短信验证码生命期限内可暴力…

unity 之 Vector 数据类型

文章目录 Vector 1Vector 2Vector 3Vector 4 Vector 1 在Unity中&#xff0c;Vector1 并不是一个常见的向量类型。 如果您需要表示标量&#xff08;单个值&#xff09;或者只需要一维的数据&#xff0c;通常会直接使用浮点数&#xff08;float&#xff09;或整数&#xff08;in…

安卓手机跑 vins slam (2)

既然选择把vins的代码移植到新工程&#xff0c;那么就需要先确定自己电脑的Android Studio的C开发环节是OK的&#xff0c;可以通过创建C的示例工程&#xff0c;能正常跑通做验证。 选择Native C 需要选择用C哪个版本&#xff0c; 这里通过百度搜索&#xff0c;slam 编译需要C 1…

边缘智能初创公司AiM Future成功完成A轮投资

AiM Future是一家总部在韩国专注于边缘AI加速技术的公司&#xff0c;最近完成了A轮融资。在融资环境不是那么友好的情况下&#xff0c;还能完成融资还是很厉害的&#xff0c;可以来了解一下这个公司最新融资情况。以下为官方新闻稿。 新闻亮点&#xff1a; AiM Future 获得数百…

Richtek(立锜)车载PD快充产品常见问题解答—兼具 USB PD 和 UFCS 快充电源完整解决方案

1 我的Switch游戏机能不能用最新的PD协议&#xff1f; 可以的&#xff0c;PD最新协议都兼容旧协议 2 PD协议向下兼容吗&#xff1f; 是的&#xff0c;PD3.1也是向下兼容的 3 UFCS协议目前用什么仪器测试&#xff1f; 谢谢。 目前RICHTEK有协议测试工具&#xff0c;中国UFCS协…

操作系统的体系结构、内核、虚拟机

&#x1f40c;个人主页&#xff1a; &#x1f40c; 叶落闲庭 &#x1f4a8;我的专栏&#xff1a;&#x1f4a8; c语言 数据结构 javaweb 石可破也&#xff0c;而不可夺坚&#xff1b;丹可磨也&#xff0c;而不可夺赤。 操作系统结构 一、操作系统体系结构1.1操作系统的内核1.1.…

一些常用的CSDN 设置命令、插入目录、改变字体颜色等

文章目录 字体颜色显示调节插入图片大小图片居中 字体颜色显示 字体两边加 调节插入图片大小 注意下边多一个600x600&#xff0c;等号前边有个空格 在这里插入图片描述](https://img-blog.csdnimg.cn/5a0d3d2d37cf481db0e1346432be3da1.png [在这里插入图片描述](https://img-…

Win10远程桌面出现“身份验证错误,CredSSP加密数据库修正

1、进入注册表&#xff08;家庭版解决方法&#xff09; winR 进入运行&#xff0c;输入 regedit 打开注册表 2、编辑注册表 打开如下:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System 新建项&#xff1a;CredSSP 再在CredSSP底下新建项&am…

计算机视觉的应用11-基于pytorch框架的卷积神经网络与注意力机制对街道房屋号码的识别应用

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下计算机视觉的应用11-基于pytorch框架的卷积神经网络与注意力机制对街道房屋号码的识别应用&#xff0c;本文我们借助PyTorch&#xff0c;快速构建和训练卷积神经网络&#xff08;CNN&#xff09;等模型&#xff0c;…

嵌入式设计中对于只有两种状态的变量存储设计,如何高效的对循迹小车进行偏差量化

前言 &#xff08;1&#xff09;在嵌入式程序设计中&#xff0c;我们常常会要对各类传感器进行数据存储。大多时候的传感器&#xff0c;例如红外光传感器&#xff0c;返回的数据要么是0&#xff0c;要么是1。因此&#xff0c;只需要一bit就能够存储。而很多人却常常使用char型数…