漏洞总结:未认证凭据哈希暴露 漏洞概述 标题:通过账户验证端点暴露未认证凭据哈希(#5167 修复不完整) 描述: 端点在 JSON 响应体中返回用户的 bcrypt 密码哈希。该端点在 中,不需要任何身份验证。攻击者通过获取有效的验证令牌(tempToken),可以调用此端点获取受害者的密码哈希,用于离线暴力破解。 原因: 这是一个针对安全密码重置补丁(PR #5167)的不完整修复。该补丁正确地在 和 响应中应用了 来剥离凭据哈希,但逻辑上相同的 方法被遗漏了。 影响范围 受影响产品:Flowise (Ecosystem: npm) 受影响版本:<= 3.0.12 严重程度:Medium CWE:CWE-200: 向未授权参与者暴露敏感信息 具体影响: 攻击者获取密码哈希后,可利用 GPU 集群进行离线密码破解。一旦密码被破解,攻击者可以进行凭据填充攻击(Credential stuffing)或日志暴露攻击。 修复方案 在 的 方法中,调用 函数来剥离响应数据中的凭据哈希。 POC 代码 1. 环境准备与注册 在 http://localhost:3000 注册一个账户(例如 admin@test.com / AdminPassword123!)。 2. 设置验证令牌 3. 调用未认证的验证端点 4. 哈希提取与破解 从响应中提取 字段,并使用 hashcat 进行破解: