當前位置:
首頁 > 科技 > 「熔斷」與「幽靈」!Q&A詳解近期高危處理器漏洞風波

「熔斷」與「幽靈」!Q&A詳解近期高危處理器漏洞風波

2018年1月最引人關注的話題,不是CES,也不是什麼新品發布,而是驚爆全行業,涉及全世界幾乎所有主流處理器產品的兩個大漏洞:Meltdown和Spectre,中文名稱「熔斷」和「幽靈」,這兩個據稱可以影響數代之前處理器的高危級別漏洞,軟體防禦無法完全將其免除,甚至需要更換硬體才能徹底豁免。隨後又爆出了漏洞修復影響性能,並且是全系列處理器的說法。

那麼,截至今日,這兩個漏洞的危害到底有多大?帶來的危害被消除了嗎?是否需要更換硬體?軟體修復可靠嗎?如果你還有這樣的疑問的話,不妨閱讀一下本篇文章,我們將和你一起探討這些話題。

最近有關處理器高危漏洞的消息傳的沸沸揚揚,尤其是英特爾和ARM,一個是PC世界的帶頭大哥,一個是移動世界的無冕之王,卻紛紛被爆出和漏洞相關,並且漏洞非常容易操作但不太容易防護,甚至操作系統級別的防護都難以徹底封堵風險。究竟現在這兩個漏洞發展到了什麼地步,漏洞修補的難點又在哪裡,本文的五問五答將帶你明晰這些問題的答案。

問題一:前段時間的「熔斷」和「幽靈」影響範圍有多大?漏洞帶來的危害有多嚴重?

答:

影響範圍:「熔斷」和「幽靈」兩個漏洞是有史以來發現的影響範圍最大同時也是安全級別最高的漏洞(當然也有其他安全級別同等的高危的漏洞存在,只是影響範圍沒有那麼大或者相對容易修復),幾乎從十年前的電腦到現在最新的手機處理器都受到影響。並且不只是普通用戶,凡是使用2010年以後的英特爾、AMD和ARM架構產品(蘋果、高通、三星、華為、英偉達等)的廠商包括伺服器、雲端、超級計算機甚至一些銀行和軍隊,通通難逃漏洞波及。另外,英偉達的GPU包括GeForce、Quadro、NVS、Tesla、GRID也受到的影響。

目前的測試顯示英特爾Ivy Bridge以後的處理器都受到影響,具體來說就是第三代Core處理器之後,比如常見的Core i7-3770K。

Cortex-A75是ARM家族中少有的同時中招「熔斷」和「幽靈」兩個漏洞的產品。

Skylake處理器的亂序執行架構,也被「熔斷」漏洞所波及。

軟體方面,由於硬體和軟體相輔相成的作用,操作系統層級也可以被認為受到了漏洞影響(畢竟漏洞運行需要軟體環境的支持),包括Windows 7以後所有版本,Windows Server 2008以後所有版本、iOS 11.2.2之前所有版本、Mac OS X、tvOS、Linux家族(RedHat、SUSE、Ubuntu)等。軟體方面由於瀏覽器可以通過JavaScript腳本運行漏洞,因此包括FirFox 57、Chrome 64、Safari、IE11、Edge等主流的瀏覽器以及以這些瀏覽器為內核的第三方瀏覽器等都受到影響。

另外,目前有關AMD和ARM的處理不受漏洞影響的消息,主要是指AMD和ARM的部分處理器測試「熔斷」漏洞沒有成功,但是依舊明確顯示受到「幽靈」漏洞的影響,而最新測試則顯示,ARM Cortex-A75「熔斷」測試成功,受到漏洞影響,可能隨著未來測試技術不斷進步,情況還會有所變化。相比之下,英特爾處理器則受到所有漏洞的影響。

危害情況:目前只能說不知道。作為一個可以盜取數據的漏洞,其主要使用方法就是用於盜竊類似密碼、賬號等敏感信息。好在由於這兩個漏洞自發現以來一直處於比較良好的保密狀態,因此直到一些初步有效的修復方法出台,漏洞都沒有更多有危害的消息出現。但考慮極端情況的話,也有可能由於漏洞的特殊性,即使有危害存在,受害者可能也不是很清楚自己的敏感信息是如何流失的。

實際來看,本次的漏洞的使用和攻擊不但需要比較高的軟硬體知識,在獲取數據方面也需要一些技巧和時機,綜合平衡盜竊的風險、成本和收益的話,對一般用戶來說,謹慎為上,但不要過度焦慮。

