*本文原創(chuàng)作者:泰格實(shí)驗(yàn)室,本文屬FreeBuf原創(chuàng)獎(jiǎng)勵(lì)計(jì)劃,未經(jīng)許可禁止轉(zhuǎn)載
一、背景
MySpace成立于2003年9月,作為比FTI(Facebook、Twitter、Instagram)更早推出的垂直社交平臺(tái),MySpace在過去幾年經(jīng)歷了過山車式的跌宕起伏。在FTI一個(gè)個(gè)大紅大紫時(shí),高層戰(zhàn)略調(diào)整的滯后曾讓MySpace賣來賣去,用戶大批撤離,被國(guó)內(nèi)外意見領(lǐng)袖貼上必死標(biāo)簽。不過,自從4年前Specific Media買了這個(gè)半死不活的社區(qū)后,用了不到三年時(shí)間,將MySpace定位為專注于音樂領(lǐng)域的垂直娛樂社交中心。MySpace不但有新用戶加入,也有大量的老客群的集體回歸。2014年11月的統(tǒng)計(jì)數(shù)據(jù)顯示,MySpace在美國(guó)本土的訪問量達(dá)到5060萬,較上一年增長(zhǎng)575%,對(duì)外宣稱注冊(cè)用戶達(dá)到了10億人次。
2016年6月2息,Myspace公司收到了警告,稱有超過 3.6 億帳戶被泄露,并在暗網(wǎng)論壇上出售,盡管泄露的數(shù)據(jù)是2013 年 6 月 11 日以前用戶數(shù)據(jù)的一部分,但龐大的數(shù)據(jù)量使得此次泄漏很引人注目。泄露的數(shù)據(jù)量遠(yuǎn)遠(yuǎn)超過了近期曝光的1.17億條Linedin用戶數(shù)據(jù),被稱之為有史以來最大規(guī)模的數(shù)據(jù)泄露事件。
Myspace證實(shí)用戶數(shù)據(jù)是被自稱“Peace”的黑客所公布的。LinkedIn 和 Tumblr 數(shù)據(jù)泄露事件的幕后黑手也是這名黑客。Tumblr 的數(shù)據(jù)泄露影響到了超過 6500 萬個(gè)帳戶,但這些密碼是“加鹽的”,而myspace的密碼采用了sha1算法,密碼強(qiáng)度極低。低到什么程度?LeakedSource(被入侵?jǐn)?shù)據(jù)的有償搜索引擎)直接宣稱他們將破解98%到99%的密碼。我們泰格實(shí)驗(yàn)室的小伙伴也想試驗(yàn)一下破解這些密碼的難度,下面記錄了本次破解實(shí)驗(yàn)的全過程,希望能給大家一個(gè)更直觀的感受。
關(guān)于Myspace此次泄露事件的情況請(qǐng)參考Freebuf相關(guān)文章,傳送門:
MySpace出現(xiàn)史上最大規(guī)模數(shù)據(jù)泄露事件
http://www.freebuf.com/news/105589.html
地下黑市以2800美元出售4.27億MySpace賬戶密碼
http://www.freebuf.com/news/105935.html
短訊:黑客公布Myspace泄露數(shù)據(jù)
http://www.freebuf.com/news/108351.html
二、破解過程
7月5日,Myspace泄露的數(shù)據(jù)在網(wǎng)站公布,并提供文件種子下載鏈接。利用種子下載文件之后,解壓前大小15G,解壓后大小35G左右。
在泄露的數(shù)據(jù)中共發(fā)現(xiàn)有效Hash值358,991,641個(gè),去重后116,822,085個(gè)。其中有68,493,651個(gè)賬戶有二級(jí)密碼,本次破解完全出于密碼研究目的,所以只對(duì)116,822,085個(gè)Hash值進(jìn)行了破解。
本次泄露的SHA1算法,是一種快速簡(jiǎn)單的的Hash方法,由它生成的密文(其實(shí)我們更愿意稱之為Hash值),加密強(qiáng)度極低,而且可以同時(shí)大批量破解(這點(diǎn)很重要,如果加了salt,那么批量暴力破解幾乎無法完成,想要破解全部密碼的難度暴增)。本次破解借用了團(tuán)隊(duì)小伙伴學(xué)校實(shí)驗(yàn)室的1臺(tái)改造后的破解專用服務(wù)器,插有4塊顯卡,破解工具給基于Hashcat3.0,對(duì)批量破解進(jìn)行了優(yōu)化,速度提升了10%左右。單個(gè)SHA1破解速度為5739.9 MH/s(每秒可遍歷57億次SHA1Hash值),批量破解最佳條數(shù)為每次4000萬條(此時(shí)破解速度為3504.9MH/s)。預(yù)計(jì)使用3天時(shí)間進(jìn)行破解。
破解過程如下:
第一輪快速破解大量Hash值
由于破解服務(wù)器每次批量破解的最佳條數(shù)是4000萬條(每臺(tái)服務(wù)器的性能和顯卡的性能有區(qū)別,所以最佳條數(shù)需要實(shí)際測(cè)試,并不是一次破解越多的Hash越好,因?yàn)榕科平獾乃俣仁呛痛平釮ash的數(shù)量成反比),所以第一步我們考慮通過字典和小空間暴力破解的方式,盡可能多的破解出Hash值,將待破解的Hash數(shù)量快速降低到4000萬以下,以便后續(xù)進(jìn)行大空間暴力破解時(shí)可以一次完成。
由于Myspace的國(guó)外用戶占絕大多數(shù),因此我們花費(fèi)了5個(gè)小時(shí)的時(shí)間收集并整理國(guó)外常用密碼字典,共整理出了15億條國(guó)外常用密碼字典,再結(jié)合已有的字典,去重后共獲得25億條字典。這里貢獻(xiàn)一個(gè)linux下排序去重字典的小腳本
sort.sh:#!/bin/bashsplit –d –l [條數(shù)] $1 _part$1for file in _part*do{sort $file >sort_$file}&donewaitsort –smu sort_* >$2rm –rf _part*rm –rf sort_*
使用方法:./sort.sh 原始文件 去重后文件
字典破解
字典破解花費(fèi)15分鐘,破解成功46,558,625條Hash值。字典還是猛!!
1-7位全空間暴力破解
剩余的7千萬條Hash值,分兩次進(jìn)行批量破解,每次3500萬條。1-7位全空間有70,576,641,626,495(95+95^2+95^3+95^4+95^5+95^6+95^7)個(gè)組合,批量破解速度3504.9 MH/s,單次耗時(shí)5小時(shí)46分鐘。兩輪破解耗時(shí)11小時(shí)32分鐘,破解成功27,409,679條。
本輪經(jīng)過字典和1-7位全空間暴力破解后,共花費(fèi)12小時(shí)的時(shí)間,破解成功7396萬密碼,占破解總量的63.32%。剩余待破解Hash值4285萬條。
第二輪字典+規(guī)則變換
字典破解變換用來破解和字典中密碼相似的字段,變換種類如下:
本輪字典+規(guī)則變換破解花費(fèi)5小時(shí),破解成功10,155,487條Hash值,占破解總量的8.69%。剩余待破解Hash值3270萬條。
第三輪8-10位密碼部分暴力破解
八位及以上密碼空間對(duì)于我們現(xiàn)有計(jì)算能力來說,無法在短時(shí)間內(nèi)完成全空間的遍歷,因此只能采取各種破解策略,在盡可能短的時(shí)間內(nèi),遍歷高可能性的解空間。
8位–大小寫+數(shù)字部分空間
破解花費(fèi)1個(gè)小時(shí),破解成功222,789條Hash值。
8位–首末位特殊字符
不少人認(rèn)為在密碼的首末位加上特殊字符就無法破解了,我們對(duì)8未首末位包含特殊字符的情況進(jìn)行了試驗(yàn),花費(fèi)9小時(shí)28分鐘,破解成功1,381,237條Hash值,去重后942,022條。
9位–末位特殊字符部分空間
從八位的特殊字符破解規(guī)律我們可以看出,末位特殊字符的概率相對(duì)較大,所以9位采用了此種破解規(guī)律。破解花費(fèi)1小時(shí),破解成功821,828條Hash值。
10位純數(shù)字
破解花費(fèi)3分鐘,破解成功741,575條Hash值。
本輪破解8-10位密碼部分暴力破解花費(fèi)11小時(shí)31分鐘,破解成功272萬條Hash值,占破解總量的2.71%。剩余待破解Hash值2953萬條。
第四輪字典+暴力破解組合
基于原有字典和已破解出的myspace密碼字典,在字典前后分別加上1-3位進(jìn)行暴力破解。
本輪破解花費(fèi)19小時(shí)38分鐘,破解成功1849萬條Hash值,去重后1427萬條。占破解總量的12.22%。剩余待破解Hash值1525萬條。
第五輪字典組合破解
第五輪破解是最后的一輪破解,重點(diǎn)還是利用字典。利用字典兩兩組合進(jìn)行破解,最后對(duì)于第二輪之后破解成功的密碼,再集中進(jìn)行一次規(guī)則變化和暴力組合破解。
字典組合破解
字典混合破解及將兩本字典進(jìn)行疊加混合,如果字典1的內(nèi)容為(A1,A2,……,An),字典2的內(nèi)容為(B1,B2,……,Bn),混合破解輸出則變?yōu)椋ˋ1B1,A1B2,……A1Bn,A2B1,A2B2,……A2Bn……AnB1,AnB2,……AnBn)。
本次混合的兩本字典,一本是根據(jù)近年來泄露的數(shù)據(jù)整理的2000萬高命中率字典,一本是從前四輪破解出的1億條密碼中精選出的200萬條字典。最終花費(fèi)5小時(shí)40分鐘,破解成功2,096,487條Hash。
規(guī)則變換、暴力破解組合
對(duì)第二輪后破解成功的2000萬密碼,利用規(guī)則變換和首末位暴力破解組合的方式進(jìn)行破解,由于時(shí)間關(guān)系,只選擇了成功率較高的幾種組合模式?;ㄙM(fèi)3小時(shí),破解成功1,613,545條Hash。
本輪破解花費(fèi)8小時(shí)40分鐘,破解成功371萬條Hash值。占破解總量的3.18%。剩余待破解Hash值1198萬條。
三、破解總結(jié)
本次破解Myspace泄露密碼共花費(fèi)約3天時(shí)間,對(duì)1億1682萬個(gè)Hash值進(jìn)行了破解,破解成功1億484萬條Hash,破解成功率89.74%。共計(jì)335,275,873個(gè)Myspace用戶密碼被成功破解,占總用戶量的93.39%。
花費(fèi)時(shí)間 | 成功Hash | 成功率 | |
---|---|---|---|
第一輪 | 12小時(shí) | 7396萬 | 63.32% |
第二輪 | 5小時(shí) | 1015萬 | 8.69% |
第三輪 | 11小時(shí)31分鐘 | 272萬 | 2.71% |
第四輪 | 19小時(shí)38分鐘 | 1849萬 | 12.22% |
第五輪 | 8小時(shí)40分鐘 | 371萬 | 3.18% |
總計(jì) | 約3天 | 1億484萬(3億3527萬用戶) | 89.74%(總用戶量的93.39%) |
我們的破解步驟綜合了經(jīng)驗(yàn)、計(jì)算能力和作息時(shí)間,對(duì)于暴力破解我們遵循的一個(gè)原則就是:
如果破解時(shí)間可接受,就全空間破解,否則就要盡可能選擇概率最大的空間,在時(shí)間和空間中選擇一個(gè)平衡。
這篇文章只是想分享一下我們的解密過程,并不是最優(yōu)的破解思路,僅供大家參考,歡迎拍磚,也歡迎研究密碼的小伙伴們與 我們聯(lián)系:root@hashkill.com
附錄:Myspace**TOP100最弱密碼**
本篇文章的主要目的是分享一下密碼破解的過程,所以不會(huì)做很深入的密碼統(tǒng)計(jì),這里只分享一下Top100最弱密。
排名 | 密碼明文 | 出現(xiàn)次數(shù) |
---|---|---|
1 | homelesspa | 855478 |
2 | password1 | 585469 |
3 | abc123 | 569803 |
4 | 123456 | 487919 |
5 | myspace1 | 276906 |
6 | 123456a | 244632 |
7 | 123456789 | 191007 |
8 | a123456 | 165124 |
9 | 123abc | 159691 |
10 | qwerty1 | 141104 |
11 | passer2009 | 130740 |
12 | fuckyou1 | 125298 |
13 | iloveyou1 | 123661 |
14 | princess1 | 114103 |
15 | 12345a | 111809 |
16 | monkey1 | 106417 |
17 | football1 | 101149 |
18 | babygirl1 | 90676 |
19 | love123 | 88755 |
20 | a12345 | 85868 |
21 | iloveyou | 84994 |
22 | jordan23 | 81026 |
23 | hello1 | 80217 |
24 | jesus1 | 78072 |
25 | bitch1 | 78012 |
26 | password | 77902 |
27 | iloveyou2 | 76970 |
28 | michael1 | 75874 |
29 | soccer1 | 74921 |
30 | blink182 | 73144 |
31 | 29rsavoy | 71551 |
32 | 123qwe | 70472 |
33 | angel1 | 70267 |
34 | myspace | 69016 |
35 | fuckyou2 | 68995 |
36 | jessica1 | 67640 |
37 | number1 | 65971 |
38 | baseball1 | 65396 |
39 | asshole1 | 63074 |
40 | 1234567890 | 62853 |
41 | ashley1 | 62607 |
42 | anthony1 | 62293 |
43 | money1 | 61638 |
44 | asdasd5 | 60810 |
45 | 123456789a | 60436 |
46 | superman1 | 59564 |
47 | sunshine1 | 57522 |
48 | nicole1 | 56037 |
49 | password2 | 55754 |
50 | charlie1 | 54430 |
51 | shadow1 | 54397 |
52 | jordan1 | 54001 |
53 | 1234567 | 51126 |
54 | 50cent | 50717 |
55 | password12 | 50546 |
56 | hottie1 | 50503 |
57 | love12 | 49981 |
58 | amanda1 | 48665 |
59 | brandon1 | 48003 |
60 | myspace123 | 47287 |
61 | dragon1 | 47210 |
62 | purple1 | 46511 |
63 | justin1 | 46302 |
64 | xbox360 | 45424 |
65 | 12345678 | 45170 |
66 | chris1 | 45036 |
67 | killer1 | 45013 |
68 | michelle1 | 44226 |
69 | butterfly1 | 44186 |
70 | computer1 | 44173 |
71 | abcd1234 | 44057 |
72 | liverpool1 | 43954 |
73 | andrew1 | 43717 |
74 | daniel1 | 43600 |
75 | chocolate1 | 43596 |
76 | chicken1 | 43050 |
77 | justinbieb | 42552 |
78 | cookie1 | 42178 |
79 | 1qaz2wsx | 41704 |
80 | mommy1 | 41540 |
81 | hannah1 | 41334 |
82 | happy1 | 40789 |
83 | passw0rd | 40647 |
84 | 1password | 40316 |
85 | cheese1 | 40300 |
86 | hunter1 | 40105 |
87 | matthew1 | 39972 |
88 | qwe123 | 39763 |
89 | loveme1 | 39428 |
90 | robert1 | 39427 |
91 | 1234 | 39377 |
92 | fuckyou | 39338 |
93 | asd123 | 39130 |
94 | elizabeth1 | 39122 |
95 | jasmine1 | 39067 |
96 | america1 | 38939 |
97 | tigger1 | 38893 |
98 | taylor1 | 38781 |
99 | mexico1 | 38195 |
100 | qwerty | 38100 |
第一名是個(gè)什么鬼??看知乎的解釋吧。
另外7093d5899fa80c28414219988cc8c89a7b476122這個(gè)Hash值出現(xiàn)次數(shù)高達(dá)158,462次,但是我們沒有破解成功,歡迎提供此Hash線索 。
*本文原創(chuàng)作者:泰格實(shí)驗(yàn)室,本文屬FreeBuf原創(chuàng)獎(jiǎng)勵(lì)計(jì)劃,未經(jīng)許可禁止轉(zhuǎn)載