首页 > 其他分享 >Nacos未授权访问

Nacos未授权访问

时间:2024-09-19 21:19:39浏览次数:9  
标签:用户 登录 jwt nacos Nacos 访问 token key 授权

Nacos未授权访问

靶机地址: 192.168.142.112
在这里插入图片描述

知识点

Jwt(json web token): 定义了一种紧凑的、自包含的方式,用于作为JSON对象在各方之间安全地传输信息。该信息可以被验证和信任。

当用户通过服务端的校验之后,服务端会根据用户的用户名和密码去查用户的信息,例如:用户id、用户手机号等,再通过jwt的方式生成一个token,token中包含用户的信息,下次用户的所有请求都会带着token到达服务端,服务端从token里解析出来用户的信息,基于这些信息,认证用户成功登录后再执行之后的业务。

Jwt由Header头部、Payload负载、Signature签名组成,它们之间用圆点(.)连接。

使用https://jwt.io/可以对jwt信息进行解码
在这里插入图片描述

Nacos访问认证绕过:

cat nacos/conf/application.properties|grep “key”在application.properties文件中查找key
在这里插入图片描述
该key值固定,在nacos使用jwt构造认证token,使用HS256算法,把配置文件中nacos.core.auth.plugin.nacos.token.secret.key的默认值当作私钥生成Signature,将用户名和时间戳写到jwt token里,所以可以在登录时对accessToken进行伪造,从而实现访问认证绕过

复现

搭建好本地靶场,访问http://192.168.142.112:8848/nacos/#/login登录界面(8848为nacos服务默认端口)

在这里插入图片描述

使用用户名nacos、密码nacos进行登录,使用burp获取数据包,成功登录后会返回Authorization,accessToken作为用户登录凭证
在这里插入图片描述

复制保存Authorization:Bearer

eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTY5NDYxNzAzNX0.g8rgWYSiZgwhMgfyLHqLl4EUdipye9hAwHrWocJqsjA

退出nacos登录,使用任意账户密码试图登录,抓包修改数据
在这里插入图片描述

在数据包加上Authorization后,点击转发,成功登录,且为超级管理员权限
在这里插入图片描述

修复方式

  1. 修改配置文件中的nacos.core.auth.plugin.nacos.token.secret.key默认值

  2. 升级nacos到最新版

标签:用户,登录,jwt,nacos,Nacos,访问,token,key,授权
From: https://blog.csdn.net/lza20001103/article/details/142336791

相关文章

  • nas远程联网访问部署方案
    1.注册gemini注册地址 (注册处有咸鱼验证(点击可知是系统负责人),提供提供你的注册名给Gemini,避免被定时删除账号)2.开启NAS的SSH功能以群晖举例,见一下三图,记得应用保存. 3.shell本地连入NAS可以使用xshell,MobaXterm等进行连入,如果没有shell客户端,可以使用以下客......
  • 几何透视图像校正处理软件 DxO ViewPoint v4.12 中文授权版
    DxOViewPoint是DxOLabs旗下一款行业领先级几何透视图像校正处理软件。DxOViewPoint让您可以完全掌控线条、角度和形状。调整透视、修复畸变、改变特定区域形状和校正广角拉伸,以获取精美图像。DxOViewPoint可作为独立应用程序运行,也可作为DxOPhotoLab中的工具面板以及......
  • C#——属性init访问器方法
    init关键字:1.init在属性或索引器中定义访问器方法2.仅在对象构造期间为属性或索引器元素赋值3.init强制实施不可变性(对象一旦初始化,将无法更改)4.如下同时定义get和init访问器classPerson_InitExample{privateint_yearOfBirth;publicintYearOfBirth......
  • oauth2为什么一定要授权码?
    引用网上图片来说明一下理解这个OAuth2的关键是要记住,code是前端持有的,access_token是后端持有的,code是用来一次性换access_token的,access_token才是后续请求资源的认证信息第一种情况:如果在第4步生成的不是code,而是access_token,然后在第5步重定向的时候返回给小兔软件,那么......
  • 易优eyoucms网站报错 \core\library\think\db\Connection.php 第 307 行左右,SQLS
    根据提供的错误信息 SQLSTATE[HY000][1045]Accessdeniedforuser'cs2021'@'localhost'(usingpassword:YES),这个错误表明数据库访问被拒绝了,通常是因为用户名或密码不正确导致的。以下是几个可能的解决步骤:检查数据库连接配置:确认数据库连接配置文件中的用户名和密......
  • OAuth2.0授权-gitee授权码模式
    OAuth2.0授权验证-gitee授权码模式本文主要介绍如何笔者自己是如何使用gitee提供的OAuth2.0协议完成授权验证并登录到自己的系统,完整模式如图1、创建应用打开gitee个人中心->第三方应用->创建应用创建应用后在我的应用界面,查看已创建应用的ClientID和ClientSecret2、对接......
  • 易优eyoucms网站正确上传了模版,也设置好了数据库。网站能正常访问,但提示用户名密码错
    当您正确上传了模板并设置了数据库,但仍然提示用户名密码错误且无法登录后台时,可以尝试以下几个步骤来解决问题:1.检查数据库配置确保数据库配置正确无误。检查数据库配置打开数据库配置文件:通常在config.php或类似文件中。确认数据库连接信息(主机名、用户名、密码、数据库......
  • 高可用!一个基于 SpingBoot + Oauth2 的单点认证授权中心!
    大家好,我是Java陈序员。现代企业中,往往包含多个系统,如果每个系统都需要登录注册,这样的用户体验很不好!这时,就需要设计一个单点登录系统,一次登录处处登录,一次退出处处退出!今天,给大家介绍一个基于SpingBoot+Oauth2的单点认证授权中心,支持分布式高可用!关注微信公众号:【Java......
  • Nacos学习心得
            最近面试发现现在面试不仅要求会用常用的微服务组件,还需要能说出原理和各种什么功能。遂产生了开始学习《Nacos架构&原理》的念头,以下为学习笔记。0.Nacos的一些背景介绍Nacos的前身是阿里的三个产品CongigServer,VIPServer,Diamond。阿里在18年开源Nacos的......
  • BookStack在线文档管理系统本地Docker部署与远程访问详细教程
    ......