大數(shù)據(jù)告訴你什么樣的密碼最牢靠!

責(zé)任編輯:editor005

2015-11-11 13:54:24

摘自:199IT

盡管存在爭議,但你可以想想,一個密碼破解高手可以輕易將一個數(shù)字或幾千個數(shù)字添加到字典里或者蠻力破解方式中

對于密碼,我們已經(jīng)知道了不少。比如,多數(shù)密碼短小、簡單、且容易破解。但我們對一個人選擇某個密碼的心理原因卻所知甚少。在本文中,我們分析了包括企業(yè)CEO、科學(xué)家在內(nèi)的1000萬人們的密碼選擇,來看看密碼背后所揭示的意義。

1000萬個小窗口

你腦海中浮現(xiàn)出的第一個超級英雄是誰?從1到10你首先會想到哪個數(shù)字?最后一個問題,你會選擇哪種鮮艷的色彩?快速想出答案,然后將它們組合成一個短語。

現(xiàn)在,輪到我們猜測這個密碼了。

是Superman7red?不對不對。那是Batman30range?如果我們都能正確地猜到每個問題的答案,那是因為人類是可預(yù)知的。而這恰恰就是密碼存在的問題。我們在選擇這些密碼時確實很小心謹(jǐn)慎,但跟已成產(chǎn)業(yè)規(guī)模且特意構(gòu)建的密碼破解軟件相比,未免小巫見大巫。比如HashCat可以在一秒時間內(nèi)猜測30萬次密碼(次數(shù)取決于哈希方式),因此即使你的密碼是Hawkeye6yellow,也遲早會被破解。

密碼之所以經(jīng)常會被猜中,是因為我們很多人會想到顯而易見的詞語、數(shù)字并將它們簡單組合。本文探索了這個概念,并借此了解當(dāng)人們以特定的順序組合詞語、數(shù)字及(希望如此)符號時,大腦是如何運作的。

我們首先選擇了兩個數(shù)據(jù)集進行分析。

兩個數(shù)據(jù)集,幾個說明

第一個數(shù)據(jù)集我們稱之為“Gmaildump”,它是2014年9月出現(xiàn)在俄羅斯比特幣論壇上的500萬個憑證。這些憑證似乎是Gmail賬戶(有一些是Yandex.ru),但經(jīng)過進一步的調(diào)查發(fā)現(xiàn),雖然其中的郵件地址多為有效的Gmail地址,但大多數(shù)明文密碼或者老舊不再被使用或者密碼跟郵箱地址不匹配。但WordPress.com重設(shè)了10萬個賬戶并表示還有60萬個賬戶存在風(fēng)險。盡管這些數(shù)據(jù)是在幾年時間里通過多種方式從多個地方收集起來的密碼,但對于我們的學(xué)術(shù)研究來講,絲毫沒有問題。而且這些密碼曾被Gmail賬戶擁有者使用過,即使不是他們自己在使用,并且鑒于98%的密碼不再有效,我們可以安全地一探究竟。

我們利用這些數(shù)據(jù)集回答一些人口統(tǒng)計學(xué)的問題(尤其是與密碼選擇有關(guān)的性別及年齡問題)。我們從500萬個郵件地址中提取出了包含名字及出生日期的地址。比如,如果郵件地址是John.Smith1984@gmail.com,那么我們就會解讀為男性,出生于1984年。我們從500萬個地址中解讀出了48.5萬個性別、22萬個年齡。這時候,我們就應(yīng)該想一個問題,“這些將名字跟出生日期包含在郵件地址中的人會選擇跟別人不同的密碼嗎?”因為從理論上來講答案有可能是肯定的。我們稍后分析。

如下,我們按照出生日期跟性別對用戶進行了分類。

Gmail dump顯示,或者至少是將名字跟/或出生日期包含在郵件地址中的人群多為80后男性。這可能是因為這些被攻陷網(wǎng)站的人口概況導(dǎo)致的。在這個dump中查找包含“+”標(biāo)志(Gmail用戶用來追蹤站點對郵件地址的用途)的地址后發(fā)現(xiàn),大量憑證來自File Dropper、eHarmony、以及Friendster。

我們的多數(shù)結(jié)果是通過第二個數(shù)據(jù)集收集到的,詳情可參見安全咨詢Mark Burnett的網(wǎng)站。這個數(shù)據(jù)集由100萬個密碼組成,它們是在幾年的時間里從網(wǎng)絡(luò)中搜刮到的。

我們不會花費太長時間來說明這個數(shù)據(jù)集的基礎(chǔ)概念,因為之前已有不少人做過很多次這種工作。讓我們看一下這1000萬個數(shù)據(jù)中最為常用的50種密碼。然后我們再討論一些更加有趣的東西。

50種最常用的密碼

我們可以發(fā)現(xiàn),或者早就知道,這些最為常見的密碼都是網(wǎng)站要求人們創(chuàng)建密碼時,瞬間映入腦海的選擇。這些密碼極其容易記住而且對于字典攻擊來說簡直是小菜一碟。不過,現(xiàn)在使用這種密碼的人比之前要少。用戶有點意識到如何設(shè)置強密碼的問題了。比如在文本后添加一兩個數(shù)字就會讓強度提高,是不是?

