摘要:Grand和Bruno花了几个月时间逆向工程他们认为Michael在2013年使用的RoboForm程序版本,发现用于生成密码的伪随机数生成器确实存在重大漏洞,使得生成的随机数并不那么随机。他找到了他在2013年用RoboForm生成的其他密码,其中两个没有使用特殊字符,所以Grand和Bruno进行了调整。...
原文标题:How Researchers Cracked an 11-Year-Old Password to a $3 Million Crypto Wallet
原文作者:KIM ZETTER
原文来源:wired
编译:吴说区块链
两年前,当“当”Michael数字货币持有人,联系,联系, Joe Grand 寻求帮助,以恢复他存储在电脑上的加密格式 200 BTC时,万美元,Grand 拒绝了他。
Michael 位于欧洲,要求匿名。他将数字货币存储在密码保护的数字钱包中。他使用 RoboForm 密码管理器生成一个密码,并将密码存储在一个中使用 TrueCrypt 在加密文档中。某时,文件损坏,Michael 失去了对它的保护 43.6 BTC(2013 年里价值5,300 美元)产生的 20 访问位密码的限制。Michael 使用 RoboForm 密码管理器生成密码,但不存储在管理器中。他担心有人会黑进他的电脑获取密码。
他笑着说:“那时候,我对自己的安全真的很偏执,”他说。
Grand 2022年是著名的硬件黑客, 2000年,他帮助另一个加密钱夹持有人恢复她认为自己总是丢失的东西 200 持有人忘记了万美元加密货币的浏览权 Trezor 钱包的 PIN。从那以后,几十人联系了他们 Grand,希望他能帮助他们找到财富。但 Grand,也就是黑客号“黑客号”Kingpin出于各种原因,我拒绝了大部分请求。
Grand 他是一名电气工程师,从 10 从2008年开始破解计算机硬件, 共同主持了一年 Discovery 频道的《Prototype This》节目。他现在正在咨询建立复杂数字系统的公司,以帮助他们了解像他这样的硬件黑客如何破坏他们的系统。他在 2022 每年使用复杂的硬件技术破解 Trezor 钱夹,迫使 USB 钱夹泄露了密码。
但 Michael 将数字货币存储在基于软件的钱包中,这意味着将数字货币存储在基于软件的钱包中 Grand 硬件技能这次是无用的。他想过暴力破解 Michael 密码-编写一个脚本,自动猜测数百万个可能的密码,以找到正确的密码-但认为这是不可行的。他曾短暂地想过 Michael 用于生成密码 RoboForm 密码管理器在生成密码的方式上可能存在漏洞,这使得他更容易猜出密码。然而,Grand 不确定这种漏洞是否存在。
Michael 他们联系了一些破解密码学的人,他们都告诉他“没有机会”来收回他的钱。但去年6月,他再次联系了他 Grand,希望能说服他帮忙,这次, Grand 同意尝试,同意和他的朋友一起尝试 Bruno 一起合作,Bruno 还在德国从事数字钱包破解。
Grand 和 Bruno 他们认为逆向工程花了几个月的时间。 Michael 在 2013 年使用的 RoboForm 程序版本发现,用于生成密码的伪随机数生成器确实存在重大漏洞,导致随机数不那么随机。RoboForm 程序不明智地将随机密码与用户电脑上的日期和时间绑定到——它确定了计算机的日期和时间,然后生成可预测密码。如果你知道日期、时间和其他参数,你可以计算出过去某个日期和时间产生的任何密码。
如果 Michael 知道他在 2013 年生成密码的日期或一般时间段,以及用于生成密码参数值(如密码字符数,包括大小字母、数字和特殊符号),将可能的密码猜测范围缩小到可管理的总数。然后他们可以劫持 RoboForm 检查计算机日期和时间的功能,使其相信当前日期是 Michael 生成密码的 2013 年某一天。RoboForm 会吐出 2013 当年产生的密码相同。
问题:Michael 记不清他建立密码的具体时间。
根据他软件钱包的日志记录,Michael 第一次把BTC转到他的钱包是在 2013 年 4 月 14 日。但他不记得自己是否在同一天或之前或之后的某个时间生成了密码。因此,检查他的使用情况 RoboForm 其它密码参数值产生后,Grand 和 Bruno 配备 RoboForm 生成包括大小写字母、数字和八个特殊符号 20 位密码,时间段从 2013 年 3 月 1 日到 4 月 20 日。但仍然没有生成正确的密码。因此 Grand 和 Bruno 延长到时间段 2013 年 4 月 20 日到 6 月 1 每天,使用相同的参数。还是没有成功。
Michael 说他们不停地回来问他是否知道自己使用的参数值。他坚持自己的答案。
“他们真的让我很恼火,因为谁知道我 10 几年前他做了什么,”他回忆道。他在那里找到了他 2013 年用 RoboForm 其他两个密码不使用特殊符号,因此产生的密码不使用特殊符号 Grand 和 Bruno 进行了调整。去年11月,他们联系了他们 Michael,安排了一次零距离的会议。“天啊,他们又要问我设置参数了。’”
相反,他们告诉他,他们终于找到了正确的密码——没有特殊的符号。该密码是在没有特殊符号的情况下生成的。 2013 年 5 月 15 格林尼治标准时间为下午 4:10:40。
“最后,我们很幸运地选择了正确的参数值和时间段。如果其中任何一个是错误的,我们会……继续盲目猜测,”Grand 在为 WIRED “提前计算所有可能的密码需要更长的时间。”
Grand 和 Bruno 制作了一个视频,更详细地解释了技术细节。
RoboForm 因为它位于美国 Siber Systems 开发是市场上最早的密码管理器之一。目前,世界上已经超过了它。 600 万用户。结合公司报告,Siber 仿佛在 2015 年修复了 RoboForm 密码管理器。Grand 和 Bruno 经过简单的检查,没有发现 2015 版本中的伪随机数生成器使用了计算机时间,这让他们觉得 Siber 删除此功能以修复漏洞,但是 Grand 这意味着需要更深入的检查才能知道。
Siber Systems 公司向 WIRED 确定,他们真的在那里 2015 年 6 月 10 日发布的 RoboForm 版本 7.9.14 修复了这个问题,但发言人没有回答关于修复方法的问题。在公司网站的变更日志中,只提到 Siber 程序员改变了“增加生成密码的随机性”,但没有说明具体怎么操作。Siber 发言人 Simon Davis 表示,“RoboForm 7 在 2017 年停工。”
Grand 说,不清楚 Siber 如何修复问题,攻击者仍然可以再生 2015 之前版本的年修复 RoboForm 产生的密码。他也不确定新版本是否包含这个问题。
“在我不知道他们实际上是如何改进最近版本的密码生成之前,我仍然不确定它们是否值得信赖,”他说。“我不确定。 RoboForm 你知道这个特定的弱点有多严重吗?”
客户可能仍在使用修复前版本产生的密码。Siber 好像从未在 2015 修复版每年发布 7.9.14 通知客户,他们应该为重要的账户或数据生成新的密码。该公司没有回应这个问题。
如果 Siber 没有通知客户,这意味着就像没有通知客户一样, Michael 这样在 2015 年之前使用 RoboForm 生成密码并且仍在使用这些密码的人,可能会有容易被黑客重新生成的密码。
“我们知道,大多数人不会在没有提醒的情况下更改密码,”Grand 说。“在我的密码管理器(非非 RoboForm)含有 935 每个密码,其中 220 个是在 2015 年和以前,而且大部分都是我还在用网站的。”
根据公司的情况 2015 更新的密码也可能存在年度修复问题的漏洞。
去年11月,Grand 和 Bruno 从 Michael 在账户中扣除一定比例的比特币作为工作报酬,然后将密码交给他。当时比特币的价格是每枚 38,000 美金。Michael 等待价格上涨到每一个 62,000 部分美元出售。他现在有 30 BTC,价值 300 万美元,等待价格上涨到每一个 100,000 美金。
Michael 说,他很幸运多年前丢失了密码,因为否则他会在每一个中丢失密码, 40,000 美元卖掉BTC,然后错过更多的财富。
“忘记密码在经济上是件好事。”