問題二: 「熔斷」和「幽靈」漏洞是什麼?

答:有關這兩個漏洞的相關消息,谷歌已經發布了非常詳細的論文,漏洞的發現者甚至給出了視頻描述和例證來表示它們能夠攻破計算機的系統從而導致數據泄露。由於相關的論文和例證專業度非常高,最起碼需要計算機專業或相關背景的人士才能看懂,且目前網路上也有大量的專業討論和解釋,如果感興趣的讀者可以自行搜索,本文在此不多描述複雜的技術內容,僅僅作出最簡單、直接但可能不夠準確的描述,供大部分沒有基礎的愛好者了解。

「熔斷」和「幽靈」兩個漏洞的LOGO。

「熔斷」和「幽靈」兩個漏洞利用了現代計算機的兩個最基本技術:亂序執行技術和推測執行技術。所謂亂序執行,簡單來說是指處理器可以在遇到某任務暫停的時候依據經驗繼續超前執行,如果結果正確則繼續執行,如果錯誤也沒什麼損失,亂序執行降低了處理器無謂的等待時間,大幅度提高系統效能。

一段能夠觸發「熔斷」漏洞的核心代碼。

所謂推測執行,是指計算機會通過大量的演算法和經驗數據,在指令到達之前,就預先對下一步需要做出的指令進行推測並將其讀入內存,這樣做的優勢是能夠大大加快後續數據的處理步驟,同樣起到了降低等待時間,提高系統效率的作用。毫不誇張的說,亂序執行和推測執行堪稱現代處理器的兩座基石,目前大量針對處理器的優化均建立在優秀的推測執行和亂序執行基礎上,是處理器性能提升的技術根本。

不過,基石重要性是建立在安全的基礎上,一旦出現問題,處理和挽救就變得很麻煩。這一點在「熔斷」和「幽靈」兩個漏洞上表現的特別明顯。

根據谷歌論文披露的消息,「熔斷」漏洞利用的是亂序執行時的窗口時間進行了時間差分攻擊,攻擊程序巧妙的選擇了只有幾十納秒的時間窗口,在執行了一個本應該被拋棄的錯誤的攻擊程序後,利用敏感數據寫入緩存後沒有被清空這一點,通過掃描所有內存數據對比響應時間,從而判斷出了真正的敏感數據。「幽靈」漏洞和「熔斷」漏洞類似,只是攻擊發生在分支預測過程中,也是執行訪問敏感數據的錯誤程序後,通過掃描沒有被清理的內存,從而得到了敏感信息。

「熔斷」和「幽靈」兩個漏洞的攻擊過程簡單看起來似乎有點「弱智」,實際上,作為業界使用了十數年之久的技術,本來應該是非常成熟和完善的,但是漏洞攻擊出現之後,人們才意識到之前自己引以為豪的設計是多麼的脆弱。

總的來說,目前發現的這兩個漏洞,在合適的條件下,其「作案」過程簡單到讓人無法相信,谷歌公布的例證中約124行代碼就可完成一個竊取過程,完全不像是一個高危級別漏洞在人們想像中所擁有的那種極其複雜的破解過程,但正是這種大巧若拙的方法,卻直指計算機體系最底端、最基礎的結構,才帶來了如此巨大的影響。

問題三:這兩個漏洞是如何被發現的?

答:目前對這兩個漏洞發現的過程有多種說法,在公眾眼中這兩個漏洞是由著名科技新聞網站The Register在1月3日早上的爆料開始引發討論,隨後1月4日英特爾宣稱這個漏洞沒有那麼誇張,但是幾個小時候的谷歌的兩篇論文徹底向大家解開了「熔斷」和「幽靈」漏洞的一切內容,人們才知道這兩個漏洞甚至危及全球幾乎所有民用處理器和絕大部分商用處理器。

The Register是一個英國科技網站,其主頁內容幾乎無所不包,不只是限定於IT新聞。

不過,根據事後的一些分析,漏洞實際上早在2017年6月1日甚至更早以前,就被谷歌安全部門Project Zero的工程師發現了,不過考慮到這件事情的嚴重性,這位工程師只是發郵件通知了英特爾、AMD以及ARM等廠商的安全部門,甚至都沒有在谷歌內部廣泛通知漏洞的存在。

Project Zero是谷歌在2014年成立的信息安全團隊,這是他們在谷歌的頁面。

