天!他們發現了個足以攻破全球電腦的漏洞,還把這個秘密成功保守了7個月!

今天要給大家說一個在業內已經轟動朝野,然而大家可能還漠不關心的故事…..

讓我用最不技術的語言,讓大家了解下這其中的經過吧…

如果大家之前看過各種荷里活電影,對一個類似的情節可能已經不陌生了…..

比如有人做出了一個可以黑進世界上任何一台手機的芯片…

而另一夥人卻想得到它…. 一場爭鬥為止展開…

又或是一個組織發現了一個電腦漏洞,

做成了一個可以黑進世界上任何一台電腦的程序…

一場追殺和逃亡,又圍繞著一個U盤展開……

又或者是某個天才程序員,

自己發明了某個可以攻破各種電腦的系統,

進入各國政府,機構的電腦,

每當主角需要的各種關鍵信息的時候,他都可以輕易找到…..

一直以來,

很多人都以為,

這種能攻破世界上任何電腦的入侵技術,只存在電影的想象當中….

確實,

這年頭科技這麼發達,各路安全人員的技能也如此高超

怎麼可能會有如此可以輕易幹掉全球的東西存在?

真要有,最多也就電影裡的情節罷了吧….

恩,

之前確實是這樣的….

直到一天晚上,

奧地利格拉茨技術大學的一個研究員Michael Schwarz

發現了一個不得了的東西…..

他在intel的中央處理器芯片上,發現了一個致命級別的漏洞!

我們知道,中央處理器,也就是CPU,是每台電腦的核心。 幾乎所有的指令都要通過這來執行。  而intel更是已經占據了如今世界上各種個人電腦和服務器的絕大部分江山….

而這個研究員發現,這個漏洞出現在了他研究的所有intel處理器上,而且馬上就可以加以利用,最終可以繞過安全限制,直接獲取到各種關鍵信息。。

說人話? 

那就是電影中的那種足以攻破一切電腦系統的漏洞,真的被他找到了! 

 

這簡直是一個足以撼動全球的電腦漏洞,

當他們成功確認這個漏洞可以被利用後,一個周日的下午,他們激動的給intel發去了彙報郵件…..

按理說,

這麼一個史詩級的漏洞,

對方應該很快引起重視是不是?

然而一天過去了,

兩天,

三天……

。。。

直到第九天之後,

Michael才突然接到了一個來自intel公司的電話…

“謝謝你的彙報,是的,其實我們目前已經知道我們的CPU裡有這個漏洞了。 而且正在盡公司上下之力想要修複好這個漏洞….

我們非常感謝你做出的努力。

不過更關鍵的是,

你發現的這個東西,是當前的最高機密。 

我們現在正在用盡全力,希望把它控制在最小得知的人群裡。

希望你們讓越少的人知道越好。 在我們處理好之前,請絕對不要公開。 我們會跟你保持聯繫,在可以公開的日期確定後,我們會跟你說的。 “

好吧,

原來Intel早就知道,

但是已經研究了那麼久還沒有完美的解決方案。 

這下Michael真的意識到,他可能見證了電腦發展史上一次最大的震撼…. 

那麼這個漏洞又是甚麼?

總的來說

目前這個星球上使用的所使用的絕大多數電腦,都存在著兩個共同的漏洞,這兩個漏洞存在於CPU中,屬於硬件設計上的漏洞…因為這兩個漏洞的存在,理論上可能泄露這台電腦上的任何關鍵信息… 比如密碼,比如繞過密碼保護直接讀取一些關鍵文件。

除非把CPU重新設計,修補好漏洞。 然後再換掉每一台電腦的CPU。才有可能修複。 

不然只能從軟件補丁上繞過,但是這會讓整個電腦的速度降低,讓整個電腦速度的發展倒退N年…… 

這兩個漏洞,被稱為計算機體系結構發展史上的最大硬件漏洞,很可能沒有之一….

而這兩個漏洞的代號,其中一個叫做熔毀(meltdown),另一個就叫做“幽靈”(Spectre)

說人話解釋一下? 之前NGA用戶kprismk做過一個比喻…

———————

