2011 年以后制造的所有英特爾芯片都存在該問題。”近日,一則簡短的消息震驚了整個科技界。全球最大的芯片廠商英特爾爆出重大安全漏洞,一款名為“ ZombieLoad ”(僵尸負載)的芯片漏洞被奧地利格拉茨理工大學(Graz University of Technology)的研究人員發現。
據安全人士透露,“僵尸負載”及其三個附屬漏洞,會導致最近八年使用英特爾芯片的設備面臨數據泄露的風險,黑客可利用該漏洞讀取設備內存,獲得密碼、密鑰等敏感信息。英特爾芯片占據全球 85% 以上的桌面 CPU 市場,這次“僵尸負載”一經曝光,便在全球信息行業引發廣泛關注,所有的 MacBook,大多數 Windows PC ,大多數 Linux 服務器甚至許多 Chromebook 都將受到不小的影響。
何為“僵尸負載”
“僵尸負載”實際上由四個漏洞組成,根源在于“預測執行”(speculative execution)和“亂序執行”(out-of-order execution)。所謂“預測執行”,其實就是 CPU 推測它接下來會接受到哪些操作請求,同時在接到請求之前執行這些操作,以便在實際發出請求時節省時間。說的簡單點,這個操作有點類似于我們常說的人工智能, CPU 通過收集用戶數據,分析得出用戶的操作習慣,這樣就可以在我們發出指令前提前行動。
問題在于, CPU 在“預測執行”過程中,將大量用戶數據放在 CPU 內存緩存中。緩存中的數據一般不會收到重重保護,一旦黑客通過某種特定的操作,比如引導用戶安裝帶有惡意代碼的軟件,該軟件就能造成英特爾 CPU “預測執行”崩潰,從而讀取此刻位于英特爾 CPU 待執行命令緩沖區的所有當前運行的應用數據。如此一來,我們極有可能在完全不知情的情況下,被黑客輕松竊取賬號密碼、支付密碼、家庭住址、聯系電話等重要信息。
在漏洞測試過程中,研究人員還發現,黑客可以利用“僵尸負載”漏洞來查看一個人實時訪問哪些網站,這樣就可以很容易地獲取用于用戶在線輸入的密碼或加密文檔。“在這里,我們將 CPU 視為一個網絡,可以隨意竊聽他們之間的流量,”阿姆斯特丹自由大學的研究員克里斯蒂亞諾如此解釋到。
史詩級芯片漏洞的延續
事實上,“僵尸負載”并不是第一個利用 CPU 內存緩存的漏洞。早在一年多以前,“崩潰” (Meltdown)和“幽靈” (Spectre) 漏洞,幾乎席卷了整個計算機行業。“崩潰” 是英特爾特有的漏洞,由于英特爾處理器設計中允許猜測性非法訪問的嚴重錯誤,“崩潰”漏洞很容易被利用。
“幽靈” 漏洞則是利用所謂間接分叉預測,英特爾、AMD 以及 ARM 架構的芯片都存在此缺陷。眾所周知,桌面級 CPU 只有英特爾、AMD 兩家,所有的手機 CPU ,包括蘋果 A 系列、華為麒麟系列、高通驍龍系列在內,全都使用低能耗的 ARM 架構,所以“幽靈” 漏洞直接影響了所有 PC、筆記本電腦和手機。好在“幽靈”漏洞存在許多不確定因素,黑客利用起來相對困難許多,各大芯片廠商又及時推出了系統補丁,這才沒引起大的安全災難。
然而,當芯片廠商們還在慶幸這兩個漏洞沒造成大的損失時,就有研究人員警告說:“無論如何,這些漏洞不是故事的結局,而是開始,它們代表了一種全新的安全漏洞類別,可能會一次又一次地浮出水面。”事實果真如此,一年多以后,“僵尸負載”曝光,再度將廣大用戶置于安全陰影之下。
不僅僅是電腦
對于普通用戶來說,大家可能一時難以明白這個漏洞的危害有多大,有些人甚至會想,既然這次的漏洞僅僅針對英特爾芯片,那么手機用戶和使用 AMD 芯片的電腦用戶自然就不用擔心這個問題了。
不過,事情并沒有這么簡單。雖然在個人電腦 CPU 領域,英特爾僅占據 85% 的市場份額,可在服務器領域,英特爾 CPU 的市場份額高達 97%。也就是說,幾乎所有的服務器,都在使用英特爾 CPU。
這次“僵尸負載”漏洞引起的安全危機,也將經由使用英特爾 CPU 的服務器傳導到手機用戶中。我們平常在玩手機時都會發現,隨著使用時間的增加,手機 APP 會產生大量的用戶數據。這些用戶數據,APP運營者都得將其保存起來,以便用戶隨時調用。
大部分 APP 運營者并沒有實力擁有自己的獨立服務器,所以他們一般會租用阿里云等公司的超大型物理服務器集群,再通過軟件切割出“虛擬服務器”存儲數據。偏偏“僵尸負載”屬于芯片設計缺陷,它可以在虛擬機中觸發,并打破虛擬機與其他虛擬系統及其主機設備之間原有的隔離狀態。因此,那些將數據寄存在虛擬服務器中手機 APP 也會因此受到影響。
如何應對
本質上,這次曝光的“僵尸負載”漏洞與“崩潰”、“幽靈”并沒有什么不同,它們同樣都是芯片設計缺陷引起的漏洞。一旦攻擊真的發生,現有的安全軟件很難對其進行抵御。因為它們利用芯片設計缺陷發起側信道攻擊,并沒有使用病毒,攻擊不會留下痕跡,往往攻擊都結束了,受害者還一無所知。
好在英特爾官方在黑客們發起攻擊之前就已經做出應對措施,英特爾已發布微碼以修補易受攻擊的處理器,包括 Intel Xeon,Intel Broadwell,Sandy Bridge,Skylake 和 Haswell 芯片,目前還沒有任何“僵尸負載”被惡意使用的案例發生。個人電腦生產廠商,比如蘋果、微軟和谷歌都已經分別發布補丁,作為抵御可能攻擊的第一道防線。