“我會添加一個數(shù)字讓密碼更安全。”

在這1000萬個密碼中,幾乎有50萬密碼(或42萬密碼,8.4%)以0-99的數(shù)字結(jié)尾。其中超過1/5的人選擇了1?;蛟S他們認為1最容易記住。也可能是因為網(wǎng)站要求在已選詞語之后添加一個數(shù)字做出的即時反應(yīng)。其他最常見的數(shù)字是2、3、12(這里的“12”是1跟2的組合,而不是單獨一個數(shù)字)、7等等。有研究顯示,當(dāng)有人讓你說出1到10中的一個數(shù)字時,多數(shù)人會說3跟7,而且人們似乎對質(zhì)數(shù)的選擇存在偏好。這可能行得通。但也有可能人們是為了用這些個位數(shù)替代曾使用過且還想繼續(xù)使用的密碼,這樣就不會“攻陷”在其他網(wǎng)站上的憑證了。

盡管存在爭議,但你可以想想,一個密碼破解高手可以輕易將一個數(shù)字或幾千個數(shù)字添加到字典里或者蠻力破解方式中。所以,一個密碼的強度就取決于它的熵。

評估密碼熵

簡單來說,密碼的熵越大,強度就越大。熵會隨著密碼長度及字符變化而增加。然而,雖然字符變化確實會影響熵的分值(以及密碼被猜到的難度),但密碼的長度更為重要。這是因為隨著密碼長度增加,數(shù)字的組合方式會呈指數(shù)式增長,因此也就難以被猜到。

Gmail dump中的密碼平均長度為8個字符(如password),而且男性與女性在密碼平均長度的選擇上沒有太大差別。

從密碼熵的角度來講,Gmaildump的密碼平均熵為21.6。而男性跟女性在這一點上的區(qū)別也非常微小。但熵為0的密碼要多于熵超過60的密碼。

這些示例密碼以一兩個不同字符區(qū)分作為熵的范圍。一般來講,熵會隨著長度的變化而變化,不過添加數(shù)字、大寫字母及符號也會增加字符的范圍。

那么,熵是如何計算出來的?方法很多,而且效果各異。不過最為基本的假設(shè)是,只能通過嘗試字符的每種組合才會猜到密碼。但一種更加聰明的方法意識到人類對模式情有獨鐘,所以針對人類的多數(shù)密碼進行了某些假設(shè)。隨后基于這些假設(shè)制定一些猜測密碼的規(guī)則,從從而加快破解密碼的速度。這些方法都很聰明。它們都是由Dan Wheeler創(chuàng)建的Zxcvbn而來。

簡單來說,熵構(gòu)建了一種“知識”,可以知道人們是如何在潛意識中將密碼中的模式包含到一個密碼破解高手需要確定這些模式的猜測中。比如,password的熵為37.6位。但Zxcvbn給出的分?jǐn)?shù)是0(最低最差勁的熵分?jǐn)?shù)),因為密碼破解者所用的詞匯表包含password這個詞。另外Zxcvbn也給另外一些常用密碼打分:第一眼看上去,這些密碼是隨機設(shè)置的,但熵值為0。比如qaz2wsx(在最常用的密碼中排名30)看起來非常具有隨機性是吧?但實際上它是一種鍵盤模式(從一個鍵重復(fù)“走”到另一個鍵很容易)。而Zxcvbn本身也是通過這種模式命名的。

我們從1000萬個密碼數(shù)據(jù)集中提取出了20中最常見的鍵盤模式,但并未包含123456等數(shù)字模式,因為這些模式只是一種鍵盤步法,而且它們已經(jīng)占據(jù)最常用密碼列表的半壁江山,在這里我們來看看更有趣的密碼。

在這20種鍵盤模式中,有19種如你所想的那樣可被猜到,除了最后一個Adgjmptw。你能猜到為什么會把它列到最常用的模式中嗎?

試試智能手機上從2到9的撥號薄,將每個鍵盤數(shù)字對應(yīng)的第一個字母進行組合。這個模式引出一個有趣的問題:隨著更多的人會通過觸摸設(shè)備創(chuàng)建密碼讓選擇某些字符比使用普通的鍵盤更難,密碼選擇是如何改變的呢?

當(dāng)然,對于鍵盤模式來說,尤其是上述鍵盤模式對于密碼破解高手來講并非難事。但多數(shù)人并不會使用鍵盤模式,而是會使用古典的且經(jīng)常不安全的方式即隨機詞語來作為密碼。

