type
status
date
slug
summary
tags
category
icon
password

0x00 JWT简介

json-web-token简称java web令牌,也称作JWT,是一种可以实现跨域身份验证身份的方案,jwt不加密传输数据,但能够通过数据前面验证数据的未被篡改。
JWT的组成由头部header,声明Claims,签名Signature一起组成一个完整的JWT令牌,其中头部和声明由base64加密传输,签名由头部的特殊加密方式加密(例如常见值用 HS256(默认),HS512 等,也可以为 None。HS256表示 HMAC SHA256。)三个部分以英文句号.隔开。
JWT 的内容以 Base64URL 进行了编码
notion image
JWT 固定参数有:
iss:发行人
exp:到期时间
sub:主题
aud:用户
nbf:在此之前不可用
iat:发布时间
jti:JWT ID 用于标识该 JWT

0x01 JWT攻击点及检测

攻击点:
1)数据伪造:无密钥,攻击者通过修改声明信息达到绕过
2)数据伪造:有密钥:修改相应数据后重新加密传输
3)签名爆破:利用字典对签名爆破
检测:
1)javaweb应用
2)Authorization
3)数据包存在JWT格式传输

0x02 JWT实战-2020-虎符网络安全赛道-Web-easy_login

题目主干已经存在提示,细心的师傅思路已经打开
notion image
注册登录抓取数据包,发现JWT传输
notion image
将jwt解密观察
notion image
登录进去查看到flag没用权限,需要admin权限
notion image
思路就打开,我们需要伪造admin的JWT传输即可
伪造数据头,将加密方式修改为none即为空,注意格式
notion image
修改声明,将secretid云 API 密钥修改为空值 "[]",将账户修改为amdin
notion image
重新组装JWT令牌,将等于号转化为点,不需要签名,
notion image
替换JWT令牌发送
notion image
登录后再次抓包获取flag
notion image
重点实在JWT的数据伪造修改上面,以及注意修改格式问题
渗透测试-信息收集打点(基础篇)BurpSuite超详细使用教程
告白
告白
一个普通的干饭人🍚
公告
type
status
date
slug
summary
tags
category
icon
password
🎉告白的个人日常博客🎉
-- 关注微信公众号 ---
Gaobai文库
本站内存在文章缺失,框架组件问题待解决
原博客kxsy.work文章已在慢慢迁移本站
渗透时长两年半的个人练习生
-- 感谢您的支持 ---
👏欢迎阅览👏