CVE-2026-22603OpenProject是一款开源的基于Web的项目管理软件。在16.6.2版本之前,该软件存在一个严重的安全漏洞:未认证的密码更改端点(/account/change_password)缺乏与正常登录表单相同的暴力破解保护机制。攻击者可以利用此漏洞,在无需获取任何认证凭据的情况下,对目标用户账户发起无限制的密码猜测攻击。由于该端点没有速率限制、账户锁定或验证码等防护措施,攻击者可以使用密码字典对有效账户进行自动化暴力破解。成功猜测密码后,攻击者可以完全控制目标用户的账户,进而根据该用户的权限级别进行进一步的权限提升,对整个应用系统造成更大范围的安全威胁。此漏洞影响所有未升级到16.6.2版本的OpenProject实例。
漏洞根源在于OpenProject的密码更改功能实现中存在安全设计缺陷。具体来说,/account/change_password端点在处理密码更改请求时,未实施与登录表单相同的安全保护措施。正常登录流程通常包含以下保护机制:1) 失败尝试次数限制;2) 账户锁定策略;3) 验证码或CAPTCHA验证;4) IP级别的速率限制。然而,密码更改端点完全缺少这些防护。攻击者只需要知道目标用户的用户ID或用户名,即可向该端点发送大量密码猜测请求。由于没有任何限制,攻击工具可以自动化地使用常见密码字典对目标账户进行暴力破解。从技术角度看,该端点缺少以下关键安全控制:CSRF令牌验证不足、请求速率限制缺失、账户临时锁定机制缺失、以及异常行为检测机制。攻击者可以通过简单的HTTP请求循环,持续尝试不同密码组合,直到成功为止。