Unix之父Ken Thompson的旧密码终于被破解!

OPEN编辑 5年前

  一名澳大利亚用户使用 AMD GPU 在短短四天内破解了密码哈希值。


Thompson 的 Unix 汇编代码

  早在 2014 年,开发人员 Leah Neukirchen 在 BSD 3 源代码树的一堆文件中发现了一个/etc/passwd 文件,该文件里面含有多位计算机科学先驱使用的密码,包括 Dennis Ritchie、Ken Thompson、Brian Kernighan、Steve Bourne 和 Bill Joy。

  正如她在周三的一篇博文中解释的那样,当时她决定使用 John Ripper 和 hashcat 之类的各种破解工具,尝试破解使用基于 DES 的 crypt (3) 生成的密码哈希值。顺便说一下,hashcat 是世界上速度最快、功能最先进的密码恢复实用程序。

  上周当这个话题出现在 Unix 遗产学会(Unix Heritage Society)的邮件列表上时,Neukirchen 抛出了她在五年前就破译的这个文件中的 20 个已破解密码。然而 5 个使用哈希值的密码依然没有被破解,包括 Thompson 的密码。

  邮件列表的参与者着手破解剩余的几个密码,比谁先攻克挑战。周三,来自澳大利亚塔斯马尼亚州霍巴特的 HPC 系统管理员 Nigel Williams 取得了突破。Neukirchen 写道:“即使对所有小写字母和数字进行详尽的搜索都花了好几天的时间(早在 2014 年),却一无所获。”她纳闷 Thompson 是不是可能以某种方式使用了大写字符或特殊字符。

  他在邮件列表中写道“Ken 被搞定了”。破解工作在 AMD Radeon RX Vega 64 上总共花了四天多点的时间,以约 930MH/s的速度运行 hashcat。

  翻译过来就是:ZghOT0eRm4U9s 是p/q2-q4!的哈希值。

  这是使用描述性符号的常见的国际象棋开局。正如 Neukirchen 所说,Thompson 为计算机国际象棋的发展做出过贡献。翻译过来就是:ZghOT0eRm4U9s 是p/q2-q4!的哈希值。

  Thompson 曾帮助开发了 Unix 和 Go 编程语言,还取得了其他许多成就,他对破解密码的这一壮举主动表示了祝贺。他没有立即回应置评请求。

  按照美国国家标准技术研究所(NIST)制定的密码准则,用户选择的密码长度至少是 8 个字符,假定使用一系列大写字符、小写字符和特殊字符。微软也建议密码至少 8 个字符。但是考虑到 Thompson 的 8 个字符的密码哈希值在几天内才被破解,密码越长越让人安心。