Unix之父的密码终于被破解
收藏

最近,开发人员 Leah Neukirchen 在博客中称,Unix 之父 Ken Thompson 的旧密码被破解了。这是什么情况呢?

早在 2014 年时,Leah 在 BSD 3 源码树的文件转储中发现了一个 /etc/passwd 文件,其中包含了计算机领域中一些具有传奇性色彩的工程师的旧密码,如Dennis Ritchie、Ken Thompson、Brian Kernighan、Steve Bourne 和 Bill Joy 等开发 Unix 的大师。

Leah 对他们使用的密码非常感兴趣,由于该密码用基于 DES 的 crypt(3) 算法加密后的 hash 值,而 crypt(3)是一种弱加密算法(最多限于 8 个字符),Leah 觉得破解起来应该比较容易,所以决定尝试。

Leah 使用各种破解工具,如  John the Ripper 和 hashcat很快,Leah 就破解了其中一些比较脆弱的密码,破解的部分哈希码和密码的组合如下:

gfVwhuAMF0Trw: dmac 
Pb1AmSpsVPG0Y: uio 
ymVglQZjbWYDE: /.,/., 
c8UdIntIZCUIA: bourne 
AAZk9Aj5 / Ue0E: foobar 
E9i8fWghn1p / I: apr1744 
IIVxQSvq1V9R2: axolotl 
9EZLtSYjeEABE: network 
P0CHBwE / mB51k: whatnot 
Nc3IkFJyW2u7E: ... hello 
olqH1vDqH38aw: sacristy 
9ULn5cWTc0b9E: sherril. 
N33.MCNcTh5Qw: uucpuucp 
FH83PFo4z55cU : wendy !!!
OVCPatZ8RFmFY: cowperso 
X.ZNnZrciWauE: 5% ghj 
IL2bmGECQJgbk: pdq; dq 
4BkcEieEtjWXI: jilland1 
8PYh / dUBQT9Ss : theik !!!
lj1vXnxTAPnDc: sn74193n 

这些破解出来的密码字符组成比较简单。不过,Ken Thompson 的密码却没能破解,尽管花了几天时间对所有小写字母和数字进行彻底遍历,结果仍没有用。因为如此,再加上这个算法是由 Ken 和 Morris 开发的,Leah 好奇心更加重,更加想要破解这个密码。他还发现,与其他密码散列方案(如 NTLM)相比,Crypt(3) 破解速度要慢得多。

Leah 猜想 Ken 可能用大写字母,甚至是特殊字符。如果这种情况,在现代 GPU 上穷举搜索一个 7 位的密码也需要两年的时间,甚至可能不止,所以放弃了分析。

然而 10 月初,这个话题再次出现在了 The Unix Heritage Society 邮件列表上,Leah 分享了他破解的结果和进展,表示自己没能够破解 Ken 的密码。当众多黑客都陷入苦思时,澳大利亚工程师 Nigel Williams 宣称终于破解 Ken 的密码,他在邮件中做了描述:

Ken 的密码结果是:ZghOT0eRm4U9s:p/q2-q4!

乍一看,p/q2-q4!像是一个数学公式,而实际上是一种古老的符号,代表国际象棋中棋子的走位,意思是“线上的棋子(Pawn)向前移动 2 个方格( Pawns in the line move forward 2 squares)”。q 代表 Queen,p 代表 Pawn,这种走棋记法属于国际象棋的代数记谱法。

皇后前面的兵(Queen's Pawn Opening)一般在游戏开始时就占据棋盘的中心位置,这是下棋最常用的策略,这也只能是 Ken 才独有的想法,Ken 是一个国际象棋爱好者,他曾经是 1980 年第 3 届全球计算机国际象棋锦标赛的冠军,还是一个国际象棋程序 Belle 的作者之一。

开源中国征稿啦!

开源中国 www.oschina.net 是目前备受关注、具有强大影响力的开源技术社区,拥有超过 400 万的开源技术精英。我们传播开源的理念,推广开源项目,为 IT 开发者提供一个发现、使用、并交流开源技术的平台。


现在我们开始对外征稿啦!如果你有优秀的技术文章想要分享,热点的行业资讯需要报道等等,欢迎联系开源中国进行投稿。投稿详情及联系方式请参见:我要投稿

推荐阅读

Kafka“孕育”了一款开源关系数据库:KarelDB

Linus Torvalds 不担心微软入侵 Linux

10月数据库排行:Microsoft SQL Server分数增加最多

15年来这 8 门编程语言位置十分稳定

谷歌表示Knative不会捐赠给任何基金会