摘要:Grand和Bruno花了幾個(gè)月時(shí)間逆向工程他們認(rèn)為Michael在2013年使用的RoboForm程序版本,發(fā)現(xiàn)用于生成密碼的偽隨機(jī)數(shù)生成器確實(shí)存在重大漏洞,使得生成的隨機(jī)數(shù)并不那么隨機(jī)。他找到了他在2013年用RoboForm生成的其他密碼,其中兩個(gè)沒(méi)有使用特殊字符,所以Grand和Bruno進(jìn)行了調(diào)整。...
原文標(biāo)題:How Researchers Cracked an 11-Year-Old Password to a $3 Million Crypto Wallet
原文作者:KIM ZETTER
原文來(lái)源:wired
編譯:吳說(shuō)區(qū)塊鏈
兩年前,當(dāng)“當(dāng)”Michael數(shù)字貨幣持有人,聯(lián)系,聯(lián)系, Joe Grand 尋求幫助,以恢復(fù)他存儲(chǔ)在電腦上的加密格式 200 BTC時(shí),萬(wàn)美元,Grand 拒絕了他。
Michael 位于歐洲,要求匿名。他將數(shù)字貨幣存儲(chǔ)在密碼保護(hù)的數(shù)字錢包中。他使用 RoboForm 密碼管理器生成一個(gè)密碼,并將密碼存儲(chǔ)在一個(gè)中使用 TrueCrypt 在加密文檔中。某時(shí),文件損壞,Michael 失去了對(duì)它的保護(hù) 43.6 BTC(2013 年里價(jià)值5,300 美元)產(chǎn)生的 20 訪問(wèn)位密碼的限制。Michael 使用 RoboForm 密碼管理器生成密碼,但不存儲(chǔ)在管理器中。他擔(dān)心有人會(huì)黑進(jìn)他的電腦獲取密碼。
他笑著說(shuō):“那時(shí)候,我對(duì)自己的安全真的很偏執(zhí),”他說(shuō)。
Grand 2022年是著名的硬件黑客, 2000年,他幫助另一個(gè)加密錢夾持有人恢復(fù)她認(rèn)為自己總是丟失的東西 200 持有人忘記了萬(wàn)美元加密貨幣的瀏覽權(quán) Trezor 錢包的 PIN。從那以后,幾十人聯(lián)系了他們 Grand,希望他能幫助他們找到財(cái)富。但 Grand,也就是黑客號(hào)“黑客號(hào)”Kingpin出于各種原因,我拒絕了大部分請(qǐng)求。
Grand 他是一名電氣工程師,從 10 從2008年開始破解計(jì)算機(jī)硬件, 共同主持了一年 Discovery 頻道的《Prototype This》節(jié)目。他現(xiàn)在正在咨詢建立復(fù)雜數(shù)字系統(tǒng)的公司,以幫助他們了解像他這樣的硬件黑客如何破壞他們的系統(tǒng)。他在 2022 每年使用復(fù)雜的硬件技術(shù)破解 Trezor 錢夾,迫使 USB 錢夾泄露了密碼。
但 Michael 將數(shù)字貨幣存儲(chǔ)在基于軟件的錢包中,這意味著將數(shù)字貨幣存儲(chǔ)在基于軟件的錢包中 Grand 硬件技能這次是無(wú)用的。他想過(guò)暴力破解 Michael 密碼-編寫一個(gè)腳本,自動(dòng)猜測(cè)數(shù)百萬(wàn)個(gè)可能的密碼,以找到正確的密碼-但認(rèn)為這是不可行的。他曾短暫地想過(guò) Michael 用于生成密碼 RoboForm 密碼管理器在生成密碼的方式上可能存在漏洞,這使得他更容易猜出密碼。然而,Grand 不確定這種漏洞是否存在。
Michael 他們聯(lián)系了一些破解密碼學(xué)的人,他們都告訴他“沒(méi)有機(jī)會(huì)”來(lái)收回他的錢。但去年6月,他再次聯(lián)系了他 Grand,希望能說(shuō)服他幫忙,這次, Grand 同意嘗試,同意和他的朋友一起嘗試 Bruno 一起合作,Bruno 還在德國(guó)從事數(shù)字錢包破解。
Grand 和 Bruno 他們認(rèn)為逆向工程花了幾個(gè)月的時(shí)間。 Michael 在 2013 年使用的 RoboForm 程序版本發(fā)現(xiàn),用于生成密碼的偽隨機(jī)數(shù)生成器確實(shí)存在重大漏洞,導(dǎo)致隨機(jī)數(shù)不那么隨機(jī)。RoboForm 程序不明智地將隨機(jī)密碼與用戶電腦上的日期和時(shí)間綁定到——它確定了計(jì)算機(jī)的日期和時(shí)間,然后生成可預(yù)測(cè)密碼。如果你知道日期、時(shí)間和其他參數(shù),你可以計(jì)算出過(guò)去某個(gè)日期和時(shí)間產(chǎn)生的任何密碼。
如果 Michael 知道他在 2013 年生成密碼的日期或一般時(shí)間段,以及用于生成密碼參數(shù)值(如密碼字符數(shù),包括大小字母、數(shù)字和特殊符號(hào)),將可能的密碼猜測(cè)范圍縮小到可管理的總數(shù)。然后他們可以劫持 RoboForm 檢查計(jì)算機(jī)日期和時(shí)間的功能,使其相信當(dāng)前日期是 Michael 生成密碼的 2013 年某一天。RoboForm 會(huì)吐出 2013 當(dāng)年產(chǎn)生的密碼相同。
問(wèn)題:Michael 記不清他建立密碼的具體時(shí)間。
根據(jù)他軟件錢包的日志記錄,Michael 第一次把BTC轉(zhuǎn)到他的錢包是在 2013 年 4 月 14 日。但他不記得自己是否在同一天或之前或之后的某個(gè)時(shí)間生成了密碼。因此,檢查他的使用情況 RoboForm 其它密碼參數(shù)值產(chǎn)生后,Grand 和 Bruno 配備 RoboForm 生成包括大小寫字母、數(shù)字和八個(gè)特殊符號(hào) 20 位密碼,時(shí)間段從 2013 年 3 月 1 日到 4 月 20 日。但仍然沒(méi)有生成正確的密碼。因此 Grand 和 Bruno 延長(zhǎng)到時(shí)間段 2013 年 4 月 20 日到 6 月 1 每天,使用相同的參數(shù)。還是沒(méi)有成功。
Michael 說(shuō)他們不停地回來(lái)問(wèn)他是否知道自己使用的參數(shù)值。他堅(jiān)持自己的答案。
“他們真的讓我很惱火,因?yàn)檎l(shuí)知道我 10 幾年前他做了什么,”他回憶道。他在那里找到了他 2013 年用 RoboForm 其他兩個(gè)密碼不使用特殊符號(hào),因此產(chǎn)生的密碼不使用特殊符號(hào) Grand 和 Bruno 進(jìn)行了調(diào)整。去年11月,他們聯(lián)系了他們 Michael,安排了一次零距離的會(huì)議。“天啊,他們又要問(wèn)我設(shè)置參數(shù)了?!?/p>
相反,他們告訴他,他們終于找到了正確的密碼——沒(méi)有特殊的符號(hào)。該密碼是在沒(méi)有特殊符號(hào)的情況下生成的。 2013 年 5 月 15 格林尼治標(biāo)準(zhǔn)時(shí)間為下午 4:10:40。
“最后,我們很幸運(yùn)地選擇了正確的參數(shù)值和時(shí)間段。如果其中任何一個(gè)是錯(cuò)誤的,我們會(huì)……繼續(xù)盲目猜測(cè),”Grand 在為 WIRED “提前計(jì)算所有可能的密碼需要更長(zhǎng)的時(shí)間。”
Grand 和 Bruno 制作了一個(gè)視頻,更詳細(xì)地解釋了技術(shù)細(xì)節(jié)。
RoboForm 因?yàn)樗挥诿绹?guó) Siber Systems 開發(fā)是市場(chǎng)上最早的密碼管理器之一。目前,世界上已經(jīng)超過(guò)了它。 600 萬(wàn)用戶。結(jié)合公司報(bào)告,Siber 仿佛在 2015 年修復(fù)了 RoboForm 密碼管理器。Grand 和 Bruno 經(jīng)過(guò)簡(jiǎn)單的檢查,沒(méi)有發(fā)現(xiàn) 2015 版本中的偽隨機(jī)數(shù)生成器使用了計(jì)算機(jī)時(shí)間,這讓他們覺(jué)得 Siber 刪除此功能以修復(fù)漏洞,但是 Grand 這意味著需要更深入的檢查才能知道。
Siber Systems 公司向 WIRED 確定,他們真的在那里 2015 年 6 月 10 日發(fā)布的 RoboForm 版本 7.9.14 修復(fù)了這個(gè)問(wèn)題,但發(fā)言人沒(méi)有回答關(guān)于修復(fù)方法的問(wèn)題。在公司網(wǎng)站的變更日志中,只提到 Siber 程序員改變了“增加生成密碼的隨機(jī)性”,但沒(méi)有說(shuō)明具體怎么操作。Siber 發(fā)言人 Simon Davis 表示,“RoboForm 7 在 2017 年停工?!?/p>
Grand 說(shuō),不清楚 Siber 如何修復(fù)問(wèn)題,攻擊者仍然可以再生 2015 之前版本的年修復(fù) RoboForm 產(chǎn)生的密碼。他也不確定新版本是否包含這個(gè)問(wèn)題。
“在我不知道他們實(shí)際上是如何改進(jìn)最近版本的密碼生成之前,我仍然不確定它們是否值得信賴,”他說(shuō)?!拔也淮_定。 RoboForm 你知道這個(gè)特定的弱點(diǎn)有多嚴(yán)重嗎?”
客戶可能仍在使用修復(fù)前版本產(chǎn)生的密碼。Siber 好像從未在 2015 修復(fù)版每年發(fā)布 7.9.14 通知客戶,他們應(yīng)該為重要的賬戶或數(shù)據(jù)生成新的密碼。該公司沒(méi)有回應(yīng)這個(gè)問(wèn)題。
如果 Siber 沒(méi)有通知客戶,這意味著就像沒(méi)有通知客戶一樣, Michael 這樣在 2015 年之前使用 RoboForm 生成密碼并且仍在使用這些密碼的人,可能會(huì)有容易被黑客重新生成的密碼。
“我們知道,大多數(shù)人不會(huì)在沒(méi)有提醒的情況下更改密碼,”Grand 說(shuō)。“在我的密碼管理器(非非 RoboForm)含有 935 每個(gè)密碼,其中 220 個(gè)是在 2015 年和以前,而且大部分都是我還在用網(wǎng)站的。”
根據(jù)公司的情況 2015 更新的密碼也可能存在年度修復(fù)問(wèn)題的漏洞。
去年11月,Grand 和 Bruno 從 Michael 在賬戶中扣除一定比例的比特幣作為工作報(bào)酬,然后將密碼交給他。當(dāng)時(shí)比特幣的價(jià)格是每枚 38,000 美金。Michael 等待價(jià)格上漲到每一個(gè) 62,000 部分美元出售。他現(xiàn)在有 30 BTC,價(jià)值 300 萬(wàn)美元,等待價(jià)格上漲到每一個(gè) 100,000 美金。
Michael 說(shuō),他很幸運(yùn)多年前丟失了密碼,因?yàn)榉駝t他會(huì)在每一個(gè)中丟失密碼, 40,000 美元賣掉BTC,然后錯(cuò)過(guò)更多的財(cái)富。
“忘記密碼在經(jīng)濟(jì)上是件好事?!?/p>