一個(gè)自稱(chēng)CynoSure Prime的黑客團(tuán)隊(duì)聲稱(chēng),在剛剛過(guò)去的10天里已經(jīng)破解了上超過(guò)1100萬(wàn)使用Bcrypt算法的散列密碼。
上個(gè)月黑客攻破了外遇網(wǎng)站Ashley Madison并在網(wǎng)上泄露3700萬(wàn)用戶信息,其中包括了3700萬(wàn)的加密密碼。
這個(gè)散列密碼使用的是Bcrypt算法來(lái)加密密碼,該算法實(shí)行“加鹽”的哈希密碼,以防止被彩虹表破解。現(xiàn)在很多操作系統(tǒng)的密碼都是用Bcrypt函數(shù)作為默認(rèn)的散列算法。
維基百科解釋說(shuō):
“bcrypt是一種自適應(yīng)的算法:隨著時(shí)間的推移,迭代次數(shù)可以增加,使其速度更慢,所以即使BF算法計(jì)算能力不斷地提升,它依然能夠抵抗暴力搜索攻擊,”
團(tuán)隊(duì)如何破解散列密碼?
攻擊本身的想法是暴力破解Ashley Madison帳戶的MD5 tokens而不是Bcrypt算法。
這個(gè)團(tuán)隊(duì)分析了攻擊者在網(wǎng)上泄露的數(shù)據(jù),發(fā)現(xiàn)有個(gè)會(huì)泄露用戶的散列密碼、網(wǎng)站和執(zhí)行電子郵件源代碼的漏洞和MD5散列算法的使用有關(guān)。
他們審查了代碼,發(fā)現(xiàn)一組能加快破解哈希密碼的函數(shù)。
“我們發(fā)現(xiàn)了兩個(gè)有趣的函數(shù),發(fā)現(xiàn)我們可以利用這些函數(shù)來(lái)快速破解bcrypt哈希。”
通過(guò)觀察兩個(gè)不同的函數(shù),他們找到了以最大的速度破解bcrypt散列密碼的方法。他們采取了個(gè)更有效的方法直接攻擊MD5(lc($username)."::".lc($pass))并用 MD5(lc($username)."::".lc($pass).":".lc($email).":73@^bhhs&#@&
^@8@*$")tokens來(lái)代替。
在函數(shù)中的$loginkey變量貌似是用于自動(dòng)登錄,但是他們并沒(méi)有花太多時(shí)間進(jìn)一步調(diào)查。
通過(guò)采用這種策略,該黑客團(tuán)隊(duì)獲得了1120萬(wàn)的密碼。不過(guò)這個(gè)過(guò)程目前僅應(yīng)用于賬戶的部分。