Categories
程式開發

Stack Overflow洩露用戶電子郵件信息


Stack Overflow洩露用戶電子郵件信息 1

作為全球最知名的開發者問答網站,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的電子郵件地址是[email protected],任何知道這個電子郵件的人都可以生成一個Gravatar URL,然後加載Gajus Kuizinas的頭像。

如下圖所示(Gravatar URL):

Stack Overflow洩露用戶電子郵件信息 2

據了解,這項服務於2007年推出,並在某種程度上快速增長,因為它是WordPress站點留下評論的默認頭像。這個主意非常聰明,僅上傳一次頭像,你就可以在許多地方使用。

Stack Overflow洩露用戶電子郵件信息 3

一旦更新你的Gravatar,你的頭像就會在所有網站獲得更新。

Gajus Kuizinas指出,不幸的是,它們選擇的哈希算法(MD5)並不是特別安全。早在1996年以後,MD5就被證實存在弱點,可以被破解。 2004年,證實MD5算法無法防止碰撞,因此不適用於安全性認證。

MD5算法會通過哈希處理電子郵件,最後生成Gravatar圖像,比如md5(‘[email protected]’) === ‘74a5bd659b3a8af09a336a932eebe3b1’。 Gajus Kuizinas認為,即使在那時,使用MD5來散列private data依然是個糟糕的選擇。現在,有包含超過90萬億個哈希值的MD5數據庫。

為驗證問題,Gajus Kuizinas進行了一場實驗。他選擇1000個Stack Overflow配置文件的哈希值,並使用一種MD5″解密“服務,結果該服務成功分析出721封電子郵件,成功率高達72%。

Stack Overflow洩露用戶電子郵件信息 4

Gajus Kuizinas評論,“然而,有趣的用例不是獲取電子郵件。眾所周知,很多開發者的電子郵件地址是半公開的,比如可以從GitHub上找到開發者的電子郵件地址。由於GitSpo擁有所有公共GitHub用戶和存儲庫的索引,因此我能添加關聯的電子郵件地址,對其進行哈希處理,並與Stack Overflow匹配,最後成功找到1000個。“

而更嚴重的問題在於,Stack Overflow不是唯一使用Gravatar服務的網站,還有一些其他知名網站,比如WordPress、HootSuite、TechDirt和Disqus等。

最後,作者提醒,最好不要依賴Gravatar作為新用戶加入系統的服務。

參考文章:

Stack Overflow is leaking user emails