現(xiàn)在,你知道為什么文章開頭會猜Batman及Superman了吧:它們是這1000萬密碼數(shù)據(jù)集中最常用的超級英雄名字。但上述列表中反映出的一個重要事實是,有時候很難知道人們在選擇密碼時是基于什么考慮。比如在“顏色”列表中,black有時候可能指的是姓氏Black。為了減少這個問題的困擾,我們在統(tǒng)計上述詞語頻率時,對每個列表都進行了單獨的研究。比如,對于“顏色”來說,只有當(dāng)密碼以顏色開頭并且以數(shù)字或記號結(jié)尾時,我們才會統(tǒng)計進來。這樣就會避免在Alfred中統(tǒng)計red等。通過這種方式意味著我們錯過了很多合法的顏色名稱,但知道上面的列表只包含“限定詞”似乎更好。其它列表中也有各自的規(guī)則。比如,只有當(dāng)所使用的名詞跟動詞出現(xiàn)在我們平常使用的詞語中排名前1000時,我們才會統(tǒng)計它們,否則這些列表會充滿諸如password等名詞以及l(fā)ove等動詞了。

并不是說love這個詞不好,其實人們以驚人的頻率使用它作為密碼的一部分。我們在1000萬個密碼中發(fā)現(xiàn)了4萬次,在500萬個Gmail憑證中也發(fā)現(xiàn)很多。而且通過分析用戶名時,80后及90后使用的次數(shù)要比其他年代的人多。而且女性使用love的頻率是男性的兩倍。

土豪、高端人士們都使用哪些密碼?

Mark Burnett指出,密碼泄露極其嚴(yán)重。我們感到好奇的是,Gmail數(shù)據(jù)是如何確定高級別人群的呢?換句話說,這些被公開的密碼是誰的?我們通過Full Contact的人物API提取出一個郵件地址列表并且通過幾家主要的社交網(wǎng)絡(luò)站點如Twitter、LinkedIn及Google+運行這些地址。此外,它還提供了一些所找到的數(shù)據(jù)點如年齡、性別及職業(yè)。

我們已經(jīng)知道可從Gmaildump中找到一些高級別人士。不過我們沒有想到Full Contact會列出這么多人。

在我們所找到的7.8萬個匹配中,我們發(fā)現(xiàn)了上千名高級別人士。我們選擇了最有名的40位。有幾個點需要注意:

1、我們有意沒有指出這些人的名字。2、公司logo只是表示這些人現(xiàn)在的工作地點,但不意味著他們在之前單位工作時也用了相同的密碼。3、我們無法知道這些密碼最初的用途。可能是他們自己的個人Gmail密碼,但作為File Dropper等網(wǎng)站密碼的可能性更大。因此,許多弱密碼并不意味著這些人現(xiàn)在在工作場所或其他場所也使用這些密碼。

谷歌確認當(dāng)這些列表被公布時,少于2%(10萬)的密碼可能跟所使用的Gmail地址匹配。而且所有受影響的賬戶所有者被要求重設(shè)密碼。換句話說,下面的密碼雖然具有教育意義,但不再被使用。他們可能換了其它密碼,希望這些密碼更安全吧。

然而,如果這些密碼沒有被重設(shè),就更該引起人們的重視了。一些研究指出許多人會在不同的服務(wù)中使用相同的密碼。而且鑒于下表涉及一些CEO、很多記者、一名Justin Bieber及Ariana Grande天才管理公司的身居高位的人士,這個dump可能會引發(fā)一些關(guān)注。希望不會出現(xiàn)這種情況,不過現(xiàn)在這種情況也不會出現(xiàn)了。

從上面密碼中可看到,如果使用離線破解進程,很多密碼都非常容易猜到。最強的密碼屬于一名GitHub開發(fā)人員

(ns8vfpobzmx098bf4co),熵為96,密碼看起來太具有隨機性了,可能是用隨機密碼生成器或密碼管理器生成的。最弱的密碼屬于IBM一名高級管理(123456),看起來太基礎(chǔ),可能是在某個地方隨機注冊設(shè)置的。其它很多人都在復(fù)雜度及簡單度上做了平衡,看得出公司所有人非常重視密碼安全問題。

在文末,我們來說說幾個很有趣的點:

美國國務(wù)院處長使用linco1n(Lincoln)作為密碼,而Huffington Post的作家使用trustno1作為密碼。更有意思的是,這么多高級別人士所做的跟我們當(dāng)中的很多人沒有什么兩樣:將姓名、出生日期、簡單詞語跟一組數(shù)字組合成一個糟糕的密碼。但我們覺得這也是情有可原的。即使是美國總統(tǒng)奧巴馬最近也承認自己曾使用1234567作為密碼。熵值更高的一個密碼是PoTuS.1776。然而對于一個聰明的破解者來說,這也有點太顯而易見了。

那么,你的密碼如何呢?在讀這篇文章的時候,你可能會想到自己,“會有人猜到我的網(wǎng)上銀行密碼、郵件密碼或博客密碼嗎?”如果你使用的是大的郵件提供商如Gmail,你不必太擔(dān)心你的密碼會被蠻力破解。Gmail會立即阻止非法嘗試行為。你的在線銀行密碼也得到了類似的保護。但是如果你有博客,情況就復(fù)雜了,因為攻擊者會有更多方法來入侵,所以每個人都應(yīng)該采取主動防御措施。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號