CVE-2026-23964Mastodon是一个免费的、开源的基于ActivityPub协议的社交网络服务器。CVE-2026-23964漏洞存在于Web推送订阅更新端点,由于对订阅ID的访问控制验证不当,导致任何已认证用户可以通过猜测或获取数字订阅ID来更新其他用户的推送订阅设置。此漏洞影响所有使用Web推送订阅功能的用户,攻击者可利用此漏洞修改受害者的通知过滤策略(如是否过滤非关注者或非关注用户的通知)以及订阅的通知类型,从而扰乱目标用户的推送通知服务。此外,该端点在响应中返回订阅对象,包含推送通知端点URL,可能导致订阅端点信息泄露。攻击者无需特殊权限或用户交互即可发起攻击,但需要拥有有效的认证会话。
漏洞根源在于Web推送订阅更新端点(/api/v1/push/subscription/{id})缺少对订阅ID的所有权验证。Mastodon使用自增数字ID作为订阅标识符,攻击者可以通过暴力猜测或枚举的方式获取有效的订阅ID。由于端点仅验证用户是否已登录,而未验证订阅ID是否属于当前用户,导致IDOR漏洞产生。利用此漏洞的攻击流程:首先攻击者需要注册账号并登录获取有效会话;然后访问自己的推送订阅获取订阅ID;通过遍历或猜测订阅ID范围,发送更新请求到目标订阅的端点;成功后可修改目标用户的通知策略和通知类型设置。服务端响应包含订阅对象,泄露推送端点URL但不会暴露密钥对。攻击者可通过自动化脚本批量尝试不同订阅ID来锁定目标用户。