挖洞经验 | 从Youtube的视频ID和频道ID中发现漏洞
字数 1550 2025-08-18 11:38:56
YouTube Studio平台漏洞分析与利用教学文档
1. 漏洞背景
YouTube Studio平台(https://studio.youtube.com/)是YouTube的创作管理中心,用户可以通过该平台管理账号、上传视频、分析数据以及修改视频设置等。本文档详细分析该平台中发现的两种重要漏洞。
2. 漏洞一:任意YouTube视频属性修改
2.1 漏洞描述
在YouTube Studio的批量视频编辑功能中,存在一个服务器端验证缺失漏洞,允许攻击者修改任意YouTube视频的属性设置。
2.2 漏洞位置
POST请求端点:
https://studio.youtube.com/youtubei/v1/creator/enqueue_creator_bulk_action
2.3 漏洞原理
-
当用户使用批量编辑功能时,系统会发送包含以下关键参数的JSON请求:
videos参数:包含videoIds数组,指定要修改的视频ID- 其他参数:如标题、描述、标签、公开范围等修改内容
-
漏洞关键点:
- 服务器未验证请求中的视频ID是否确实属于发起请求的用户
- 攻击者可替换
videoIds数组中的ID为任意视频ID
2.4 漏洞利用步骤
- 登录YouTube Studio平台
- 进入"视频(Videos)"管理界面
- 选择任意自己的视频进入批量编辑模式
- 使用浏览器开发者工具捕获网络请求
- 修改捕获到的POST请求中的
videoIds数组 - 重新发送修改后的请求
2.5 可利用修改项
- 将视频设置为私有(间接关闭频道)
- 修改视频描述(添加宣传内容或恶意链接)
- 修改视频标题
- 修改视频标签
- 修改评论设置
2.6 漏洞影响
- 可导致目标频道视频无法公开观看
- 可在高流量视频中添加宣传或欺诈内容
- 可添加虚假"打赏"功能进行获利
2.7 漏洞修复时间线
- 2018.11.11 漏洞上报
- 2018.11.12 确认为有效漏洞
- 2018.11.13 漏洞修复并发放奖励
3. 漏洞二:获取用户私享播放列表
3.1 漏洞描述
通过YouTube Studio的视频编辑界面,可以获取任意用户的未列出(unlisted)播放列表,从而访问其私享视频资源。
3.2 漏洞位置
POST请求端点:
https://studio.youtube.com/youtubei/v1/creator/list_creator_playlists
3.3 漏洞原理
- 当用户编辑视频时,系统会发送包含
channelId参数的请求 - 服务器未验证
channelId与当前用户的所属关系 - 当目标频道同时包含PUBLIC(公开)和UNLISTED(私享)播放列表时,可获取全部列表
3.4 漏洞利用步骤
- 获取目标用户的频道ID
- 登录YouTube Studio平台
- 进入任意视频编辑界面
- 使用开发者工具捕获网络请求
- 修改请求中的
channelId为目标频道ID - 分析返回的响应获取播放列表信息
3.5 漏洞影响
- 可访问用户的私享(unlisted)视频
- 绕过YouTube的隐私保护机制
- 私享视频通常包含敏感或未公开内容
3.6 关于Unlisted视频
- 不会出现在YouTube搜索结果中
- 不会显示在频道页面
- 仅能通过直接链接访问
- 常用于私下分享内容
3.7 漏洞修复时间线
- 2018.11.12 漏洞上报
- 2018.11.13 确认为有效漏洞
- 2018.11.30 发放奖励
- 2018.12.12 漏洞修复
4. 漏洞挖掘经验总结
- 重点关注管理后台的功能接口
- 检查服务器端对用户权限的验证机制
- 注意批量操作功能中的ID参数
- 分析编辑功能中的关联ID参数
- 测试参数替换的可能性
- 关注隐私相关功能的实现方式
5. 防御建议
对于开发类似平台:
- 所有操作必须进行严格的权限验证
- 批量操作功能应验证每个资源的所属关系
- 隐私数据访问需要额外验证机制
- 实现服务器端的完整请求验证
- 对敏感操作实施多因素验证
对于平台用户:
- 定期检查视频设置
- 监控不寻常的描述或标题变更
- 谨慎分享私享视频链接
- 关注YouTube的安全公告