# N/A
## 概述
Creativeitem Academy LMS 使用硬编码的默认 JWT 密钥进行令牌签名,导致安全漏洞。
## 影响版本
版本 6.14 及之前版本均存在该问题。
## 细节
应用程序未对 JWT 签名密钥进行合理配置,而是采用固定的默认值,攻击者可利用该已知密钥伪造合法的 JWT 令牌。
## 影响
攻击者可通过伪造 JWT 实现身份验证绕过,进而获得任意用户账户的未授权访问权限。
是否为 Web 类漏洞: 是
判断理由:
| # | POC 描述 | 源链接 | 神龙链接 |
|---|
标题: Critical JWT Secret Vulnerability in Academy LMS v5.13 · suryadina.com -- 🔗来源链接
标签:
神龙速读:
### 关键信息
#### 漏洞概述
- **漏洞类型**: JWT Secret Vulnerability
- **受影响版本**: Academy LMS v5.13及以下版本
- **CVE编号**: CVE-2020-8749
- **CVSS评分**: 9.3 (Critical)
#### 技术细节
- **受影响组件**: `lms/application/libraries/TokenMonster.php`
- **默认密钥**: `academy-lms-xxxxxxxxxx`
- **漏洞描述**: 应用程序使用硬编码的默认JWT密钥进行签名,导致攻击者可以生成有效的JWT令牌。
#### 影响
- 攻击者可以:
- 获取源代码并发现默认密钥
- 为任意账户生成有效JWT令牌
- 完全绕过认证机制
- 提权至管理员权限
- 访问敏感用户数据和系统功能
#### 证明概念
- 提供了Python代码示例,展示如何使用默认密钥生成伪造的JWT令牌。
#### 受影响端点
- 所有依赖JWT认证的API端点,包括:
- 用户认证端点
- 课程管理API
- 管理员功能
- 支付处理API
#### 缓解措施
- **立即行动**:
- 立即更改JWT密钥为加密安全值
- 使所有现有JWT令牌失效
- 强制所有用户重新认证
- **推荐实现**:
- 使用环境变量存储密钥
- 实施JWT密钥轮换
- 考虑使用RSA256与公私钥对
- 实施适当的令牌过期策略
#### 时间线
- **发现日期**: 2020年7月
- **厂商通知**: 2020年7月20日
- **CVE请求提交**: 2020年7月20日
- **公共披露**: 2020年7月20日
#### 参考资料
- [Academy LMS官方文档](#)
- [JWT安全最佳实践](#)
暂无评论