席卷全球CPU內核漏洞是什么?華為云給你科普

      網友投稿 692 2022-05-30

      翻開最近的新聞,總少不了CPU內核高危漏洞的報道,其影響之大,修復之難,從電腦被發明以來還是首次。這個漏洞為什么這么厲害?

      一、漏洞有多可怕?

      近日,國外相關安全研究機構公布了CPU內核高危漏洞Meltdown(熔斷)和Spectre(幽靈)。利用這兩組漏洞,攻擊者可繞過內存訪問的安全隔離機制,獲取操作系統和其他程序保護的核心數據,造成敏感信息泄露。

      這兩組漏洞,相當于在一座大廈的地基上出現了嚴重的安全隱患,允許任何人隨意進出大夏的每個房間、每個角落,而且還可以拿到房間里值錢的東西。要修復起來,不僅地基要重新設計,上面的每個樓層,都要加上防護措施。這座大廈有多大?大到包括全球幾乎所有的手機、電腦甚至物聯網設備。特別在云場景下,不同的用戶可能共享同一個物理主機,云廠商對用戶做了資源隔離,防止用戶訪問不屬于自己的資源和信息,而這兩組漏洞正好允許攻擊者突破這種隔離。

      漏洞引起的危害如此嚴重,影響范圍如此廣大,一經公布,立即引起了全世界的矚目,被媒體稱為史上最大的安全漏洞。

      二、漏洞怎么產生的?

      這兩組漏洞,都利用了CPU亂序執行和預測執行的機制。采用預測執行和亂序執行,目的是提升CPU的運算速度。而漏洞的產生則都拜預測執行所賜。

      亂序執行,顧名思義,就是指令的執行是沒有順序的。每條指令執行時間差異是很大的,就跟吃飯一樣,有人5分鐘搞定,有人1小時還沒吃完。假設吃飯要按順序來,那如果吃飯時間長的人一直沒結束,后面的人就得餓著肚子等待。這顯然不可能,所以CPU都采用亂序執行,就是大家自己找個位置,自己吃,互不干擾。

      預測執行,也如其名,就是根據你平常的操作,預測你后面要干什么,CPU就幫你干了。預測錯了呢?正常的設想,肯定是指令取消掉就行。但問題就出在這里。錯誤指令雖然取消了,但會留下緩存。而緩存的最大特點,就是曾經存過什么數據,這些數據后續訪問就會變快。利用這個特點,攻擊者可以“騙”處理器把目標數據,比如賬號密碼讀入緩存中,然后遍歷一個外部數組,根據讀取速度的快慢來推導出讀入緩存的數據值。

      鑒于漏洞的技術分析需要計算機、代碼等知識,比較復雜,感興趣的同學可閱讀文末的附錄。

      三、華為云安全提供立體的防御手段

      該漏洞出現在電子世界的地基上,但地基的修復是很困難的,有待于CPU廠商的設計和更新。因此,目前主要的修復方案是修復地基上層的建筑,比如云平臺操作系統、用戶虛擬機操作系統。漏洞雖然產生了世界性的影響,但對用戶來說,大可不必過于惶恐。

      首先,華為云安全一直在與CPU廠商們積極溝通合作,不斷分析和嘗試給出更好的底層修復方案,以期徹底解決該漏洞。

      其次,從云平臺來說,包括華為云在內的各云廠商,都已啟動了底層基礎架構的修復更新。華為云安全已于1月4日發布公告,將于1月11日0時啟動基礎平臺安全升級,方式為對用戶無感知的熱升級,正常情況下對用戶業務無影響。

      再次,對用戶而言,漏洞原理及利用代碼雖已公開,但要在真實的云環境下利用起來,是非常復雜和困難的。而且華為云安全推出了漏洞消減服務,可幫助用戶對漏洞可能造成的威脅進行檢測及防御。

      最后,包括華為云在內的各大云廠商,日常最重要的工作之一,即是例行地檢測和阻斷各種針對云的攻擊,保障云環境的安全穩定。華為云安全并配備了強大的專家團隊,隨時響應可能的安全事件。此次高危漏洞的爆發,華為云更加強了檢測和防護力度,安全專家7*24小時輪班值守。截止目前,尚未發現可在真實環境下攻擊成功,并造成明顯損失的漏洞利用代碼。

      四、華為云安全與用戶同承擔、共進退

      這兩組漏洞,危害之大,修復之難,前所未有。可以預見,未來一段時間,仍將是業界關注的熱點,但不管如何,華為云安全都堅定地站在用戶身邊,同承擔、共進退,持續對漏洞進行跟蹤、分析、研究,不斷推出更好的防護方案和服務,幫助用戶防護好業務數據。

      ***

      附錄:漏洞技術分析

      1、Meltdown漏洞分析

      Meltdown對應漏洞庫編號為:CVE-2017-5754。結合業界公開的漏洞利用代碼,分析如下:

      1、此段代碼運行在CPU用戶態模式下(cpl=3),且ptr指向一個內核地址空間的地址。

      2、CPU在執行指令2時,會首先把數據讀取到緩存中(這時還沒有進行權限檢查)。

      3、由于CPU的亂序執行特性,執行步驟2的同時,后面幾條指令也被會執行,且指令3和指令5的計算操作是根據 指令2讀取到的數據 執行的。

      4、當CPU對指令2進行權限檢查時會發生一個訪問異常,之后執行的兩條指令的操作狀態會發生回滾,但Cache、TLB沒有回滾,這樣就繞過了CPU的權限檢查機制。

      5、可以利用邊信道攻擊來探測哪些頁面被訪問過,結合特定的代碼場景,就可以推測出內核地址空間中的內容了。

      2、Spectre漏洞分析

      Spectre,對應漏洞庫編號:CVE-2017-5753/CVE-2017-5715。

      1、正常情況下,當offset 大于array1->length時,下面的代碼永遠不會執行。

      2、如果array1->length沒有被緩存,由于CPU分支預測的特性,CPU當前指令流水線會等待緩存加載完成,同時在另外一條指令流水線上,下一條指令“value = array1->data[offset]”會被預測執行。

      3、一旦發現offset大于array1->length,預測執行的指令和結果將會被丟棄并加載正確的指令重新處理。

      4、當array1->length和array2->length沒有被緩存時,exploit可以分別讀取 array2->data 0x200和0x300偏移處的數據,通過比較兩次訪問的用時,就可推斷執行的是哪條指令,從而推斷出value的低位值,而這個value正是上面越界讀取到的值,這樣就可以泄露任意內核地址空間的一位,這當然就可以構造出能讀取更多內存地址的exploit了。通常訪問用時更短的,說明數據已經被加載到了緩存,這也意味著分支指令被預測執行到了。

      來源:華為微信云公眾號

      席卷全球的CPU內核漏洞是什么?華為云給你科普

      云市場 華為云

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:GitHub熱門項目:生產級深度學習項目如何構建?
      下一篇:細數電商Web安全七宗罪!
      相關文章
      亚洲国产最大av| 91丁香亚洲综合社区| 亚洲中文字幕无码中文| 久久精品亚洲一区二区三区浴池 | 亚洲AV成人片色在线观看高潮 | 国产亚洲国产bv网站在线| 亚洲成a人片在线观看中文app| 中文字幕亚洲综合精品一区| 久久av无码专区亚洲av桃花岛| 亚洲高清视频免费| 亚洲一级毛片在线播放| 久久久亚洲AV波多野结衣| 亚洲第一二三四区| 亚洲伊人久久大香线蕉| 亚洲日本久久一区二区va| 中文字幕亚洲码在线| 亚洲AV无码AV吞精久久| 国产亚洲视频在线观看网址| 国产午夜亚洲精品不卡电影| 亚洲国产婷婷香蕉久久久久久| 亚洲综合色区在线观看| 日本亚洲国产一区二区三区| 亚洲精品乱码久久久久久自慰| 亚洲成AV人片在| 91亚洲一区二区在线观看不卡| 亚洲成人黄色在线观看| 亚洲精品123区在线观看| 亚洲精品无码少妇30P| 国产AV无码专区亚洲AV蜜芽| 亚洲国产精品人人做人人爽| 亚洲中文字幕无码久久精品1| 亚洲Av无码精品色午夜 | 亚洲精品无码99在线观看| 亚洲日韩一页精品发布| 亚洲天天在线日亚洲洲精| 亚洲人成激情在线播放| 亚洲夂夂婷婷色拍WW47| 一区二区三区亚洲视频| 亚洲日韩国产精品第一页一区 | 在线视频亚洲一区| 自拍偷自拍亚洲精品被多人伦好爽|