【$$$$】挖掘Google Slides 中的IDOR

文化   2024-12-29 12:04   韩国  

扫码领资料

获网安教程


Track安全社区投稿~  

赢千元稿费!还有保底奖励~(https://bbs.zkaq.cn)

那是一个懒洋洋的下午,我正在办公室里。午饭后,我坐在桌前,为一场活动演讲制作 Google Slides 演示文稿。当幻灯片制作完成后,我点击了“演讲者视图”来预览内容。为了在活动中进行一场实时问答环节,我上网搜索了一下 Google Slides 是否支持这样的功能。就在这时,我发现了“观众工具(Audience Tools)”。要启用“观众工具”,你需要进入“演讲者视图”,点击“观众工具”,然后点击“开始”。
img
一旦你启动一个会话,系统会生成一个链接,观众可以通过该链接在你演示时实时提问。
img
出于好奇,我复制了该链接并在 Chrome 的隐身模式下打开,想看看观众是如何提问的。任何人都可以无需登录就提出问题!提问框的用户界面看起来有些过时,这激发了我作为漏洞猎人的直觉。我感到有些不对劲,决定深入研究一下。
img
我启动了 Burp Suite 并开始测试。我注意到,每当有人提问时,POST 请求中都会包含一个唯一的 clientId,因此每条评论都有一个唯一的 clientId。这时我意识到——这可能是一个潜在的漏洞。
POST /presentation/d/e/2QANgcCBH8YIx_f5yfCz0l5len6p5BDFsiROx_rcqbOqYgcByotn7pOpaS3kXb3YYffwepoOXCyzanE8ZCIw/submitquestion?includes_info_params=1 HTTP/1.1Host: docs.google.comCookie: Content-Length: 84Content-Type: application/x-www-form-urlencoded;charset=UTF-8Accept: */*Origin: https://docs.google.comReferer: https://docs.google.com/presentation/d/e/2QANgcCBH8YIx_f5yfCz0l5len6p5BDFsiROx_rcqbOqYgcByotn7pOpaS3kXb3YYffwepoOXCyzanE8ZCIw/askquestion?seriesId=d90df436-a253-48a1-8aea-bf5c19761447Accept-Encoding: gzip, deflate, brAccept-Language: en-US,en;q=0.9Priority: u=1, iConnection: keep-alive
seriesId=d90df436-a253-48a1-8aea-bf5c19761447&clientId=e5j7slqfku2&questionText=Test

img
任何人点击该链接时,所有问题都会加载,并且每条评论都会分配一个不同的唯一 clientId
img
然后,我立刻明白了这里可能存在什么样的漏洞。我登录了两个不同的账户,并使用账户1提交了一个问题——“test”。接着,我在另一个浏览器中用账户2复制了账户1的评论的 clientId。在拦截账户2提交问题的请求时,我将其 clientId 替换为账户1的 clientId
img
结果如何?账户1提交的问题被账户2的请求修改了。这证实了我的假设。更令人担忧的是,这种漏洞甚至可以在无需登录的情况下被利用。
img
此时,我感到有些惊讶和震惊,并不断地重新测试,以确认是否是自己哪里出错了。经过多次测试后,我确信这是一个有效的漏洞。
我立即将其报告给了 Google。令我惊讶的是,Google 第二天就关闭了报告,并表示安全风险极低。
img
但我清楚地知道这个漏洞的影响是显而易见的:利用它不需要任何用户交互,也不需要猜测或暴力破解 clientId,因为应用程序本身就提供了 clientId。我礼貌地重申了我的合理观点。Google 随后重新打开了这个问题并确认了漏洞的存在。然而,十天后,报告再次被关闭,理由是由于需要“猜测” clientId,安全风险仍然较低。
img
在这个阶段,我有些失望。Google 的安全团队可能没有正确测试这个漏洞,或者没有观看我提供的 PoC 视频。因为根本不需要猜测 clientId,应用程序本身会自动加载 clientId。我再次清楚地解释了这一点,并详细展示了攻击者如何轻松提取 clientId。最终,Google 的安全团队自己触发了这个漏洞,承认了其影响,并在 S2 严重性类别中给到了漏洞赏金。
img

声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。所有渗透都需获取授权

如果你是一个网络安全爱好者,欢迎加入我的知识星球:zk安全知识星球,我们一起进步一起学习。星球不定期会分享一些前沿漏洞,每周安全面试经验、SRC实战纪实等文章分享,微信识别二维码,即可加入。


白帽子左一
零基础也能学渗透!关注我,跟我一启开启渗透测试工程师成长计划.专注分享网络安全知识技能.
 最新文章