驚嘆:六小時(shí)內(nèi)破解Windows密碼的Linux群集
密碼的安全程度,往往取決于可產(chǎn)生的密碼組合是否多樣化,從而延長(zhǎng)密碼破解所需的時(shí)間。但隨著電腦的運(yùn)算能力越來(lái)越高,這種微妙的平衡即將被打破。有技術(shù)人員就開(kāi)發(fā)了一臺(tái)配備25片GPU的Linux群集,可以在6小時(shí)內(nèi)破解Windows密碼。
這臺(tái)Linux群集由Stricture Consulting Group的首席執(zhí)行長(zhǎng)Jeremi M Gosney,在剛于挪威舉行的Passwords^12 conference上發(fā)布。這個(gè)群集由五臺(tái)伺服器組成,採(cǎi)用了以Linux為基礎(chǔ)開(kāi)發(fā)的群工具OpenCL,可以利用25片AMD Radeon顯示卡,成功破解Windows以NTLM加密算法產(chǎn)生的密碼。測(cè)試中使用一個(gè)針對(duì)GPU運(yùn)算優(yōu)化的密碼破解軟體ocl-Hashcat Plus,每秒鐘可以測(cè)試多達(dá)3500億個(gè)密碼組合。除了「暴力式破解」外,還可展開(kāi)其他形式的攻擊,例如利用內(nèi)置字典作為密碼組合的「字典式攻擊」。
NTLM加密算法是自Windows Server 2003起,微軟在每一個(gè)Windows 版本中使用的密碼算法,支援由大寫(xiě)、小寫(xiě)字母、數(shù)字和符號(hào)組成的八個(gè)字密碼,意味著在最新版本的Windows 7/8同樣有被破解的危險(xiǎn)。這次破解NTLM加密算法密碼共用了約6小時(shí),但如果是Windows Server 2003以前微軟使用的LM算法密碼就更加容易,這次只用了6分鐘就已經(jīng)破解了。原則上NTLM生成的Hash值不能用數(shù)學(xué)方法還原,所以唯一的破解方法,便是將各種密碼組合生成NTLM的Hash值,再與系統(tǒng)原來(lái)的NTLM Hash值對(duì)比。前提是黑客利用系統(tǒng)漏洞預(yù)自取得Hash值的密碼列表。順帶一提這種方法并不適用于網(wǎng)路攻擊,因?yàn)榇蟛糠志W(wǎng)站都會(huì)限制密碼輸入次數(shù)。
過(guò)去因電腦主機(jī)板、BIOS、機(jī)箱大小等限制,一臺(tái)電腦上最多只能使用8張顯示卡。OpenCL的突破之處在于把安裝在不同伺服器上的顯示卡組合成一個(gè)群集。類(lèi)似的方法已經(jīng)出現(xiàn)在云端系統(tǒng)上,筆者就曾經(jīng)遇到有人利用大量Amazon Web Services的Instance嘗試破解Gmail的密碼。不管如何,盡量使用同時(shí)有大小寫(xiě)英文字、數(shù)字和符號(hào)的密碼會(huì)比較安全。