隨後,得到消息的英特爾、ARM等廠商發現此漏洞可能難以用傳統的方法簡單修復,需要操作系統級別的配合,於是又通知了業內主要的操作系統廠商包括微軟、蘋果和Linux內核開發團隊等。同時也是為了對客戶負責,這個消息又被安全相關人員告知諸如亞馬遜、谷歌雲、騰訊雲、華為雲、阿里雲等大型雲服務提供商,提請他們注意漏洞的信息。

問題最早顯露在公眾面前是在Linux的發布更新後。有人注意到,在安裝了17年12月的某個Linux的安全更新後,處理器的某一部分性能明顯下降,同時AMD的安全人員宣稱AMD處理器的用戶可以不用安裝這個更新,因為這個安全更新對AMD處理器毫無用處。通過這個更新以及AMD的態度,部分敏感的研究人員感覺到此事不同尋常。

「熔斷」漏洞可以通過瀏覽器執行,這是在Core i7-6700K系統上獲得的Firefox 56的瀏覽器內存dump文件,包含了保存的密碼。

目前沒有消息證明AMD的處理其受到「熔斷」漏洞影響,為此AMD的股價在1月2日後還迎來一波上漲。

隨後一些流言在業內流傳,宣稱全球幾乎所有處理器都有重大的安全漏洞,但沒有「實錘」之前,並沒有媒體出來指證。終於在1月2日,美國科技媒體The Register報告了這個漏洞的相關信息,並得到了谷歌的證明,兩個漏洞就此天下大白。

實際上,谷歌公布的漏洞並不是兩個,而是三個,分別是「幽靈」漏洞的兩個變體CVE-2017-5753和CVE-2017-5715以及「熔斷」漏洞CVE-2017-5754。而且谷歌在發現漏洞影響範圍極為廣泛、嚴重程度極高後,已經召集了業內幾乎所有相關廠商商議對策,決定在1月9日之前完成對漏洞的初步修復。

谷歌公布的「幽靈」漏洞的代碼案例部分截圖,在X86平台上成功運行。

The Register的爆料只是讓漏洞真相大白的時間早了一點而已,並沒有影響到漏洞本身的修復,也沒有進一步加重漏洞的危害性。這件事情真正令人感嘆的在於,在漏洞被曝光之前,全球各大廠商和成千上萬的科技人員,在知道漏洞的情況下依舊保守秘密,避免漏洞被非法使用,並儘可能早的提出修復方案,我們不得不為這些廠商和科技人員點贊。

問題四:現在漏洞可以修復嗎?據傳需要更換處理器?

答:由於漏洞發現到公布中間差不多相隔了半年,因此廠商準備了一些修復手段。目前這兩個漏洞影響的範圍非常大,再加上漏洞本質和處理器的運行原理相關,因此單純靠一個補丁或者一些安全軟體是無法得到有效的修復的。不僅如此,考慮到受漏洞影響的對象不同,修復的方法也是完全不同的。業內消息顯示,除蘋果外,其他廠商目前給出的漏洞修復方法,只適用於「熔斷」漏洞,對「幽靈」漏洞的修復尚在評估中。

對普通用戶:

1. 對擁有英特爾、AMD、英偉達處理器的PC設備的用戶,為了避免漏洞影響需要做到:一是及時更新操作系統廠商的補丁;二是及時更新最新版的主板BIOS,其中包含了由處理器廠商提供的最新版本的微碼;第三則是更新瀏覽器和一些軟體廠商推出針對自家軟體的更新版本或補丁程序。但是,目前一些消息稱,一些比較老型號的處理器或者AMD型號的處理器在更新了Windows補丁後,會出現無法進入系統的情況,目前微軟已經注意到這些問題,在進行調查後會給出更新的修復方法,請準備更新的用戶注意相關新新聞報道。

2. 對iOS也就是蘋果移動平台的用戶來說,需要更新到最新的iOS 11.2.2。蘋果宣稱這個版本修復了「幽靈」漏洞,目前沒有證據證明iOS受到「熔斷」的影響,因此不需要補丁。

iOS 11.2.2明確提到了安全性升級,就是為「幽靈」漏洞而來。

3. 對Mac OS系統的用戶來說,蘋果宣稱最新的Mac OS X High Sierra 10.13.2版本修復了全部兩個漏洞,可以直接升級。

4. 原生Android用戶可以注意谷歌的更新消息以獲得最新的更新來修復漏洞,其它Android修改版本系統的用戶需要等待廠商的推送通知。

