r3nsi15/Flowise-CVE-2025-58434-PasswordReset
GitHub: r3nsi15/Flowise-CVE-2025-58434-PasswordReset
揭示 Flowise AI 未认证密码重置漏洞并提供 PoC 验证与修复指引。
Stars: 0 | Forks: 0
# CVE-2025-58434 — Flowise AI 未认证密码重置
## 概述
**CVE ID:** CVE-2025-58434
**受影响软件:** Flowise AI
**受影响版本:** <= 3.0.5
**修复版本:** 3.0.6 及更高版本
**严重程度:** 危急
**作者:** r3nsi15
**日期:** 2025
## 描述
Flowise AI 3.0.5 及更早版本在密码重置流程中存在一个破损的身份验证缺陷。`/api/v1/account/forgot-password` 端点在未要求任何形式的先期身份验证或电子邮件验证的情况下,直接在 API 响应中返回临时重置令牌(`tempToken`)。
未认证的攻击者只要知道(或能枚举)一个有效的电子邮件地址,就可以:
1. 通过登录尝试的响应消息确认该电子邮件是否存在。
2. 触发该电子邮件的密码重置请求。
3. 直接从 API 响应中提取 `tempToken`。
4. 使用该令牌为受害者的账户设置任意新密码。
此漏洞完全绕过了预期的基于电子邮件的验证流程,因为令牌是在 HTTP 响应中泄露的,而不是仅发送到账户所有者的收件箱。
## 受影响端点
| 端点 | 方法 | 用途 |
|---|---|---|
| `/api/v1/auth/login` | POST | 用于验证电子邮件账户是否存在 |
| `/api/v1/account/forgot-password` | POST | 触发重置并在响应中泄露 `tempToken` |
| `/api/v1/account/reset-password` | POST | 使用令牌完成密码更改 |
## 概念验证
**文件:** `CVE-2025-58434_POC.py`
### 要求
- Python 3.x
- `requests` 库
```
pip install requests
```
### 用法
```
python3 CVE-2025-58434_POC.py -e -u [-p ]
```
### 参数
| 标志 | 长形式 | 必需 | 描述 |
|---|---|---|---|
| `-e` | `--email` | 是 | 目标账户电子邮件地址 |
| `-u` | `--url` | 是 | Flowise 实例的基础 URL |
| `-p` | `--password` | 否 | 要设置的新密码(默认为 `password`) |
### 示例
```
python3 CVE-2025-58434_POC.py -e victim@example.com -u https://flowise.example.com -p P@ssw0rd!
```
### 预期输出
```
[+] Email victim@example.com exists!
[!] Sending forgot password request
[!] Sending reset password request
[+] Password Changed Successfully to: P@ssw0rd!
```
## 根本原因
密码重置 API 的设计意图是将 `tempToken` 发送到用户的电子邮件,但服务器也直接将其包含在 JSON 响应体中。这意味着任何调用者——无论是否已认证——在发起请求时都会立即收到令牌,使电子邮件投递步骤变得无关紧要。
此外,电子邮件枚举之所以可能,是因为登录端点仅在电子邮件存在时返回特定的错误消息(`"Incorrect Email or Password"`),使得在发起攻击前确认有效账户变得轻而易举。
## 修复建议
- **升级**到 Flowise AI **3.0.6 或更高版本**,该版本会从 API 响应中移除令牌。
- 确保 `tempToken` 仅通过注册的电子邮件地址传输。
- 在忘记密码端点上实施速率限制,以防止滥用。
- 标准化登录错误消息以防止电子邮件枚举(例如,无论电子邮件是否存在,始终返回相同消息)。
## 免责声明
本概念验证仅供 **教育和授权的安全研究用途**。在未获得明确书面许可的情况下,对系统使用该脚本是非法且不道德的。作者及贡献者不对滥用行为承担任何责任。
标签:API安全, CVE-2025-58434, Flowise AI, JSON输出, token暴露, Web安全, 临时令牌泄露, 密码重置, 未认证漏洞, 登录绕过, 端点安全, 蓝队分析, 补丁管理, 认证绕过, 身份验证缺陷, 逆向工具