我們把CPU比做學校食堂,把黑客比作兩個男生A,B,用戶則是女神。

這天,男生A,B總要想辦法獲得女神的一點私密信息——比如,女神今天午飯吃的甚麼~

中午,女神來到食堂打飯,點了一份小籠包。

男生A在女神後面跟食堂大娘說:我也來一份,跟她一樣的~

然而這會食堂大娘表示,你等會,你前面還有人哦。

好吧,雖然說是這麼說,但是後面的廚房師傅已經聽到了對話,已經提前開始準備好了另一份小籠包…..

後來女神點好走了,輪到男生A點,他表示,我要一個跟她一樣的…

然而這會,

食堂大娘表示,人家是人家,你是你,我們不能透露女神隱私喔,你可以走了,下一個! (這就是目前CPU的內置的安全防線)

然而!

當下一個男生B走到食堂大娘面前,直接說:隨便,哪道菜最快給我上哪道…

於是乎,既然之前廚房師傅已經提前多準備好了一份小籠包,就幹脆直接把小籠包給了男生B….

這下男生知道了,女神中午吃了小籠包……

關鍵信息,就這麼被泄露了,

安全防線,就這麼被攻破了….

雖然這個比喻裡忽略了很多技術細節。

而且實際操作起來需要的技術還要複雜的多。

更麻煩的是,這位“多管閑事的食堂師傅”,是很早以前在設計芯片時就從硬件層面上定義好他會這麼做的。 不只是Intel的芯片,連AMD,ARM芯片等大公司的各大下遊產品,電腦,手機等等,全都或多或少的有這個漏洞…

而這麼一個致命漏洞,也隨著這些芯片,裝進了這星球上的千千萬萬台終端設備裡….

如果不加以修複,

那全球電腦被攻破只是遲早的事情了…

更讓人驚爆眼球的是,

早在半年前,業內人士就發現了它們,卻一直秘而不宣,直到不久前一次意外披露出來,宛如計算機安全領域扔下了一枚核彈….

這麼一個驚天漏洞,要修複起來,談何容易…. 

這麼一個驚天漏洞,勢必要協調全世界各個方面巨頭的共同努力,才有可能盡快解決….

然而,怎麼又能讓盡可能多的人參與進來修補漏洞,又同時不要讓這個最高機密泄露 ?

這,成了這場對抗這場漏洞的終極戰役….. 

 

一切,要從去年年中說起….

2017年6月,Google安全部門Project Zero的的研究員Jann Horn,

在自己的計算機上發現了一個神秘安全的漏洞….

Horn發現這個驚人的漏洞之後,他很快意識到了問題的嚴重性。 他發現這不是一家廠商的問題…..

這涉及的,是這個地球上絕大多數的電腦…. 無論這台電腦運行的是什麼操作系統或軟件…..

這簡直如同一個潘多拉寶盒,為了不要過早的開啟,發現漏洞後,他甚至沒有通知Google的其他部門。

而是直接把郵件發給了英特爾,AMD和ARM三家頂級芯片製造商,

他在郵件裡小心翼翼的用詞,只透露幾個能讓芯片公司足以引發注意的關鍵信息。 他希望能直接引起三家芯片公司的注意,而又不至於無意間泄露了技術細節,而不小心打開潘多拉寶盒。 

他同時又告誡他們,千萬不要讓這個漏洞讓太多的人知道。包括他們各家公司裡其他的團隊。 

 

“請注意,這個漏洞我們團隊至今沒有通告google的其他團隊。 因此,在你們內部討論時,請不要通知非必要之情的團隊….”

很快,Horn的郵件引發了幾家公司的重視…

大家同時也很快發現,這個漏洞幾乎無法用常規軟件補丁的方式修補…

因為這是一個硬件級漏洞,初步修補的方法只有換掉CPU!!

而換掉全世界電腦裡的CPU, 這工程量得多大??!

 

隨著他們進一步討論,

他們發現從操作系統上也許可以在軟件級別進行修補。 只要讓用戶安裝操作系統補丁就好了。

那麼,如果要操作系統來修補,那除了把這個漏洞告知芯片製造商外,他們只能進一步通知了操作系統的開發商, 微軟,蘋果,Linux內核開發團隊…

