揭祕英特爾晶片漏洞發現始末 嚴重到令工程師都不敢相信

眾所周知安全研究人員近期報告了Meltdown和Spectre兩個漏洞,而這也讓英特爾陷入了一場空前公關危機。從目前的消息看 ,英特爾、ARM、AMD等CPU產品紛紛遭受了Meltdown和Spectre兩個漏洞的影響。其中,英特爾CPU受影響最為嚴重,並且影響範圍從酷睿一代到八代全部沒能倖免。

不過,如今人們更加關注的似乎已經不是漏洞本身,而是英特爾在事件爆出之後的一系列做法令消費者感到非常憤怒。

對此,《彭博社》日前就撰文揭秘了英特爾芯片漏洞的發現始末,以下是文章主要內容:

發現漏洞

去年11月底,英特爾前工程師托馬斯-普雷舍爾(Thomas Prescher)正在德國德累斯頓與好友享用啤酒和漢堡時,話題無意間就轉移到了半導體方面。

當時的背景是,網絡安全研究員安德斯-福格(Anders Fogh)幾個月前剛剛發表了一篇博文,聲稱有一種方法或許能夠侵入驅動著全球多數電腦的芯片。接著,普雷舍爾和一群朋友當天晚上就抽出時間試圖弄明白這件事。

普雷舍爾回到家後,他打開自己的臺式機試圖驗證這一理論。凌晨2點,他終於取得了突破性進展,成功串連起了能夠進一步證實福格想法的代碼。

“我當時的第一反應是,‘這不可能是真的,這不可能是真的’。”普雷舍爾回憶道。

上週,他最害怕的事情最終成真。因為全球最大芯片製造商英特爾上週證實,所有現代處理器都可能被名為“融化”(Meltdown)和“幽靈”(Spectre)的技術攻擊,導致包括密碼、密匙在內的重要數據洩露。

此後,微軟、蘋果、谷歌以及亞馬遜等全球大型科技公司都在急忙為自己的PC、智能機以及服務器發佈安全更新。部分企業甚至表示,這些安全補丁在某些情況下可能會影響設備性能。

事實上,普雷舍爾只是全球範圍內發現Meltdown和Spectre漏洞至少10位研究員和工程師之一,他們有時獨立展開研究、有時共同研究。通過對其中幾位研究員的採訪我們發現,儘管芯片行業一直希望努力確保計算機安全,但竟然卻未能發現一個會導致設備如此易於攻擊的通用漏洞。

“這簡直會讓你感到顫抖,人們通常只會注意處理器的性能,而不是安全。”協助發現了Spectre漏洞的保羅-柯歇爾(Paul Kocher)說道。

目前,幾乎所有處理器製造商都會盡可能加快處理器處理數據、運行程序的速度,其中的一個方法就是為CPU增加演算功能。通過執行演算程序,CPU可以提前獲取自己下一步需要的數據。

但是,Spectre漏洞能夠欺騙處理器讓它執行演算程序,然後利用處理器檢索數據所花費的時間信息來推測信息細節,Meltdown漏洞則會通過破壞內核分區的方式直接曝光數據。

惡魔的種子

事實上早在2005年,研究人員就開始發表文章討論CPU內核存在安全問題的可能,協助發現Spectre漏洞的澳大利亞阿德萊德大學研究院尤瓦爾-亞羅姆(YuvalYarom)此前就曾發佈過一些相關研究論文。

2013年,有研究論文證實CPU會允許未經授權的用戶看到內核佈局,這一漏洞就是日後曝光的KASLR破解,也就是上週所公佈部分漏洞的“祖師爺”。

2016年,菲利克斯-威廉(Felix Wilhelm)展示了早期版演算執行程序會如何導致芯片遭到攻擊,洩露數據的全過程。有消息稱,首次報告了Meltdown和Spectre漏洞的谷歌年輕研究員雅恩-霍恩(JannHorn)就是受到了這一研究部分內容的啟發。

同年8月,在拉斯維加斯舉行的“美國黑帽大會上”,奧地利格拉茨技術大學的一支團隊介紹了自己早些時候旨在防止英特爾芯片內核存儲遭到攻擊的研究。團隊成員之一的丹尼爾-格魯斯(Daniel Gruss)當時恰好與福格同住一間房間。當晚,他們就徹夜討論了隨後發展為Meltdown和Spectre漏洞的理論基礎。

但同一年多後的普雷舍爾一樣,格拉茨技術大學的團隊當時也認為這不是一個真正的漏洞。他們的理由是,“芯片製造商肯定會在測試過程中發現這麼明顯的安全漏洞,絕不可能銷售存在這種漏洞的芯片產品”。

