最近,我从谷歌得到了一个大惊喜,我发现了在谷歌My account的点击劫持漏洞。为此他们奖励我7500美元。太神奇了,对吧?这个漏洞是我在2018年3月找到了,但是当时点击劫持被CSP阻止了,而到了8月份,我找到了绕过它的方法。
事实上,我一直在研究business.google.com子域名,看看相关网站,测试网站特性。当我看着网站请求和响应时。我决定尝试一个愚蠢的事情,编辑参数。当我想管理用户而被重定向到myaccount.google.com时,我发现了一个漏洞。
我看着我可爱的Burp Suite社区版,发现其数据包没有X-fr ame-Option请求头。在这个时候,我使用了Firefox的ESR,我制作简单的HTML只是为了渲染页面。但执行后,但没效果,因为Firefox提示,操作已被CSP阻止,
现代浏览器中CSP阻止了点击劫持
我很难过,我意识到我只是太无聊了。所以,没关系。我把我的研究方向暂时从谷歌移开,直到8月15日。我试着再看看我以前的研究。此时的我更加专注,当然还有黑咖啡。我试图理解代码工作原理。
我意识到CSP规则的生效是从我的请求参数中反映出来的。我在busines.google.com上找到了它,其中host的参数是business.google.com。
URL:https://myaccount.google.com/u/0/brandaccounts/group/101656179839819660704/managers?originProduct=AC&origin=https://business.google.com
响应是:
我想到,host可能是刚从origin参数接收到从business.google.com。所以,我认为只能从business.google.com入手,这是绕过CSP的唯一方法。但是,我尝试将参数origin编辑为https://akugalau.business.google.com,请求通过了!但是,使用子域也是不可能的。嗯,
好了,CSP还挡在在这里,我什么也不能做,对吧?我必须放弃吗?来吧,那是个大公司,我呢?我只是一个带着伤心的故事而悲伤的小女孩!
但是,我还是有很多空闲时间做蠢事,对吧?所以,我只是在origin参数上加了点非法字符。我尝试把某个URL编码放在business.google.com之前。变成这样:
https://myaccount.google.com/u/0/brandaccounts/group/101656179839819660704/managers?originProduct=AC&origin=https://%0d.business.google.com
此时,CSP消失了,w000tttttt!!!!?!@?#!@?3!@?3?
我试着使用if rame,最后成功进行了点击劫持。我的简直不敢相信这件事是真的,我现在真的很幸福。
如果你问我从哪里发现添加了URL编码的逻辑。我也不明白:“我只是幸运的孩子。”
我迅速报告并提交给谷歌。1个月后,我本来认为它只值3133.7美金或5000美金。但是,谷歌给了我更多的赏金,他们给了我7500美元!
我不知道我该说什么。我简直不相信,因为我只是个孩子。
POC代码:
<if rame src=”https://myaccount.google.com/u/0/brandaccounts/group/{your-group-id}/managers?originProduct=AC&origin=https://%0d.business.google.com” width=”1000″ height=”1000″>
攻击场景:
1.管理员在组ID上邀请新用户
2.新用户将接受邀请
3.新用户知道了{组ID}
4.新用户创建一个恶意页面,包括这个点击劫持,以欺骗管理员将新用户帐户加入管理者
5.该组将被用新户接管
视频:https://www.youtube.com/embed/zS7GDcwiJ4c?feature=oembed
同时,感谢所有印度尼西亚的漏洞猎人社区,他们一直在教我很多关于漏洞赏金猎人的事。
原文链接:https://apapedulimu.click/clickjacking-on-google-myaccount-worth-7500/