URDev4ever/jwtelescope
GitHub: URDev4ever/jwtelescope
JWTelescope 是一款专为安全测试人员设计的 JWT 解码与安全分析 CLI 工具,能自动检测令牌配置错误并评估风险等级。
Stars: 3 | Forks: 0
JWTelescope
🇺🇸 English |
🇪🇸 Español
🔭 **JWTelescope** 是一款高级的 CLI 工具,用于解码、检查以及对 JSON Web Tokens (JWT) 执行安全分析。它专为 **漏洞赏金猎人、渗透测试人员和开发人员** 设计,旨在快速洞察 JWT 的结构、声明和常见错误配置。
该工具专注于 **只读分析** 和 **风险评估**,使其在侦察和分类阶段使用是安全的。
## ✨ 功能
* 解码 JWT **header** 和 **payload** (Base64URL)
* 漂亮、彩色的终端输出
* 自动检测 **常见 JWT 安全问题**
* 风险评分系统:**低 / 中 / 高**
* 人类可读的时间戳转换 (`exp`, `iat`, `nbf`)
* 检测危险模式:
* `alg: none`
* 缺失或已过期的 `exp`
* 有效期极长的令牌
* 弱或通用的 `aud`
* 可疑的 `kid` 值(路径遍历、可预测性)
* 对称算法混淆风险 (HS256)
* 危险的自定义声明(`admin`、`role`、`scope` 等)
* 外部 `jku` / `x5u` URL
* 用于报告和自动化的结构化 **JSON 输出**
* 支持管道的模式(`--raw`、`--stdin`)
* 最小化依赖(仅限 Python 标准库)
## 🧠 使用场景
* 漏洞赏金侦察
* JWT 错误配置检测
* API 测试期间的令牌分类
* 安全报告(HackerOne / Bugcrowd)
* 学习和理解 JWT 内部机制
## 📦 安装
克隆仓库:
```
git clone https://github.com/urdev4ever/jwtelescope.git
cd jwtelescope
```
使脚本可执行(可选):
```
chmod +x jwtelescope.py
```
要求:
* Python **3.8+**
* 不需要外部库
## 🚀 使用方法

### 直接读取 JWT
```
./jwtelescope.py -r "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
```
### 从文件读取
```
./jwtelescope.py -f token.jwt
```
### 从 stdin 读取(管道)
```
echo "JWT_TOKEN" | ./jwtelescope.py --stdin
```
### 原始 JSON 输出(无颜色,无分析)
```
./jwtelescope.py -r "JWT_TOKEN" --raw
```
### 仅显示安全警告
```
./jwtelescope.py -r "JWT_TOKEN" --only-warnings
```
### 显示风险评分
```
./jwtelescope.py -r "JWT_TOKEN" --score
```
### 生成结构化 JSON 报告
```
./jwtelescope.py -r "JWT_TOKEN" --json > report.json
```
[ ! ] 注意:只有在你将其设置为可执行后,才能使用 ./jwtelescope.py,否则你需要使用:
```
python jwtelescope.py
```
## 🧪 示例输出(使用来自 anytask.com 的已授权 JWT)
* 解码后的 header

* 解码后的 payload

* 签名详情

* 令牌元数据(长度、算法、密钥 ID)

* 常见声明概览

* 带有严重性的安全发现

* 整体风险评分

## ⚠️ 风险评分逻辑(简化版)
| 问题 | 严重性 |
| ----------------------- | -------- |
| `alg: none` | 严重 |
| 缺失 `exp` | 高 |
| 过期的令牌 | 高 |
| 有效期 > 10 年 | 高 |
| 弱 `aud` | 中 |
| HS256 混淆风险 | 中 |
| 危险的自定义声明 | 中 |
| 缺失 `nbf` | 低 |
最终风险等级:
* **低**:主要是信息性问题
* **中**:潜在的安全弱点
* **高**:可能被利用的错误配置
## 📄 JSON 输出结构
```
{
"metadata": {},
"token_info": {},
"header": {},
"payload": {},
"security_analysis": {},
"common_claims": {}
}
```
专为易于导入脚本、CI 流水线或报告而设计。
## 🔒 安全理念
JWTelescope:
* **不修改令牌**
* **不暴力破解密钥**
* **不绕过身份验证**
它是一个 **被动分析工具**,旨在用于合法的安全测试。
## 🚧 免责声明
本工具仅用于 **教育目的和授权的安全测试**。
请始终针对您拥有或已获得明确测试许可的系统进行测试。
## ⭐ 贡献
欢迎提交 Pull request,如果它们:
* 改进 JWT 安全检测逻辑或添加新的 **错误配置模式**
* 增强 CLI 易用性、输出清晰度或报告格式(JSON / 管道工作流)
* 保持工具的 **只读、被动分析理念** 并保持依赖最小化
由 URDev 用 <3 制作
标签:Bug Bounty, JSON Web Token, JWT, JWT配置检测, Token分析, Web安全, 可自定义解析器, 安全报告, 安全测试, 攻击性安全, 文档结构分析, 无依赖, 渗透辅助, 算法混淆, 网络安全, 蓝队分析, 解码器, 路径遍历, 逆向工具, 隐私保护