然而進一步研究下去他們發現還不夠,

他們只能又進一步通知了一些雲服務的提供商,比如Google雲服務,比如亞馬遜….

然而他們又進一步發現,

連瀏覽器也會收到影響,可以直接繞過安全機製泄露了用戶保存的密碼..

他們只能進一步通知一些瀏覽器的開發商….

既然沒有辦法讓全世界電腦都換CPU,

但是只能讓各個領域的軟件提供商們自己打補丁了吧….

就這樣,

為了修複這麼一個最高機密級別的漏洞,

及其小心的,

在軟件和硬件行業的各個巨頭公司裡,慢慢流傳了起來….

而一切都基於一個前提:

最高機密,請僅限於必要的安全修複團隊知悉…..

於是乎,幾個月以前,除了Intel,AMD、ARM等著名CPU設計(製造)公司…

還有微軟、蘋果、linux kernel核心開發組等相關機構和團體,其實都已經知道了這個漏洞的存在….

然而,大家都遵守早已形成的“行業規矩”,在所有知情人中間以各種方式下達了“封口令”,大家都在私底下快馬加鞭地趕製解決方案….

決定直到有了完整的解決方案之後,

才正式對外公布這個漏洞….

在接下來的幾個月裡,

這些巨頭公司的安全人員全力以赴,而在這之前,他們只能盡可能的保密。 因為一旦漏洞泄露,黑客們留給他們的時間,就不多了…..

7月,在漏洞最早被發現的1個月後,

Google自己的緊急響應團隊得到了自己Project Zero團隊的內部通知。開始研究響應預案….

11月,漏洞發現的第五個月,

微軟悄悄發布了一個內部更新…..  在今年的新年夜又發布了另一個大點的更新… 雖然更新說明上沒有明說,但是推測應該是修補這個漏洞有關。

12月,亞馬遜雲服務器通知用戶,1月初要進行一大波系統重啟,當天可能速度會減慢一點….

這段時間裡,各種巨頭們,都在用盡各種方式,

偷偷的修補著這個漏洞,用這各種模棱兩可的補丁說明,盡可能的勸用戶安裝補丁,而又不至於泄露整個情況。

希望盡可能大的減小這個漏洞未來可能帶來的影響…

而關於漏洞的這一切,當時仍依舊成功的保密中…..

然而,

當修複的範圍越來越大,

想要在互聯網領域想要保守一個秘密,

談何容易!

一切崩塌的起源,

來源於Linux系統的更新….

跟Windows不同,Linux是一個公開的操作系統,無論對其做的什麼修改,都會公之於眾…. 包括修補補丁的具體細節….

崩塌的第一角,來自去年12月18號,Linux的創始人,Linux內核的首席架構師Linus Torvalds更新的一個大補丁…

然而,這個補丁的更新時間卻異常的反常…..

一些技術人員表示

“ 通常一些補丁,都會在例行發布的時候才整合到內核裡去….  而這次不一樣,明明前一天才進行了例行發布, 後一天突然又發布了補丁,馬上就開始整合了? 居然讓大名鼎鼎的Linus Torvalds 都能打破常規,這次一定非同尋常!”

……

這引發了一些圈內安全人員的重視,

他們研究了一下這個補丁,發現修補了一下安全機製。

很顯然,

他們知道了內核中有一些可能泄露敏感信息的漏洞…

然而光是看補丁,他們能覺察到的,只有冰山一角….

他們只能知道這一大塊裡有問題,然後這麼補上了。 卻完全不知道,這個問題具體的細節是什麼…

還好,

機密還是安全的……..

然而,

整個事件開始崩塌的另一角….

來源於芯片製造公司AMD公司。 AMD和Intel是兩家電腦CPU的製造商,之間是互相競爭的關係。

當之前那個補丁發布後,補丁要求所有常規架構的電腦都要安裝(這就同時包括了intel和AMD的CPU的電腦)。 然而,這個補丁可能會減慢速度,而同時AMD的芯片的這個漏洞遠沒有Intel的大….

