IDOR in Live Restreams list.json.php Exposes Other Users' Stream Keys and OAuth Tokens 漏洞概述 在 插件中, 存在不安全的直接对象引用(IDOR)漏洞。该漏洞允许任何拥有直播权限的用户通过构造 参数,获取其他用户的直播配置信息,包括第三方平台(YouTube Live、Facebook Live、Twitch)的 RTMP 流密钥 和 OAuth 令牌。 影响范围 受影响版本: <= 29.0 严重程度:中等(CVSS v3 基础分数 6.5/10) 攻击向量:网络 攻击复杂度:低 所需权限:低(仅需普通用户直播权限) 影响: - 凭证窃取:获取其他用户的 RTMP 密钥和 OAuth 令牌。 - 未授权广播:利用窃取的 RTMP 密钥向受害者的 YouTube、Facebook 或 Twitch 频道广播任意内容。 - OAuth 令牌滥用:利用窃取的刷新令牌获取新的访问令牌,实现持久化访问。 - 全量枚举:由于用户 ID 是连续整数,攻击者可遍历所有用户 ID 以收集全平台用户的直播凭证。 修复方案 在 文件中添加所有权检查,强制非管理员用户只能查看自己的直播记录。 建议修改代码: 此修改无条件地将非管理员用户的 强制设置为其自身 ID,无论是否提供了 参数。同时应移除对 的空值检查,防止通过省略参数绕过限制。 POC 代码 Step 2: 攻击者请求受害者直播列表 预期响应(正常行为): 空数据或错误。 实际响应(漏洞利用): 返回用户 ID 1 的完整直播记录,包含敏感信息: