写点什么

Stack Overflow 泄露用户电子邮件信息

  • 2020-02-24
  • 本文字数:1224 字

    阅读完需:约 4 分钟

Stack Overflow泄露用户电子邮件信息


作为全球最知名的开发者问答网站,Stack Overflow发生信息泄露事件,涉及大多数用户。


2 月 23 日,一位名叫 Gajus Kuizinas 的开发者在 Medium 上披露,Stack Overflow 用户的电子邮件信息被泄露。


据了解,Gajus Kuizinas 正在为开发者服务工具GitSpo开发一个“Google Alerts”。他写道,“虽然我没彻底搞清楚它是什么,但是 GitSpo 增长迅速,并受到开发者们的欢迎。”具体说来,GitSpo 从不同的社交网络收集数据,比如 Twitter、LinkedIn、Stack Overflow 和 GitHub 等。一旦有开源项目在一些网站被提及,比如 Twitter、Reddit 和 Hacker News,GitSpo 就会给开发者发送提醒。


在这个事情推进过程中,Gajus Kuizinas 注意到一件事:Stack Overflow 默认用户配置文件正使用 Gravatar。


作为一项在全球范围内使用的头像服务,Gravatar允许你将头像和电子邮件相关联。只要你在 Gravatar 的服务器上传自己的头像,那你到任何一个支持 Gravatar 的网站留言时,这个网站都会根据你提供的电子邮件地址为你显示匹配的头像。


通过对用户的电子邮件进行哈希处理,它能找到用户头像,比如 Gajus Kuizinas 的电子邮件地址是 gajus@gajus.com,任何知道这个电子邮件的人都可以生成一个 Gravatar URL,然后加载 Gajus Kuizinas 的头像。


如下图所示(Gravatar URL):



据了解,这项服务于 2007 年推出,并在某种程度上快速增长,因为它是 WordPress 站点留下评论的默认头像。这个主意非常聪明,仅上传一次头像,你就可以在许多地方使用。



一旦更新你的 Gravatar,你的头像就会在所有网站获得更新。


Gajus Kuizinas 指出,不幸的是,它们选择的哈希算法(MD5)并不是特别安全。早在 1996 年以后,MD5 就被证实存在弱点,可以被破解。2004 年,证实 MD5 算法无法防止碰撞,因此不适用于安全性认证。


MD5 算法会通过哈希处理电子邮件,最后生成 Gravatar 图像,比如 md5(‘gajus@gajus.com’) === ‘74a5bd659b3a8af09a336a932eebe3b1’。Gajus Kuizinas 认为,即使在那时,使用 MD5 来散列 private data 依然是个糟糕的选择。现在,有包含超过 90 万亿个哈希值的 MD5 数据库。


为验证问题,Gajus Kuizinas 进行了一场实验。他选择 1000 个 Stack Overflow 配置文件的哈希值,并使用一种 MD5"解密“服务,结果该服务成功分析出 721 封电子邮件,成功率高达 72%。



Gajus Kuizinas 评论,“然而,有趣的用例不是获取电子邮件。众所周知,很多开发者的电子邮件地址是半公开的,比如可以从 GitHub 上找到开发者的电子邮件地址。由于 GitSpo 拥有所有公共 GitHub 用户和存储库的索引,因此我能添加关联的电子邮件地址,对其进行哈希处理,并与 Stack Overflow 匹配,最后成功找到 1000 个。“


而更严重的问题在于,Stack Overflow 不是唯一使用 Gravatar 服务的网站,还有一些其他知名网站,比如 WordPress、HootSuite、TechDirt 和 Disqus 等。


最后,作者提醒,最好不要依赖 Gravatar 作为新用户加入系统的服务。


参考文章:


Stack Overflow is leaking user emails


2020-02-24 15:362702
用户头像
万佳 前InfoQ编辑

发布了 677 篇内容, 共 378.1 次阅读, 收获喜欢 1805 次。

关注

评论

发布
暂无评论
发现更多内容

芯片破壁者(二十二):政府与半导体间的“美国往事”

脑极体

“懂行人”携手互联网,创造未来无限可能

一次资源泄露问题排查纪录

AI乔治

Java 架构 JVM 内存泄漏

2020年第11期公有云性能评测:盛大云-华东实现“三冠”,百度云虎视眈眈

博睿数据

百度云 腾讯云 阿里云 公有云 华为云

ROS 机器人操作系统进阶实战

Geek_3cc3ec

Python 人工智能 学习 ROS

官方活动 | 日更挑战(初阶)——七日更,挑战百元京东E卡!

InfoQ写作社区官方

七日更 热门活动

A Guide for Accidental Project Managers

Geek_ed0696

pmp project manager role of PMP PMP Certification greycampus

盘点2020 | 技术圈里的这些热名词

xcbeyond

微服务 DDD 金融科技 新基建 盘点2020

LeetCode题解:127. 单词接龙,BFS+生成所有可能新单词再匹配,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

太狠了阿里技术专家撰写的电子版JVM&G1 GC实战,颠覆了传统认知

Java架构之路

Java 程序员 架构 面试 编程语言

云智一体:攀登2021智能经济新山峰

脑极体

工业区块链正在改变什么?

CECBC

环保

在算力“沃土”上,种植互联网下一个奇迹十年

看完这份文档我吊打了BATJ面试官,他问的我全都会:Spring+逻辑算法+MySQL+Java+Redis+并发编程+JVM+RabbitMQ等

Java架构之路

Java 程序员 架构 面试 编程语言

升级redhat6的yum源替换为centos源

Bruce Xiong

校园恋爱新技能:智慧琴房恋爱助攻手册

IoT云工坊

物联网 API sdk 智慧琴房 智慧校园

架构师训练营第 1 期第 13 周作业

好吃不贵

极客大学架构师训练营

免费分享!GitHub标星15k的Java编程思想最新中文版,肝了一周整理成1539页的PDF文档!

Java架构之路

Java 程序员 架构 面试 编程语言

字节跳动总监亲自整理,在知乎高达5716赞的Java开发手记。

Java架构之路

Java 程序员 架构 面试 编程语言

synchronized 是王的后宫总管,线程是王妃

Java架构师迁哥

Techo | 大数据专场报名盛启!12月20日欢迎莅临!

腾讯云大数据

大数据 数据仓库

【变与不变】架构中的边界划定

soolaugust

编程 架构 设计

Superset 助力企业级大数据 Ad-hoc 查询

麻婆豆腐没麻婆

数据分析 Apache Superset BI数美

9年技术面试官讲解:计算机专业应届生怎样写简历

Java架构师迁哥

ES6中的Promise和Generator详解

程序那些事

新特性 ES6 Promise 程序那些事 Generator

朋友不讲武德急催我给他Java干货教程,我劝他耗子尾汁并丢给他一份GitHub上标星115k+的Java教程,他看了之后连忙向我道歉!

Java架构之路

Java 程序员 架构 面试 编程语言

架构师训练营第 1 期第 13 周学习总结

好吃不贵

极客大学架构师训练营

Java 并发编程:volatile能否保证数据的同步

李尚智

Java Java并发

程序员什么时候就该辞职了?

Java架构师迁哥

你确定你会算数吗?老大说:你连这个都不知道还敢面试电商公司?

小Q

Java 学习 编程 程序员 面试

游戏服务器多钱一个月呢?

德胜网络-阳

Stack Overflow泄露用户电子邮件信息_安全_万佳_InfoQ精选文章