既然我們的芯片沒事,我們憑什麼要Intel綁一起裝這個補丁減慢速度? AMD公司當然表示不爽啊!!

因此,

聖誕節之後的一天,一個AMD的工程師在網上公開回覆到:

“AMD的CPU的電腦其實可以不用裝這個補丁的!因為我們的芯片不允許內存引用(memory references),也就更不會允許預測引用(speculative references)技術…. 所以在我們的芯片上,低權限的模式下想要調用高權限的數據,只會導致出錯” 

(intel芯片對‘預測引用’技術安全措施不嚴正是這次漏洞的主要原因,技術細節不多解釋了)

上面的這個解釋,聽起來很像一個普通的技術討論是不是?

然而,聽者有心,

就是這一個解釋,捅開了大簍子!! 

首先,他是一個AMD的資深工程師。 他研究自家芯片已經很久了。 顯然他知道這次漏洞具體是什麼。 所以才能夠這麼自信的說出自家芯片沒問題.  —> 他說的話很有價值。 

其次,既然他是AMD的工程師,說自家的不受影響。 那麼影射一下的話,也就是說對手Intel的CPU會受到影響咯?

那麼也就表明,這不是一個操作系統本身的問題,而是出在CPU硬件本身的問題!! 硬件的漏洞比軟件要難修補多了,整個問題的規模也大多了!!   —>  這是一個關於CPU的史詩級漏洞!

再次,他提到了‘預測引用’技術。 他們沒用這個技術,所以沒問題。 —>這次這個漏洞,出在CPU的‘預測引用’技術上!! 

於是乎,

他的這番話,在各路資深安全人員的眼裡,就成了

真的有個漏洞,還是一個史詩級的CPU漏洞,而且這個漏洞就出在‘預測引用’技術上!! 

這下,整件事情,

包不住了!!!

在一些人的事後回顧上,他們表示:

在這番話之前,沒有人在任何公開場合提到過‘預測引用’。 沒有人這麼公開的去影射有這麼一個問題。

也正是在這番話過後,

人們終於意識到了,這個問題有多大,有多嚴重,

更可怕的是,人們已經知道了,這個問題具體可能發生在哪…. 

在那之後,安全圈內人士開始各種研究這個問題….

整個漏洞的知悉範圍,已經逐漸從業內巨頭的安全團隊,慢慢擴散到了互聯網安全圈子中…..

接下來的一周,關於漏洞的謠言開始通過推特和各個網絡討論組開始傳播…..

人們測試發現,之前發布的那個Linux的大補丁,會讓電腦性能顯著的下降。 在一些測試裡,下降幅度甚至達到17%!

這對於等待補丁的人來說,無意是個可怕的消息….

究竟裝,還是不裝?

如果不是發生了什麼重大事件,Linux內核開發團隊大概絕對不可能發布一個讓性能如此倒退的補丁,不裝估計很危險..

可是裝的話,性能下降簡直太明顯了啊!

結合同一時段裡,微軟的Windows和蘋果的Mac OS也在各種曖昧的,暗搓搓的緊急發布補丁…. 

大家越來越覺得,

大事件要發生了…… 

當幾大操作系統的補丁都在慢慢發布…

也正是這樣的補丁發布引發的各種討論越來越激烈的時候…

這個秘密,是越來越保守不住了…..

直到…..

權威IT媒體,科技新聞網The Register的美國主管Chris Williams覺得實在沒辦法了,社媒上傳得沸沸揚揚,我們作為權威科技新聞網,不寫點什麼說不過去了吧….

今年1月2日,The Register刊發了以“英特爾處理器設計缺陷”為題目的文章….

綜合分析了推特上的各種線索,從Linux討論區裡所發生的一切,以及那封來自AMD工程師的一番話,和所有之前的相關研究後得出結論。

他們認為,

坊間的傳言是有可信度的。 我們的計算機裡,存在一個“普遍且嚴重的漏洞”的可能性非常大….

這篇報道一經刊出,頓時激起了渲染大波…

因為業內的人一直認為,當漏洞出現的時候,業內一般都會達成默契的“封口令”。 讓受影響的公司有時間趕製補丁。 等補丁發布了之後才公開漏洞。 減小漏洞的影響。