接著,在2016年11月初舉行的歐洲黑帽大會上,福格再次向奧地利格拉茨技術大學研究員邁克爾-施瓦茨(Michael Schwarz)闡述了這一研究,但後者依舊不認為這種攻擊能夠在實際應用中存在。

“這麼大的漏洞,英特爾不可能發現不了。”施瓦茨回憶稱。

2017年1月,福格表示自己終於弄清楚了演算執行程序與內核攻擊之間的聯繫。然後在1月12日舉行的一次行業大會上提到了這一發現,並在3月把這一想法告訴了奧地利格拉茨技術大學團隊。

2017年年中,奧地利格拉茨技術大學研究員開發了一個名為KAISER的軟件安全補丁,旨在修復Linux系統的KAISER破解漏洞。

去年7月,福格發佈博文詳細介紹瞭如何利用Meltdown漏洞從實際電腦中竊取信息的過程。但是,他依舊未能說服其他研究員相信這一漏洞可能會被真正用於從芯片中竊取用戶數據。當時福格還提到了一項未完成的研究,並把它稱之為“潘多拉的魔盒”。這項研究針對的就是後來的Spectre漏洞,只是那時幾乎沒有人注意到。

不過在去年晚些時候,奧地利格拉茨技術大學團隊發現,谷歌、亞馬遜、微軟研究員在KAISER補丁上的編程活動迅速增加。這些巨頭不斷推廣他們的更新,但是並未說明原因,而這一非常舉動也讓奧地利格拉茨技術大學團隊的態度迅速改變。

“這有些令人懷疑,因為提交特定Linux更新的開發者往往會解釋為何推出這些更新,但他們這次卻始終含糊其辭。我們想知道為何這些企業投入瞭如此多的時間開發更新,且不惜代價地把它整合到Linux平臺中。”施瓦茨稱說道。

施瓦茨和其他研究員認為,這其中的原因只有一個,那就是存在一種強有力的攻擊方法,會讓所有這些漏洞曝光,而科技巨頭們都希望在全球黑客發現它之前秘密修復漏洞。

浮出水面

福格和奧地利格拉茨技術大學團隊不知道的是,谷歌22歲神童霍恩在4月份就已獨立發現了Meltdown和Spectre漏洞。霍恩是谷歌ProjectZero團隊一員,該團隊集結了行業內最頂尖的安全研究人員,他們的主要工作就是發現“零日”安全漏洞,即發現第一天就會引發攻擊的漏洞。

6月,霍恩向英特爾以及AMD、ARM等其他芯片公司告知了他的發現,英特爾則在不久後告知微軟。自那時起,大型科技公司就開始秘密研究修復方案。

去年11月,微軟、亞馬遜、谷歌、ARM以及甲骨文公司向Linux社區提交了非常多的更新,這讓更多網絡安全研究人員意識到“一些奇怪的大事正在發生”。

當月底,IT公司Cyberus的另外一支團隊相信,英特爾已經向包括亞馬遜、微軟等主要客戶告知了這一漏洞,但卻選擇向Linux開發者社區隱瞞事情全部真相。作為Cyberus團隊成員之一的普雷舍爾在熬夜發現漏洞後,他把這一發現告知了Cyberus首席技術官維爾納-哈斯(WernerHaas)。在雙方面對面會談前,哈斯還特地戴了一頂斯泰森氈帽,因為這樣他就能向普雷舍爾說“我要向你脫帽致敬”。

12月3日,奧地利格拉茨技術大學團隊研究員也展開了類似測試,證明確實可以發動Meltdown漏洞攻擊。

“我們當時還說,‘天吶這不可能,我們肯定是哪裡搞錯了,CPU中不該出現這種錯誤’。”

第二天,奧地利格拉茨技術大學團隊便把這一發現告知了英特爾。可是一個多星期後,英特爾依舊沒有給予任何回覆。

直到12月13日,英特爾才告訴Cyberus和奧地利格拉茨技術大學團隊,他們發現的問題已經由霍恩和其他人報告過。在經過一番斡旋後,英特爾才同意讓這兩個團隊與其他研究人員保持聯繫,開始協調作出一個更為廣泛的回應,包括同時發佈更新後的補丁。

最終,英特爾在重重壓力下於美國太平洋時間1月3日12點發布了一則聲明,並在兩個小時後舉行電話會議,詳細解釋了這個可能影響整個行業的漏洞。只不過,在越來越多的事實浮出水面後,英特爾在事件爆出之後的一系列做法已經令消費者感到非常憤怒。


分享到:


相關文章: