CVE-2026-22246Mastodon是一个免费、开源的社交网络服务器,基于ActivityPub协议。4.3版本新增了断绝关系通知功能,允许终端用户查看因审核操作而失去的关注者和被关注者列表。然而,该功能在实现时存在严重的访问控制缺陷——API端点在返回断绝关系数据前未正确验证请求者的身份与列表所有者的匹配关系。攻击者只需拥有一个注册的地方用户账号,即可访问系统中任意用户因各种审核操作(如账号封禁、用户主动拉黑等)产生的断绝关系记录。通过遍历不同的断绝事件ID,攻击者能够系统性地收集大量用户关系信息,包括谁关注了谁、谁被谁关注等敏感社交图谱数据。虽然泄露信息中不直接包含被影响账号的名称,但攻击者仍可通过关联分析推断出部分账号信息。此漏洞影响用户隐私和数据保护,违反了最小权限原则。
漏洞根因在于Mastodon 4.3版本中断绝关系通知功能的API端点缺少所有权验证检查。当用户请求获取特定断绝事件的详细信息时,后端代码直接返回该事件关联的所有失去的关注者和被关注者数据,而未验证当前认证用户是否为该断绝事件的所有者。攻击者利用此漏洞的基本步骤如下:首先注册一个普通的本地用户账号;然后访问断绝关系列表的API端点(如/api/v1/pleroma/follow_requests或类似的端点);通过修改事件ID参数遍历访问不同的断绝记录;系统会无差别地返回任意事件ID对应的关系数据。攻击者可以编写脚本自动化这一过程,大规模采集用户关系图谱。需要注意的是,API返回的数据不包含被影响账号的直接名称标识,但会暴露账号的内部ID(account_id),攻击者可通过此ID进行进一步关联分析。修复方案需要在API处理逻辑中添加当前用户身份验证,确保用户只能访问自己触发的断绝事件记录。