而顯然,

在這個節骨眼上,The register爆出的這篇新聞,無異於半路殺出了個程咬金….

權威媒體新聞的擴散力是不可想象的,一旦消息傳開,更多的犯罪分子就有可能逮住這個機會,在補丁出來之前弄出攻破CPU的大行動!!

因此很多人認為,在這個時間點發布這篇文章,顯然不太妥當…..

然而The Register表示,他們發出這篇新聞前,秘密其實也已經泄漏了,起碼社媒上已經鬧得沸沸揚揚了…

我認為我們已經做到提醒大家了,當補丁出來的時候,將有一大堆補需要安裝如果你足夠聰明,即便我們不發那篇新聞,憑那些傳言,你也能作案了…”

 

現實情況似乎真的是這樣,

如果不是幾大巨頭方都已經做好了準備,發布了各種補丁。 業內其他人士也不太可能從補丁反推出這個漏洞的細節….

其實,原本官方定下的公布這個“最高機密”的日期定在了今年的1月9日,微軟的補丁也會當天準備好….

為此,微軟特意動了點小心思,選在這一天中午發布,因為正好是消費類電子產品展CES舉行的時候,他們指望用展覽會的喜慶氛圍來緩和氣氛,把這個驚天壞消息造成的可怕印象降到最低….

然而,鑒於之前謠言滿天飛,業內相關研究員的收件箱了堆滿了詢問的郵件,業內業外的人都在詢問真相….

知道這件事的每個人都保持了最大限度的緘默,爭取讓秘密再隱瞞一周吧…

一周之後,大家的補丁或許就能出來了…..

然而,全算萬算,這單猛料還是讓行業內部的人給曝光了…

這篇文章曝光之後…..

圈內開始徹底瘋狂的研究這個漏洞可能的利用方法….

Linux的kernel核心組的研究員,推特戶名為brainsmoke的哥們….

brainsmoke是少數不願遵守“封口令”的人,自打聽到傳言開始,他就自己開始搗鼓,找出這個漏洞…

就在The Register刊發那篇“懷疑論”文章的第二天早上,

1月3日,brainsmoke找到了那個漏洞,它po出了自己電腦運行的截屏,作為實錘證據!!!

“沒有相應的錯誤提示….就這麼攻破了…”

這,

算是在最公開的場合,以最實錘的方式,

公開了這個漏洞的存在… 

(沒有公開具體技術細節)

業內正在快馬加鞭搗鼓補丁的研究員們看到這個推特,直接驚掉了下巴…

完蛋了….

人家已經找到漏洞,還運行後截屏公布….

包不住了,被拆穿了….

既然已經徹底走漏…

當天下午,Google方面也傳來風聲,“封口令”已經解除了….

1月3日下午兩點,

在兩個知名直播網站上,選定的發言人對外公布了全部的真相….

一時間,各大媒體爭相報道了此事….

經過將近7個月的精心隱瞞和修複….

這個電腦發展史上最大的漏洞,

最終對公眾曝光…..

既然天大的秘密被捅了出來…

那就站出來面對公眾吧…

1月4日,英特爾公司對外發布了聲明,對芯片漏洞的問題公開進行了解釋…

他們表示:

問題確實存在,但沒有網上傳言的那麼危言聳聽….

CEO也在接受媒體採訪時也公開承諾,會修複芯片的安全漏洞….

而Google,亞馬遜等一些業內公司也相繼拿發布了聲明,承諾盡快修複漏洞….

然而,

前景並不樂觀….

關於兩大漏洞“熔毀”,“幽靈”的補丁方案普遍不太成功,

反而讓補丁方案陷入了兩難的境地…

就目前的補丁測試來看….

不安裝補丁吧,全世界電腦的信息安全沒法保障…

安裝補丁吧,會降低CPU的性能,減慢電腦的速度。

雖然對個人電腦影響不太大,

但是對服務器的影響還是挺大的….

無論如何,

這些技術方面的事情..

還是交給業界吧。

我們關於這個秘密的故事,

先講到這裡好了。