近日,微軟和谷歌的研究人員又發(fā)現(xiàn)了現(xiàn)代處理器中存在數(shù)據(jù)泄漏風(fēng)險的 Meltdown-Spectre 安全漏洞第四種變種。變體 4 影響英特爾、AMD 和 Arm 的無序執(zhí)行處理器內(nèi)核,以及 IBM 的 Power 8、Power 9 和 System z CPU。
近日,微軟和谷歌的研究人員又發(fā)現(xiàn)了現(xiàn)代處理器中存在數(shù)據(jù)泄漏風(fēng)險的 Meltdown-Spectre 安全漏洞第四種變種。
在安全系數(shù)較低的電腦或設(shè)備上,這些推測性執(zhí)行設(shè)計缺陷可能會被惡意軟件攻擊并利用,或通過非正常登錄系統(tǒng),從內(nèi)核或應(yīng)用程序內(nèi)存慢慢提取隱私信息,如密碼等。現(xiàn)代處理器被發(fā)現(xiàn)的安全漏洞變體 1 和變體 2 被稱為 Spectre(CVE-2017-5753,CVE-2017-5715),變體 3 則被稱為 Meltdown(CVE-2017-5754),這幾個安全漏洞前段時間在業(yè)界引起了一陣不小的恐慌。一波未平一波又起,微軟和谷歌研究人員又披露了新漏洞變體 4(CVE-2018-3639)。
新漏洞有何影響?
變體 4 影響英特爾、AMD 和 Arm 的無序執(zhí)行處理器內(nèi)核,以及 IBM 的 Power 8、Power 9 和 System z CPU。要知道,ARM 內(nèi)核可是廣泛應(yīng)用于全球各地的智能手機(jī)、平板電腦和嵌入式電子產(chǎn)品中。
第四種變體可能會被程序運(yùn)行的腳本文件(例如瀏覽器標(biāo)簽中的網(wǎng)頁 JavaScript)利用,從應(yīng)用程序的其他部分竊取敏感信息,例如從另一個標(biāo)簽中獲得個人詳細(xì)信息。
根據(jù)英特爾的說法,其已經(jīng)向公眾發(fā)布針對變體 1 的緩解措施,這是最難解決的問題,因此利用變體 4 進(jìn)行攻擊要困難得多。換句話說,修補(bǔ)變體 1 漏洞會使變體 4 攻擊網(wǎng)頁瀏覽器,以及即時執(zhí)行腳本和其他語言的類似程序變得困難。
到目前為止,沒有已知針對變體 4 的代碼擴(kuò)散。
另外,研究人員還披露了一個漏洞 CVE-2018-3640:這是一個流氓系統(tǒng)寄存器讀取,允許普通程序查看寄存器中的硬件狀態(tài)標(biāo)志等,這些標(biāo)志本應(yīng)只有操作系統(tǒng)內(nèi)核、驅(qū)動程序以及管理程序訪問。
漏洞工作原理
變體 4 被稱為推測性存儲旁路(speculative store bypass)。這是在無序執(zhí)行工程界的另一個 “等等,為什么我沒有想到?” 式設(shè)計。這個漏洞是 Google Project Zero 的 Jann Horn 發(fā)現(xiàn)的,他還是最早發(fā)現(xiàn)早期的 Spectre 和 Meltdown 漏洞的人。
這個漏洞的工作原理基于一個事實(shí),即當(dāng)面對大量將數(shù)據(jù)存儲到內(nèi)存的軟件指令時,CPU 會在存儲完成時預(yù)計是否可以進(jìn)行任何其他無序執(zhí)行。與其他指令相比,寫入內(nèi)存通常較慢。一個現(xiàn)代化的 CPU 不會被存儲阻礙了進(jìn)程,因此它會與此同時尋找有沒有其他可以同時進(jìn)行的任務(wù)。
如果處理器內(nèi)核在程序推測時發(fā)現(xiàn)一條從內(nèi)存中加載數(shù)據(jù)的指令,它將預(yù)測這個加載操作是否受到之前存儲的影響。例如,如果存儲正在寫入內(nèi)存,稍后從內(nèi)存中提取,則需要先完成存儲。如果預(yù)測可以安全加載,處理器會推測性地執(zhí)行該操作,而芯片的其他部分則忙于存儲操作和其他代碼。
這種推測行為涉及將數(shù)據(jù)從內(nèi)存拉入一級數(shù)據(jù)緩存。如果事實(shí)證明程序不應(yīng)該在存儲之前運(yùn)行加載,那么放棄指令并重新啟動已經(jīng)為時已晚:基于取回的數(shù)據(jù),緩存數(shù)據(jù)會被接觸到,這留給惡意程序足夠的機(jī)會接觸提取數(shù)據(jù)。一遍又一遍地重復(fù)這個過程,你可以從應(yīng)用程序的其他部分復(fù)制這些數(shù)據(jù)。例如,在一個瀏覽器標(biāo)簽中運(yùn)行的 JavaScript 可以窺探其他標(biāo)簽中的網(wǎng)頁。
Specter 這個名字的選擇是有深意的:它就像一個在機(jī)器中時時觀察的幽靈一樣。通過觀察由處理器的推測執(zhí)行引擎更新的緩存,就可以識別隱私數(shù)據(jù)。通過盡可能地減少閑置的處理單元,這種推測對于盡可能快地運(yùn)行芯片至關(guān)重要,但缺點(diǎn)是 CPU 可能被欺騙,從而向本應(yīng)被禁止的應(yīng)用程序和腳本泄露內(nèi)存內(nèi)容。
英特爾、Arm 等做出回應(yīng)
英特爾產(chǎn)品安全執(zhí)行官 Leslie Culbertson 表示:“變體 4 利用的推測性執(zhí)行是大多數(shù)現(xiàn)代處理器體系結(jié)構(gòu)的共同特征,它可能通過側(cè)通道暴露某些類型的數(shù)據(jù)。”
“在這種情況下,研究人員在基于語言的運(yùn)行時環(huán)境中演示了變體 4,目前我們并沒有發(fā)現(xiàn)通過瀏覽器竊取信息的案例,瀏覽器是最常用的運(yùn)行時如在 Web 瀏覽器中運(yùn)行的 JavaScript。”
“從 1 月份開始,大多數(shù)領(lǐng)先的瀏覽器提供商在其管理的運(yùn)行時中為變體 1 部署了緩解措施。這些緩解措施大大增加了在 Web 瀏覽器中利用旁道的難度,同樣也適用于變體 4,現(xiàn)在可供消費(fèi)者使用。”
根據(jù) Culbertson 的說法,英特爾和其他公司將發(fā)布新的微碼和軟件調(diào)整,以更全面地應(yīng)對利用第四種變體的惡意軟件。據(jù)悉,計算機(jī)和設(shè)備制造商正在對這些補(bǔ)丁進(jìn)行測試。有趣的是,這些補(bǔ)丁會被默認(rèn)禁用,大概是因?yàn)槁┒闯晒M(jìn)攻的風(fēng)險太低。這個漏洞修復(fù)很棘手,但也很難被利用。被默認(rèn)禁用的另一個原因可能是,英特爾過去一直在努力推出穩(wěn)定的 Spectre 更新。
“為確保我們提供的緩解措施全面并能有效防止其他方式的進(jìn)攻,我們和行業(yè)合作伙伴正在為變體 4 提供額外的緩解措施,這是一個微碼和軟件更新組合,” 英特爾執(zhí)行官表示。
“我們已經(jīng)向 OEM 系統(tǒng)制造商和系統(tǒng)軟件供應(yīng)商提供了測試版的變體 4 微碼更新,預(yù)計將在未來幾周內(nèi)發(fā)布到生產(chǎn) BIOS 和軟件更新中。”
“這種緩解措施將被設(shè)置為默認(rèn)情況下,讓客戶選擇是否啟用它。我們預(yù)計大多數(shù)行業(yè)軟件合作伙伴也會使用默認(rèn)關(guān)閉選項。在此配置中,我們沒有觀察到性能受到影響的現(xiàn)象。啟用緩解措施后,我們觀察到客戶和服務(wù)器測試系統(tǒng)基于 SYSmark 2014 SE 和 SPEC 等基準(zhǔn)測試的總體評分會受到 2-8%的影響。”
Arm 的一位發(fā)言人在一份聲明中稱:
最新的 Specter 變體對一小部分 Arm Cortex-A 內(nèi)核會產(chǎn)生影響,用戶可通過 Arm 開發(fā)的固件更新進(jìn)行補(bǔ)救,該更新可在 www.arm.com/security-update 上找到。與之前的 Specter 變體一樣,這個變體只有在用戶設(shè)備上運(yùn)行特定惡意軟件時才能進(jìn)行攻擊。Arm 強(qiáng)烈建議個人用戶遵循安全措施,以防止惡意軟件攻擊,并確保軟件更新到最新版本。
此外,今年 7 月,Arm 將向系統(tǒng)芯片設(shè)計人員提供針對 Specter 版本 2 的 Cortex-A72,Cortex-A73 和 Cortex-A75 內(nèi)核的更新版本,Cortex- A75 將可以抵制 Meltdown,也就是變種 3。
AMD 的發(fā)言人稱:
AMD 推薦的 SSB 推測性存儲旁路] 緩解措施需要將操作系統(tǒng)更新到 Family 15 處理器(“Bulldozer” 產(chǎn)品)。有關(guān)技術(shù)細(xì)節(jié),請參閱 AMD 白皮書(https://developer.amd.com/wp-content/resources/124441_AMD64_SpeculativeStoreBypassDisable_Whitepaper_final.pdf)。微軟即將完成針對 Windows 客戶端和服務(wù)器操作系統(tǒng)的 AMD 特定更新的最終測試和驗(yàn)證,這些操作系統(tǒng)預(yù)計將通過其標(biāo)準(zhǔn)更新流程發(fā)布。同樣,Linux 發(fā)行商正在為 SSB 開發(fā)操作系統(tǒng)更新。AMD 建議您與操作系統(tǒng)提供商取得聯(lián)系,以獲取具體指導(dǎo)。
基于開發(fā)漏洞的難度,AMD 和我們的生態(tài)系統(tǒng)合作伙伴目前推薦使用默認(rèn)設(shè)置來支持內(nèi)存消歧。
漏洞應(yīng)對措施
Red Hat 今天發(fā)布了應(yīng)對第四個變體的詳細(xì)指南,解釋了漏洞的影響以及工作原理,請參閱:
https://www.redhat.com/en/blog/speculative-store-bypass-explained-what-it-how-it-works
VMware 也提供了建議和更新:
https://blogs.vmware.com/security/2018/05/vmsa-2018-0012.html#
而 Xen Project 做出解釋并提供了一個修復(fù)方法:
https://xenbits.xen.org/xsa/advisory-263.html
IBM 的發(fā)言人目前還沒有表態(tài)。
小結(jié)
我們注意到,到目前為止,并沒有發(fā)現(xiàn)惡意軟件攻擊芯片中的任何 Spectre 和 Meltdown 漏洞,更不用說這個最新的變體,這或許是因?yàn)閺V泛采取緩解措施讓攻擊者無從下手,或者這樣做根本不值得,因?yàn)檫€有很多特權(quán)升級漏洞可以被利用進(jìn)入內(nèi)核和其他應(yīng)用程序。
除此之外,還有各種嘗試?yán)?Specter 系列設(shè)計缺陷的技術(shù)出現(xiàn),例如本月早些時候(https://www.theregister.co.uk/2018/05/03/just_your_monthly_reminder_that_the_spectre_bug_is_still_out_there/ ),以及三月份兩次披露的設(shè)計缺陷(https://www.theregister.co.uk/2018/03/01/us_researchers_apply_spectrestyle_tricks_to_break_intels_sgx/ )。
此外,為了利用這些缺陷,惡意軟件必須在設(shè)備上運(yùn)行,這并不是一件容易的事情,因?yàn)槟愕闷垓_用戶安裝一些不好的代碼。英特爾建議用戶可以在閑暇時使用圖形處理器掃描內(nèi)存以檢查軟件缺陷,如利用幽靈進(jìn)行攻擊的惡意軟件。
對于我們來說,這些芯片級的安全漏洞是洞察半導(dǎo)體設(shè)計的一次機(jī)會,在此案例中,對速度的一味追求導(dǎo)致存儲器保護(hù)機(jī)制被遺忘在角落。而在操作系統(tǒng)和編譯器設(shè)計的世界中,程序員們在保護(hù)內(nèi)核和用戶模式代碼的安全上,還有很長的路要走。
-
微軟
+關(guān)注
關(guān)注
4文章
6673瀏覽量
105366 -
cpu
+關(guān)注
關(guān)注
68文章
11033瀏覽量
215978 -
谷歌
+關(guān)注
關(guān)注
27文章
6223瀏覽量
107519 -
intel
+關(guān)注
關(guān)注
19文章
3493瀏覽量
187961
原文標(biāo)題:微軟谷歌再曝 CPU 新漏洞,Intel、AMD、Arm 全部遭殃
文章出處:【微信號:AI_era,微信公眾號:新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
官方實(shí)錘,微軟遠(yuǎn)程桌面爆高危漏洞,企業(yè)數(shù)據(jù)安全告急!

研究人員開發(fā)出基于NVIDIA技術(shù)的AI模型用于檢測瘧疾
谷歌印度公共政策負(fù)責(zé)人Sreenivasa Reddy辭職
微軟Outlook曝高危安全漏洞
AMD與谷歌披露關(guān)鍵微碼漏洞
華為通過BSI全球首批漏洞管理體系認(rèn)證

研究人員利用激光束開創(chuàng)量子計算新局面

NVIDIA與谷歌量子AI部門達(dá)成合作
微軟GitHub與Anthropic和谷歌合作
谷歌向歐盟起訴微軟反競爭行為
谷歌研究人員推出革命性首個AI驅(qū)動游戲引擎
研究人員:微生物電池可能會對遠(yuǎn)程應(yīng)用產(chǎn)生巨大影響
谷歌發(fā)布新型大語言模型Gemma 2
研究人員利用人工智能提升超透鏡相機(jī)的圖像質(zhì)量

評論