5. 由於英偉達的GPU也受到了「幽靈」漏洞的影響,但好在GPU和CPU架構差異很大,因此英偉達通過驅動就修復了漏洞,建議更新英偉達驅動至390.65以後的版本。另外,英偉達還指出其Tegra系列處理器也受到了漏洞影響,好在英偉達已經在官網給出了漏洞補丁,受影響的用戶可以自行查找。

英偉達的相關安全修復公告。

對企業級用戶:

企業用戶往往會得到英特爾、AMD、谷歌等廠商的直接技術支持,因此相比普通用戶來說要好得多。不過為了更安全的封堵漏洞,企業及用戶可能會面臨性能損失等問題,比如目前RedHat對自己的修復補丁給出的說明就涉及了性能損失。建議廠商的安全團隊和英特爾、微軟等廠商緊密配合,減少漏洞帶來的影響。

這裡需要再強調的一點是,目前絕大部分操作系統層級、軟體層級的修復,都是針對「熔斷」漏洞的,主要方法被稱作內核頁表隔離 (Kernel Page Table Isolation / KPTI)。而針對「幽靈」漏洞這種直接攻擊推測執行技術(分支預測)的漏洞,暫時沒有特別好的修復方法,如果直接關閉分支預測的話,處理器性能將會得到巨大的衰退,甚至跌回十年前的水平。

因此廠商還在不斷的衡量如何在性能損失和漏洞修復之間平衡,或者直接根據攻擊點進行一些操作,讓攻擊成本變得特別高,從而變相阻止漏洞泄露數據的發生或者將可能性變得很低。

相信到這裡,是否要更換硬體的答案已經呼之欲出了。

問題五:修復漏洞會帶來性能損失嗎?

答:會。

正如前文所說,由於這兩個漏洞直指處理器底層原理,徹底修復的方法可能涉及到關閉某些硬體功能,可能會帶來性能的極大倒退,尤其是「幽靈」漏洞如果徹底阻斷、關閉分支預測的話,會讓處理器的性能倒退回順序執行時代,大約損失70%~90%性能,即使關閉部分敏感功能,性能損失也不可小覷。因此,正如前文所說,對「幽靈」的修復,除了iOS和Mac OS X外,其他廠商尚未開始或者正在進一步研究方法和路徑。

另外,即使是比較容易修復的「熔斷」漏洞,也會在內存性能上帶來些許的損失,目前的測試數據顯示一些獨立子項的性能損失甚至最多可達30%,一般也會在5%~17%左右。當然,獨立子項的性能損失並不代表整體性能一定會損失,處理器也是一個複雜的系統工程,宏觀來看,修復「熔斷」漏洞的機器,在安裝了各種補丁之後,綜合性能損失在3%以內,甚至部分測試沒有明顯的性能差異,因此用戶可以放心的安裝相關補丁。

永恆的是漏洞,不變的是補丁

總的來看,本次「熔斷」和「幽靈」兩大漏洞,給整個業內帶來了極大的震撼,尤其是公眾和科技媒體的加入,吸引了更多人的關注,也讓很多普通人對計算機安全有了一定的認識。

但實話實說,無論是硬體還是軟體,複雜度超過一定程度後,漏洞是必然的。不是這裡漏,就一定是那裡漏,永恆的是漏洞,不變的是補丁。之前英特爾爆出的ME漏洞,AMD的SEV安全性問題以及心臟滴血漏洞、SMB漏洞等,也只是火了一段時間就幾乎悄無聲息了,絕大部分用戶甚至都沒有修復這些問題。毫不誇張的說,我們現代的處理器、操作系統等,實際上很像一個滿是孔洞的泥沙之塔,只不過一直存放在日照充足的乾燥之地,尚沒有太多危機存在罷了。

對普通用戶而言,這些漏洞和問題,是不是應該恐慌呢?完全沒有必要。因為很多漏洞的觸發條件和測試環境,普通用戶是難以復現的,尤其是「幽靈」漏洞,雖然危害巨大,但是條件苛刻,一般用戶的信息也沒有敏感到需要一組高端IT技術人員來竊取的程度。最應該對這些漏洞關注的,是國家安全人員和企業高管,畢竟國家機密和商業機密,很可能超過運用漏洞所需要的成本,這才是這兩個漏洞暴露出來的更深層次的問題。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 微型計算機 的精彩文章:

6000元+的電競顯示器,它有哪些殺手鐧敢賣這個價?
新春樂:百萬英雄不答題,金士頓SSD輕鬆拿

TAG:微型計算機 |