URDev4ever/jwtelescope

GitHub: URDev4ever/jwtelescope

JWTelescope 是一款专为安全测试人员设计的 JWT 解码与安全分析 CLI 工具,能自动检测令牌配置错误并评估风险等级。

Stars: 3 | Forks: 0

JWTelescope

🇺🇸 English | 🇪🇸 Español

jwtelescope

🔭 **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+** * 不需要外部库 ## 🚀 使用方法 jwtelescopehelp ### 直接读取 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 image (31) * 解码后的 payload image (32) * 签名详情 image * 令牌元数据(长度、算法、密钥 ID) image * 常见声明概览 image * 带有严重性的安全发现 image * 整体风险评分 image ## ⚠️ 风险评分逻辑(简化版) | 问题 | 严重性 | | ----------------------- | -------- | | `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安全, 可自定义解析器, 安全报告, 安全测试, 攻击性安全, 文档结构分析, 无依赖, 渗透辅助, 算法混淆, 网络安全, 蓝队分析, 解码器, 路径遍历, 逆向工具, 隐私保护