您的位置:首頁 > 資訊 >

天天熱推薦:中國安全研究人員發(fā)現(xiàn)部分英特爾 CPU 存在嚴(yán)重漏洞, i7-6700/7700 可 100% 復(fù)現(xiàn)


(資料圖)

IT之家 4 月 25 日消息,馬里蘭大學(xué)和清華大學(xué)的網(wǎng)絡(luò)安全研究人員以及北京郵電大學(xué)的一個(gè)實(shí)驗(yàn)室發(fā)現(xiàn)了一種適用于英特爾 CPU 的側(cè)信道攻擊漏洞,有點(diǎn)類似于 Meltdown,可能導(dǎo)致敏感數(shù)據(jù)泄露。

該團(tuán)隊(duì)在 Arxiv.org 上發(fā)表的一篇論文中提到,這種攻擊利用了瞬態(tài)執(zhí)行中的一個(gè)缺陷,“使得通過定時(shí)分析從用戶內(nèi)存空間中提取秘密數(shù)據(jù)成為可能”,瞬態(tài)執(zhí)行中 EFLAGS 寄存器的變化會(huì)影響條件碼跳轉(zhuǎn) (JCC) 指令的時(shí)序。

IT之家注:這里提到的 FLAGS 寄存器一般被稱為“包含 x86 CPU 當(dāng)前狀態(tài)的狀態(tài)寄存器”,而 JCC 是基于 EFLAGS 寄存器內(nèi)容的“允許條件分支的 CPU 指令”。

簡單來說,要想利用這個(gè)漏洞實(shí)現(xiàn)攻擊,首先應(yīng)該通過 EFLAGS 寄存器觸發(fā)(包含秘密數(shù)據(jù))編碼的瞬態(tài)執(zhí)行,然后測量 JCC 指令的執(zhí)行時(shí)間來獲取該編碼數(shù)據(jù)的內(nèi)容。

▲ 攻擊概述 圖源:arxiv.org

上述研究人員已經(jīng)在多種芯片上測試了這個(gè)漏洞,發(fā)現(xiàn)它在 i7-6700 和 i7-7700 上“100% 成功”,在 i9-10980XE 上“部分成功”(測試平臺(tái)基于 Ubuntu 22.04 jammy,Linux 內(nèi)核版本 5.15.0)。

▲ 用于計(jì)時(shí)瞬態(tài)執(zhí)行攻擊的偽代碼 (arxiv.org)

研究人員發(fā)現(xiàn),為了在新芯片上獲得更高的一致性,攻擊需要運(yùn)行數(shù)千次。不過他們目前還不清楚是什么原因?qū)е铝诉@個(gè) Bug。

“在我們的實(shí)驗(yàn)中,我們發(fā)現(xiàn) EFLAGS 寄存器對 Jcc 指令執(zhí)行時(shí)間的影響并不像緩存狀態(tài)那樣持久,”研究人員提到,“在瞬態(tài)執(zhí)行后的大約 6-9 個(gè)周期內(nèi),Jcc 執(zhí)行時(shí)間將不會(huì)構(gòu)建邊信道。根據(jù)經(jīng)驗(yàn),攻擊需要重復(fù)數(shù)千次才能獲得更高的準(zhǔn)確性。”

標(biāo)簽:

相關(guān)閱讀