前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >stthjpv:一款针对JWT Payload的安全保护工具

stthjpv:一款针对JWT Payload的安全保护工具

作者头像
FB客服
发布2024-07-10 16:09:52
980
发布2024-07-10 16:09:52
举报
文章被收录于专栏:FreeBuf
stthjpv是一款针对JWT Payload的安全保护工具,这款工具集多种技术和思想于一身,可以通过不断改变相关参数值来防止Payload被解码,以帮助广大研究人员更好地保护JWT Payload的安全性。

除此之外,该工具还能够确保JWT Payload在被解码之后,输出保持一种难以阅读和理解的状态。值得一提的是,该工具的运行速度非常快,具备高性能和开销小的特点。

JWT令牌是什么?

JSON Web令牌(JWT)是一种在通信双方之间传递JSON消息的URL安全方法,这种方式数据量少,且足够安全。与此同时,它也是一种定义在RFC 7519中的标准规范。JWT是一个长字符串,由点分隔成多个部分,每个部分都是Base64 URL编码。

令牌中的数据由哪些部分,取决于JWT的类型(无论是JWS还是JWE)。如果对令牌进行了签名,它将会由三个部分组成:Header、Payload和签名。如果令牌经过了加密处理,那么它将由五个部分组成:Header、加密密钥、初始化向量、密文(Payload)和身份验证标识。JWT最常用的场景,就是作为OAuth和OpenID Connect流中的访问令牌和ID令牌使用,但它们也可以用于不同的目的。

工具特性

该工具旨在增强解码JWT令牌时Payload部分的安全性。一般来说,当我们对JWT令牌(Base64)进行解码时,Payload部分是以明文形式出现的,该工具可以对Payload值进行加密或混淆,以增加他人在解码或分析Payload时的难度。

工具依赖

PyJWT

工具安装

由于该工具基于Python 3.11开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

代码语言:javascript
复制
git clone https://github.com/password123456/some-tweak-to-hide-jwt-payload-values.git

然后切换到项目目录中,使用pip命令和项目提供的requirements.txt安装该工具所需的其他依赖组件:

代码语言:javascript
复制
cd some-tweak-to-hide-jwt-payload-values

pip3 install -r requirements

工具使用

代码语言:javascript
复制
代码语言:javascript
复制
# python3 main.py



- Current Unix Timestamp: 1709160368

- Current Unix Timestamp to Human Readable: 2024-02-29 07:46:08



- userid: 23243232

- XOR Symmetric key: b'generally_user_salt_or_hash_or_random_uuid_this_value_must_be_in_dbms'

- JWT Secret key: yes_your_service_jwt_secret_key



- Encoded UserID and Timestamp: VVZcUUFTX14FOkdEUUFpEVZfTWwKEGkLUxUKawtHOkAAW1RXDGYWQAo=

- Decoded UserID and Hashed Timestamp: 23243232|e27436b7393eb6c2fb4d5e2a508a9c5c



- JWT Token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0aW1lc3RhbXAiOiIyMDI0LTAyLTI5IDA3OjQ2OjA4IiwidXNlcmlkIjoiVlZaY1VVRlRYMTRGT2tkRVVVRnBFVlpmVFd3S0VHa0xVeFVLYXd0SE9rQUFXMVJYREdZV1FBbz0ifQ.bM_6cBZHdXhMZjyefr6YO5n5X51SzXjyBUEzFiBaZ7Q

- Decoded JWT: {'timestamp': '2024-02-29 07:46:08', 'userid': 'VVZcUUFTX14FOkdEUUFpEVZfTWwKEGkLUxUKawtHOkAAW1RXDGYWQAo='}





# run again

- Decoded JWT: {'timestamp': '2024-02-29 08:16:36', 'userid': 'VVZcUUFTX14FaRNAVBRpRQcORmtWRGleVUtRZlYXaBZZCgYOWGlDR10='}

- Decoded JWT: {'timestamp': '2024-02-29 08:16:51', 'userid': 'VVZcUUFTX14FZxMRVUdnEgJZEmxfRztRVUBabAsRZkdVVlJWWztGQVA='}

- Decoded JWT: {'timestamp': '2024-02-29 08:17:01', 'userid': 'VVZcUUFTX14FbxYQUkM8RVRZEmkLRWsNUBYNb1sQPREFDFYKDmYRQV4='}

- Decoded JWT: {'timestamp': '2024-02-29 08:17:09', 'userid': 'VVZcUUFTX14FbUNEVEVqEFlaTGoKQjxZBRULOlpGPUtSClALWD5GRAs='}

工具运行截图

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可协议。

项目地址

stthjpv:

https://github.com/password123456/some-tweak-to-hide-jwt-payload-values

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档