暴力枚举Gmail邮箱地址的新姿势

简介: 本文讲的是暴力枚举Gmail邮箱地址的新姿势,本文将介绍一种比较经典的枚举用户Gmail邮箱地址的新思路,这种思路可以检索成千上万个Gmail邮箱地址。
本文讲的是 暴力枚举Gmail邮箱地址的新姿势

暴力枚举Gmail邮箱地址的新姿势

本文将介绍一种比较经典的枚举用户Gmail邮箱地址的新思路,这种思路可以检索成千上万个Gmail邮箱地址。

我偶然发现一个小故障,允许我大量猜测现有的且可能是未知的Google帐户地址。

免责声明:本文介绍的方法可能只是一个没有进行合理限制的接口,没有什么太花哨的姿势,所以如果你正在寻找一些比较6的0day,请绕道。

 小故障

https://mail.google.com/mail/gxlu这个网址没有对请求次数做任何限制。另外,我注意到,提供不存在的用户或电子邮件会触发来自服务器的不同的HTTP响应标头。例如这里有一个有效的存在的帐户,请求后你会得到如下响应信息:

暴力枚举Gmail邮箱地址的新姿势

如果是一个不存在的账户,请求后响应信息是下图这样的:

暴力枚举Gmail邮箱地址的新姿势

这两个请求的HTTP响应状态码都是204并且都没有响应体,但是一个已经存在的帐户对应的请求,服务器会在响应信息中添加一个Set-Cookie头。

猜测有效地址

有了上面的发现,显然我可以决定利用一个Python脚本来滥用这个接口。

利用的主要思路是查找可能存在的firstname.lastname@gmail.com这样的格式的邮箱地址。

第一步:获取已知名字和姓氏的列表。感谢Facebook2010年的信息泄漏,这些列表都是公开的。另一个想法是使用randomuser.me 生成假的人名,并检查它们是否可以匹配到一个现有的存在的帐户。

这样我就可以猜测一个电子邮箱地址是否有效可用了,每天猜测到的有效电子邮件地址大约有40,000个,而且这还只是一个比较笨拙的未优化过的PoC

为什么会造成隐私威胁?

本文所述的漏洞的问题在于这些邮箱地址中的很大一部分是公众不知道的。人们可能希望让自己的隐私得到更多的尊重,而不是被漫天的垃圾邮件骚扰,对吧?
这个威胁可以轻易的限制暴力猜解:验证码或请求速率限制等等。您已经在大多数的Google服务中获得了这些保护,以洋葱网络中的Google为例,有无处不在的captchas服务验证!

不公开的电子邮件的知名度有多大?

我使用https://haveibeenpwned.com/ 这个网站的API检查了已经被破解过的邮箱地址。这个想法是为了获得这些随机和有效的电子邮件地址在某个泄漏的数据库中的概率。有趣的是结果不是很理想!

只有8.41的测试邮件地址在这些已经被泄露的数据库中找到。还值得注意的是,我所得到的所有的电子邮件现在都不一定是活动的,我的列表中可能包含了一些旧的和未使用的电子邮件地址。以下是电子邮件最有可能发生泄露的网站:

 River City Media垃圾邮件列表(4,98%)
SC Daily Phone垃圾邮件列表(2,63%)
LinkedIn(2,46%)
Dropbox( 1.52%)
MySpace(1,37%)
Adobe(1,33%)
现代商业解决方案(1,14%)
Special K Data Feed Feed垃圾邮件列表(1,01%)
Tumblr(0,73 %)
Last.fm(0,51%)

影响

这个小故障可能被恶意攻击者利用:可能会涉及到这么一些情况——在最好的情况下,可能是游戏营销活动(接收到未经请求的电子邮件),更糟糕的情况是,像平时一样经常发生的网络钓鱼和勒索软件攻击。

Google的答复

02/03/2017 14:54:00UTC + 1):联系Google报告此问题
02/03/2017 17:13:00UTC + 1):Google回复您的报告已被分类,我们正在审核“ 
02/03/2017 17:27:00UTC + 1):Google回复决定将此问题分派到处理类似问题的团队“ 
22/03/2017 00:56:00UTC + 1):Google回复“我们没有忘记你的报告
31/03/2017 16:29:00UTC + 1):Google决定不把此问题归类为一个安全漏洞。




原文发布时间为:2017年4月11日
本文作者:丝绸之路
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。
目录
相关文章
|
3月前
|
Java
leetcode-17:电话号码的字母组合
leetcode-17:电话号码的字母组合
15 0
leetcode-17:电话号码的字母组合
|
6月前
|
C#
关于用户 email 邮件地址是否允许有加号的问题
在电子邮件地址中使用加号 (+) 非常有用。Gmail 以及两个常见的邮件服务器系统 sendmail 和 CommuniGate Pro 将发送地址为“user+tag@mumble.dom”的邮件,就好像它的地址是“user@mumble.dom”一样。 然后,电子邮件地址的“+标签”部分可用于归档邮件和筛选邮件。
33 0
|
10月前
|
机器学习/深度学习 算法 安全
LeetCode - #17 电话号码的字母组合
不积跬步,无以至千里;不积小流,无以成江海,Swift社区 伴你前行。如果大家有建议和意见欢迎在文末留言,我们会尽力满足大家的需求。
|
10月前
leetcode:17.电话号码的字母组合
可以抽象成一个排列组合的问题,题目的意思就是说当输入"23"的时候实际上就是按了两次按键,分别是2和3,然后2对应的是abc,3对应的是def,所以我们只需递归遍历每一种结果即可解决问题。
27 0
leetcode:17.电话号码的字母组合
|
11月前
003. leetcode17. 电话号码的字母组合(001)
1. 哈希表,字符串,回溯
33 0
|
12月前
|
安全 搜索推荐 数据安全/隐私保护
如何在没有电话号码的情况下使用 Gmail
如何在没有电话号码的情况下使用 Gmail
|
Java 测试技术 C++
【LeetCode】 17. 电话号码的字母组合
17.电话号码的字母组合
79 0
【LeetCode】 17. 电话号码的字母组合
leetcode 17电话号码的字母组合
leetcode 17电话号码的字母组合
63 0
leetcode 17电话号码的字母组合
【LeetCode】-- 17.电话号码的字母组合
【LeetCode】-- 17.电话号码的字母组合
【LeetCode】-- 17.电话号码的字母组合
|
数据安全/隐私保护
凯撒密码 (20 分)
凯撒密码 (20 分)
305 0