🟣 JWT Lab

JSON Web Token 安全漏洞

⚠️ 免责声明

本实验仅供学习目的,请勿将所学知识用于非法用途!

什么是 JWT?

JWT (JSON Web Token) 是一种用于身份验证的令牌格式,由三部分组成:

Header.Payload.Signature

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.
eyJ1c2VyIjoiYWRtaW4iLCJyb2xlIjoiYWRtaW4ifQ.
SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

Header

算法和类型
{"alg":"HS256"}

Payload

用户数据
{"user":"admin"}

Signature

签名验证
HMAC(header.payload)

📚 实验列表

🔓

实验一:算法混淆攻击 (alg: none)

将算法改为 none,绕过签名验证

高危
🔑

实验二:弱密钥爆破

使用字典爆破弱密钥,伪造任意 Token

中危
👁️

实验三:敏感信息泄露

JWT Payload 只是 Base64 编码,不是加密

低危

🔍 JWT 结构解析

重要:JWT 的 Header 和 Payload 只是 Base64 编码,不是加密

任何人都可以解码查看内容,签名只保证数据未被篡改。

// 解码 JWT
const [header, payload, signature] = token.split('.')
console.log(JSON.parse(atob(header)))   // 明文 Header
console.log(JSON.parse(atob(payload)))  // 明文 Payload

🛡️ 安全建议

← 返回首页