当前位置: 首页 > article >正文

JWT安全:接收无签名令牌.【签名算法设置为none绕过验证】

JWT安全:假密钥【签名随便写实现越权绕过.】

JSON Web 令牌 (JWT)是一种在系统之间发送加密签名 JSON 数据的标准化格式。理论上,它们可以包含任何类型的数据,但最常用于在身份验证、会话处理和访问控制机制中发送有关用户的信息(“声明”)。
与传统会话令牌不同,服务器所需的所有数据都存储在客户端的 JWT 本身中。这使得 JWT 成为高度分布式网站的热门选择,因为用户需要与多个后端服务器无缝交互。

目录:

JWT安全:假密钥【签名随便写实现越权绕过.】

实战案例:签名随便写可以绕过【实现越权】

1. 使用普通用户进行登录.

2. 修改JWT数据中的信息,实现越权.

(1)找一个刚刚登录的数据包,然后发送到Repeater.

(2)修改第一个地方,访问管理员页面.

(3)修改第二个地方进行测试.

(4)把签名算法设置为none

3. 实战中的应用测试.


JWT 格式:头【签名的算法】.具体内容【修改字段】.签名

漏洞的产生:开发为了省事,没有按规定的去走,所以产生了漏洞.


理解:把cookie字段变成了这个JWT字段,用这个去验证用户身份.

(1)使用base64编码进行录进来的

(2)三个字段是使用用点 . 分隔

(3)字段最后面的签名是用来验证用户信息的


Burp Suite 插件的安装.


实战案例:签名随便写可以绕过【实现越权】

靶场链接:https://portswigger.net/web-security/jwt


1. 使用普通用户进行登录.


2. 修改JWT数据中的信息,实现越权.【从普通用户改个管理员用户】

(1)找一个刚刚登录的数据包,然后发送到Repeater.


(2)修改第一个地方,访问管理员页面.【把这个修改为管理员的页面URL】


(3)修改第二个地方进行测试.【把普通用户直接修改为管理员用户】【administrator】

注意:这里就可以发送看看能不能成功了.【如果能成功就是假密钥】


(4)把签名算法设置为none

解释说明:如果直接登录成功,说明他接收无签名令牌,导致存在漏洞 实现越权。


复制一下JWT的数据包,用来登录管理员账号.


3. 实战中的应用测试.

    

   

   

http://www.lryc.cn/news/2397076.html

相关文章:

  • 什么算得到?什么又算失去?
  • 白银价格查询接口如何用Java进行调用?
  • FreeBSD 14.3 候选版本附带 Docker 镜像和关键修复
  • NodeJS全栈WEB3面试题——P6安全与最佳实践
  • 「Java教案」算术运算符与表达式
  • Ubuntu开机黑屏现象的常见解决方案详解
  • 黑马程序员C++核心编程笔记--4 类和对象--多态
  • 论文写作核心要点
  • [java]eclipse中windowbuilder插件在线安装
  • Ubuntu20.04服务器开启路由转发让局域网内其他电脑通过该服务器连接外网
  • 【Oracle】TCL语言
  • Windows | 总误按Num Lock?修改注册表永久禁用Numlk键使小键盘一直输入数字
  • 2.RV1126-OPENCV Mat理解和AT函数
  • Go 语言 + Word 文档模板:WordZero 引擎如何让企业文档处理效率提升 300%?
  • unidbg patch 初探 微博deviceId 案例
  • 循序渐进 Android Binder(一):IPC 基本概念和 AIDL 跨进程通信的简单实例
  • 网络安全之Web渗透加解密
  • Leetcode 3567. Minimum Absolute Difference in Sliding Submatrix
  • 【LeetCode 题解】两数之和(C++/Python 双解法):从语法到算法的全面解析
  • 【机器学习基础】机器学习入门核心算法:集成学习(Ensemble Learning)
  • 【TMS570LC4357】之相关驱动开发学习记录1
  • RAG入门 - Retriever(1)
  • pyspark实践
  • 内网怎么映射外网ip? 内网的地址快速映射给外网访问用方法
  • 【深度学习新浪潮】多模态模型如何处理任意分辨率输入?
  • ZYNQ移植FreeRTOS和固化和openAMP双核
  • K-匿名模型
  • UE5蓝图暴露变量,在游戏运行时修改变量实时变化、看向目标跟随目标Find Look at Rotation、修改玩家自身弹簧臂
  • C语言进阶知识:深入探索编程的奥秘
  • 机器视觉2D定位引导一般步骤