|
有人青出于藍(lán) 卻有人永遠(yuǎn)無法勝于藍(lán) 魯迅先生曾說,記錄這東西,就是用來打破的。 前陣子程序員圈子一定熱呼的不可開交,咋回事?還不是因?yàn)橛袀€(gè)程序員妹子捅出了一個(gè)大簍子。 事情是這樣的,在德國慕尼黑有一個(gè)名叫 Leah Neukirchen 的程序員妹子,她厭倦了日復(fù)一復(fù)的解決小兒科程序代碼。 直到 2015 年的一天,閑來無事的 Leah 在 BSD3 源碼樹的文件轉(zhuǎn)儲(chǔ)中發(fā)現(xiàn)了一個(gè) /etc/passwd 文件,其中包含了計(jì)算機(jī)領(lǐng)域中一些傳奇工程師的舊密碼,令人驚訝的是,這些密碼竟然已經(jīng)存放了39年之久。 Leah找到的部分舊密碼名單 Leah 對(duì)他們使用的密碼非常感興趣,加上此刻魯迅先生的名言在她耳邊縈繞不散。她相信,再古老的密碼都會(huì)有被破譯的一天。 因此,Leah 展開了一段暴力破解密碼之旅。 計(jì)算機(jī)大師用的都是些小兒科密碼? 她這一破就是破了5年,您別說,大部分密碼還真就都被她破解了。 但其實(shí)在大多數(shù)情況下,leah的成功是因?yàn)橛脩舻拿艽a比較容易猜到。 畢竟大部分計(jì)算機(jī)大師以前使用的密碼保護(hù)程序是 Unix 早期的版本——BSD,這是一個(gè)古老的操作系統(tǒng),因此從今天的密碼保護(hù)標(biāo)準(zhǔn)來衡量,它們的安全保障措施確實(shí)不敢恭維。 首先,保護(hù)密碼的哈希函數(shù)雖然在40年前是最先進(jìn)的技術(shù),但現(xiàn)在要破解它并不難。更奇怪的是,一些BSD創(chuàng)建者的密碼散列包含在公開的源代碼中。 比如: BSD的共同發(fā)明者Dennis Ritchie使用了“dmac”作為密碼(他的中間名是MacAlistair); Stephen R. Bourne是Bourne shell命令行解釋器的創(chuàng)建者,他的密碼是“Bourne”; Eric Schmidt是Unix軟件的早期開發(fā)者,現(xiàn)在是谷歌母公司Alphabet的執(zhí)行董事長,他的密碼竟然是妻子的名字“wendy”; Unix自動(dòng)化工具make的作者、同時(shí)也是第一個(gè)Fortran編譯器的作者Stuart Feldman,他使用的密碼是“axolotl”(一種墨西哥蠑螈的名字)。 其中最弱的是Unix貢獻(xiàn)者Brian W. Kernighan的密碼:“/.,/.,”,表示一個(gè)三個(gè)字符的字符串,重復(fù)敲兩次QWERTY鍵盤上的相鄰鍵就得到了。 但是,就像超模君說過,巨人總會(huì)遇到比他更大的巨人一樣(?),至少有五個(gè)純文本密碼 Leah 是一點(diǎn)想法也沒有。 這里面包括土耳其計(jì)算機(jī)科學(xué)家Ozalp Babao?lu, Unix 軟件開發(fā)人員Howard Katseff,Unix 的重要貢獻(xiàn)者 Tom London 和 Bob Fabry。 但其中令 Leah 最不甘心、最費(fèi)解、花了最長時(shí)間甚至一度想把電腦砸了的是Unix之父Ken Thompson 使用的密碼。 Ken Thompson 和他的 UNIX Ken Thompson 是硅谷傳奇計(jì)算機(jī)科學(xué)家和工程師,UNIX 之父,江湖人稱“ken?!保?strong>他同時(shí)也是 1983 年圖靈獎(jiǎng)得主。 1983年ACM圖靈獎(jiǎng)評(píng)語(節(jié)選): “UNIX系統(tǒng)的成功是由于英明地選用了一些有決定意義的觀念并且準(zhǔn)確地加以了實(shí)現(xiàn)。UNIX系統(tǒng)作為一個(gè)樣板,已經(jīng)引導(dǎo)了一代軟件設(shè)計(jì)者思考程序設(shè)計(jì)的新途徑。UNIX的精髓是它的體系結(jié)構(gòu),這種結(jié)構(gòu)可使程序員藉此開展其他工作。 鑒于Ken Thompson和Ritchie在UNIX操作系統(tǒng)的開發(fā)和實(shí)現(xiàn)中所作出的卓越貢獻(xiàn),美國計(jì)算機(jī)協(xié)會(huì)(ACM)將授予1983年的ACM圖靈獎(jiǎng)?!?/p> 說出來你可能不信,就這么一個(gè)大人物的小學(xué)成績(jī)卻是爛到極點(diǎn),爛到他母親足足給他退了三次學(xué)都被他成功說服回去再讀一遍試試。 直到有一節(jié)課講了二進(jìn)制,自小喜歡邏輯的他瞬間被迷住了,他做了很多二進(jìn)制運(yùn)算,還借助一臺(tái)十進(jìn)制計(jì)算器擴(kuò)展到各種進(jìn)制。 展現(xiàn)出計(jì)算機(jī)天賦的他,在1960 年如愿進(jìn)入了加州大學(xué)伯克利分校主修電氣工程。 在二年級(jí)的時(shí)候他有機(jī)會(huì)使用一臺(tái)模擬計(jì)算機(jī),其實(shí)因?yàn)楦緵]人想用,實(shí)際上成了他的專用計(jì)算機(jī)。他仔細(xì)研讀,學(xué)會(huì)了編程,并在學(xué)校找到編程的工作,直到 1966 年他加入了貝爾實(shí)驗(yàn)室。 在貝爾實(shí)驗(yàn)室工作期間,湯普森在參與 Multics 操作系統(tǒng)項(xiàng)目的過程中開發(fā)了一款游戲 ——《星際旅行》。 Space Travel 游戲 后來貝爾實(shí)驗(yàn)室撤出了 Multics 項(xiàng)目。為了能夠繼續(xù)玩游戲,湯普森只好找到一臺(tái)老式 PDP-7 機(jī)器,重寫了游戲代碼。 但他發(fā)現(xiàn)游戲在新機(jī)器下玩起來太卡,于是又吸取了其他程序員在開發(fā) Multics 文件系統(tǒng)時(shí)的經(jīng)驗(yàn),在他們工作的基礎(chǔ)上設(shè)計(jì)了自己的文件系統(tǒng)。 后經(jīng)擴(kuò)展,形成了一個(gè)完備的操作系統(tǒng),在公司內(nèi)部廣泛傳播,并于 1970 年被命名為 Unix。 Ken Thompson 最難破譯的密碼 回到現(xiàn)在,Leah 對(duì)無法破解 Ken 的密碼感到沮喪,她在 Unix Heritage Society 的郵件列表中表示: “我一直沒有辦法用散列ZghOT0eRm4U9s破解 Ken 的密碼,我列舉了所有8個(gè)小寫字母+特殊符號(hào)鍵空間。任何幫助都行,歡(求)迎(求)大家給我指點(diǎn)!” (字里行間透露出一絲心酸和不甘,超模君抱抱。) ![]() 姐是真的破譯不下去了 leah發(fā)郵件后不久,就被一個(gè)自稱 Nigel Williams 的論壇哥們看到了,抱著自古江湖兒女,你有困難我定拔刀相助的想法,令所有人驚訝的是, 這哥們僅花了4天半的時(shí)間,運(yùn)用 AMD Radeon Vega64 以大約930MH/sd的速度運(yùn)行Hashcat(一個(gè)密碼破解程序),并利用了強(qiáng)大的顯卡運(yùn)行計(jì)算能力之后就破解了ken的密碼。 ![]() 隨后他興奮地一路屁顛屁顛跑去給leach發(fā)郵件聲稱他已破譯這個(gè)密碼了。 Ken的密碼加密后的字符串是:ZghOT0eRm4U9s 解密后得到的明文是:p/q2-q4! ![]() Nigel Williams的論壇原文 要知道ken這個(gè)密碼可是在1980年設(shè)置的,現(xiàn)在都0202年了,用這么現(xiàn)代的計(jì)算機(jī)才能破解這樣一個(gè)古老的密碼,這確實(shí)很Ken桑。 ![]() 隨著 Unix 之父 Ken Thompson 的舊密碼被破解,這個(gè)消息瞬間在技術(shù)論壇中炸開了鍋。 ![]() 有意思的是,湯普森的密碼“p/q2-q4!”其實(shí)是國際象棋中一種常見的開局走法的符號(hào)。 乍一看“p/q2-q4!”像是一個(gè)數(shù)學(xué)公式,而實(shí)際上是一種古老的符號(hào),代表國際象棋中棋子的走位,意思是 “皇后前面的兵 (Pawn) 向前移動(dòng) 2 個(gè)方格”。q 代表 Queen,p 代表 Pawn,這種走棋記法屬于國際象棋的代數(shù)記譜法。 ![]() p/q2-q4!——皇后前面的兵從第2行走到第4行 是國際象棋注釋符號(hào),表示“好棋” 好了藏不住了,這里超模君要公布一下這位1980 年度第 3 屆全球計(jì)算機(jī)國際象棋錦標(biāo)賽的冠軍——Ken Thompson!! Ken是一名實(shí)實(shí)在在的國際象棋迷,還曾經(jīng)在空余的時(shí)間另外開發(fā)一個(gè)專用于下國際象棋的計(jì)算機(jī)程序 “Belle”。 ![]() 眼看著自己39年前的密碼被人破解 當(dāng)事人 Ken Thompson 通過郵件得知這件事后 對(duì) Williams 表示了深切且由衷的贊賞 并回復(fù)道:“恭(ma)喜(de)!” ![]() 參考資料: https:///2019/10/unix-bsd-password-cracked.html https:///information-technology/2019/10/forum-cracks-the-vintage-passwords-of-ken-thompson-and-other-unix-pioneers/ 作者簡(jiǎn)介:超模君,數(shù)學(xué)教育與生活自媒體博主,新晉理工科奶爸。出版過《芥子須彌 · 大科學(xué)家的小故事》;《數(shù)學(xué)之旅·閃耀人類的54個(gè)數(shù)學(xué)家》。后續(xù)數(shù)學(xué)文化創(chuàng)意多多,歡迎關(guān)注認(rèn)識(shí)! |
|
|