英特爾這兩款處理器容易被側通道攻擊,竊取敏感數據
3月8日消息,一項研究發現了攻擊英特爾處理器的新手段。該手段利用英特爾Coffee Lake和Skylake處理器的環形互連設計,發起側通道攻擊竊取敏感數據。
該發現由伊利諾伊大學厄巴納-香檳分校的一組學者發布,預計將在今年8月舉行的USENIX安全研討會上發表。
盡管先前已證明,針對CPU微架構的信息泄漏攻擊,可以打破用戶應用程序和操作系統之間的隔離,讓惡意程序訪問其他程序使用的內存(如Meltdown和Spectre),但新的攻擊利用了環形互連的爭用。
SoC環形互連是一種以環形拓撲結構排列的在模總線,它實現了不同組件(又稱代理)之間的進程內通信,如內核、最后一級緩存(LLC)、圖形單元和安置在CPU內部的系統代理。每個環形代理通過環止點與環通信。
為了測試這種假設,研究人員對環形互連的協議進行了逆向工程,以探索兩個或多個進程引起環形爭奪的條件,進而利用這些條件建立一個容量為4.18Mbps的隱蔽通道。研究人員表示,這是迄今為止不依賴共享內存的跨核通道的最大容量,不同于Flush+Flush或Flush+Reload。
"關鍵是,這種攻擊手段與之前的不同,它不依賴于共享內存、緩存集、核心私有資源或任何特定的非核心結構,"該研究的作者之一Riccardo Paccagnella說。"因此,它們很難使用現有的'域隔離'技術來緩解。"
研究人員觀察到,一個環停總是優先考慮已經在環上的流量,而不是從其代理進入的新流量,當現有的環上流量延遲注入新的環上流量時,就會發生爭奪。

掌握了這些信息,攻擊者就可以測量與惡意進程相關的內存訪問延遲,該延遲是因為受害者進程的內存訪問導致帶寬容量飽和。然而,這就需要惡意進程在其私有緩存(L1-L2)中持續存在失誤,并從目標LLC片斷執行加載。
這樣一來,由于環形競爭而導致LLC的存儲器負載出現反復延遲,攻擊者可以利用這些測量結果作為側通道,從易受攻擊的EdDSA和RSA實現中泄露密鑰位,并通過提取受害用戶輸入鍵盤的精確時間來重建密碼。
具體來說,"一個了解我們逆向工程工作的攻擊者,可以利用這樣的設置方式,以保證其負載與第一個進程的負載競爭,利用緩解措施搶先調度緩存攻擊,使受害者的負載在緩存中失誤,在受害者計算時監視環爭用,然后用機器學習分類器對跟蹤和泄漏位消噪。"
該研究也標志著基于環爭用的微架構通道,首次被用來計時攻擊(注:計時攻擊是側信道攻擊的一種),以推斷受害者輸入的敏感數據。
針對此次披露的信息,英特爾將這些攻擊歸類為"傳統側通道",這些攻擊通常利用執行時間上的差異來推斷信息。
英特爾建議,在應對利用加密實現的定時攻擊時,遵循恒定時間編程原則:
- 運行時與秘密值無關
- 指令的執行順序(即代碼訪問模式)與秘密值無關
- 內存操作數的加載和存儲順序(即數據訪問模式)與秘密值無關
參考鏈接:https://thehackernews.com/2021/03/malware-can-exploit-new-flaw-in-intel.html