日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 嵌入式 > 嵌入式動態(tài)
[導讀]用英特爾處理器的產(chǎn)品有了大麻煩!幾乎所有過去10年中生產(chǎn)的英特爾( INTC-US )處理器被發(fā)現(xiàn)有個重要的安全漏洞,可以允許「普通用戶只需啟動某些程序,或透過Web瀏覽器中的JavaScript,就能在某種程度上辨識原應受保護的內(nèi)核記憶體內(nèi)的內(nèi)容」,《Register》周二報導了這項發(fā)現(xiàn)。

用英特爾處理器的產(chǎn)品有了大麻煩!幾乎所有過去10年中生產(chǎn)的英特爾( INTC-US )處理器被發(fā)現(xiàn)有個重要的安全漏洞,可以允許「普通用戶只需啟動某些程序,或透過Web瀏覽器中的JavaScript,就能在某種程度上辨識原應受保護的內(nèi)核記憶體內(nèi)的內(nèi)容」,《Register》周二報導了這項發(fā)現(xiàn)。

從本質(zhì)上講,當代英特爾處理器有一個設計缺陷,可能允許惡意程序讀取設備內(nèi)核記憶體受保護的區(qū)域,這塊區(qū)域?qū)iT用于保護操作系統(tǒng)最重要的核心組件以及與系統(tǒng)硬件交動的內(nèi)存記憶體。這個漏洞可能會暴露受保護的信息,像是密碼。

那就意味著程序可以無視權限控制,隨意讀取本程序虛擬內(nèi)存內(nèi)的數(shù)據(jù),由于Linux和Windows的內(nèi)存模型設計(內(nèi)核與程序共享一個虛擬地址空間,通過權限控制阻止程序訪問內(nèi)核),這意味著任何程序都可以讀取內(nèi)核,包括諸如加密文件系統(tǒng)的密鑰之類的數(shù)據(jù)。

由于這個漏洞是被嵌入Intel x86-64韌體里,因此需要用操作系統(tǒng)等級的覆寫才能改正,這些主要的操作系統(tǒng)包括Windows、Linux和macOS。

在這個問題被發(fā)現(xiàn)后,開發(fā)者急于在接下來的幾周內(nèi)修補系統(tǒng),所以這個設計缺陷的確切細節(jié)以及用戶容易受到攻擊的程度現(xiàn)在依然在保密狀態(tài),但情況可能非常糟。在最壞的情況下,像在網(wǎng)頁或云端托管的惡意軟件上啟動JavaScript 那樣簡單的事情,都可能刺探以Intel 設備為主干最敏感的內(nèi)部工作。

由于修復需要將內(nèi)核記憶體完全從用戶操作流程中分離出來,修補后的操作系統(tǒng)可能會出現(xiàn)「5% 到30% 的運作遲緩,程度取決于工作和處理器型號」。

5% 到30% 是一個令人驚嚇的數(shù)字,但由于現(xiàn)在一切都仍在保密中,很難判定它們對消費者的影響究竟有多明顯,不過可能對企業(yè)級的云端計算系統(tǒng)可能是沖擊最大的。對于普通用戶而言,影響可能可以被忽略不計,只要未來的修復版本能實現(xiàn)解決方案,就可能降低沖擊。

《Gizmodo》網(wǎng)站引述《Python Sweetness》博客指出,「解決軟件的緊急開發(fā)已公開化,近日將在Linux 內(nèi)核中試行」,「而在11 月類似的解決措施也開始出現(xiàn)在NT 內(nèi)核中。」「在最糟的情況下,軟件修復會導致基本工作負載的大幅降速...... 許多線索都顯示這會影響到常見的虛擬化環(huán)境,包括Amazon EC2 和Google Compute Engine?!?/p>

《Gizmodo》網(wǎng)站報導,整件事唯一讓人欣慰的是,即使這個漏洞埋得如此之深,得花上10 年的時間才能找到它,但發(fā)現(xiàn)者并沒有隱而不談。而唯一的獲利者可能是市占率極小的AMD 處理器,它大概會在一旁偷笑。

英特爾股價周三下跌3.5% 至45.22 美元,Advanced Micro Devices(AMD) 股價則上漲。

根據(jù)the Register 網(wǎng)站的一份報告指出,Linux 與微軟的視窗作業(yè)系統(tǒng)若使用英特爾芯片,速度將減慢5% 至30%。

該報告并指出,AMD 芯片不會受到影響。AMD 股價上漲7.2% 至11.77 美元。

關于此漏洞的相關評價

知乎用戶Allen Leung表示,此漏洞會導致低權限應用訪問到內(nèi)核內(nèi)存;此漏洞是硬件設計導致的,無法使用microcode修復,只能進行OS級的修復;OS級的修復會導致嚴重的性能問題,將會導致5%-30%的性能下降。

他進一步指出,目前phoronix已對此進行了測試,IO性能幾乎下降了50%,編譯性能下降了接近30%,postgresql和redis也有差不多20%的性能下跌。

用戶魚羊鮮則指出,此漏洞最早由某404公司研究機構發(fā)現(xiàn),目前還不清楚有沒有人利用。

早在17年中就被發(fā)現(xiàn)了,各大芯片和OS廠互相通氣一起研究辦法 因為底層的硬件的設計漏洞 很難修復了 只能靠os方面打補丁,突破口就是speculative execution , 用的某種side channel attack.發(fā)現(xiàn)者估計也是硬件+架構+os大牛了...總之能獲取內(nèi)核的數(shù)據(jù) 。

speculative execution算是很普遍的優(yōu)化方式,基本現(xiàn)代復雜一點的核都會用到,intel 就更不用說了. 修復完加上限制后會有較大的影響. 但具體怎樣無從得知。

至于修復方式,知乎用戶樓群指出了以下幾點:

1)芯片微碼更新不足以修復漏洞,必須修改系統(tǒng)或者購買新設計的 CPU

2)目前 Linux 內(nèi)核的解決方案是重新設計頁表(KPTI 技術,前身為 KAISER)。之前普通程序和內(nèi)核程序共用頁表,靠 CPU 來阻止普通程序的越權訪問。新方案讓內(nèi)核使用另外一個頁表,而普通程序的頁表中只保留一些必要的內(nèi)核信息(例如調(diào)用內(nèi)核的地址)。這個方案會導致每次普通程序和內(nèi)核程序之間的切換(例如系統(tǒng)內(nèi)核調(diào)用或者硬件中斷)都需要切換頁表,引起 CPU 的 TLB 緩存刷新。TLB 緩存刷新相對來說是非常耗時的,因此會降低系統(tǒng)的效率。

3)KAISER 技術對系統(tǒng)性能的影響一般是 5%,最高可達 30%。一些高級的芯片功能(例如 PCID)可以支持其他技術,從而減少性能影響。Linux 已經(jīng)在 4.14 版本的開發(fā)過程中添加了對 PCID 的支持。

4)在 Linux 系統(tǒng)中,KPTI 只有在英特爾芯片上才會啟用,因此 AMD 芯片不受影響,且用戶可以通過手動修改開關的方式關閉 KPTI

英特爾稱其他公司芯片也存在問題 正與AMD、ARM合作

據(jù)CNBC北京時間1月4日報道,英特爾當?shù)貢r間星期三表示,正在與AMD、ARM和軟件廠商合作,解決媒體報道的一個安全問題。英特爾稱,媒體有關安全問題是由缺陷造成的,以及只有其產(chǎn)品存在相關安全問題的報道是不準確的,其他公司的芯片也存在相同問題。

 

 

此前,the Register刊文稱,修正英特爾芯片中一處嚴重安全缺陷的補丁軟件會影響到芯片性能。由于這一報道在市場上產(chǎn)生廣泛影響,今天常規(guī)交易中,英特爾股價一度下跌6%,AMD股價則一度上漲逾8%。媒體報道稱AMD芯片不會受到這一問題影響。

英特爾表示,其他公司芯片也存在相同問題。英特爾在一份聲明中說,“最近媒體報道稱這一安全問題是由一處‘缺陷’引起的,而且只影響英特爾芯片的說法是不正確的。根據(jù)目前的分析,許多類型的計算設備——配置多家不同公司處理器、運行不同操作系統(tǒng)——也會受到這些安全問題的影響。”

聲明稱,英特爾的計劃是“迅速和建設性”地解決這一問題。

據(jù)the Register稱,除影響PC外,該安全問題還影響公共云服務提供商,例如亞馬遜Web Services、微軟Azure和谷歌Cloud Platform。它們使用戶能租借英特爾芯片,在Windows和Linux上運行自己的應用。

據(jù)測試過Linux版補丁軟件的Phoronix高管邁克爾·拉拉貝爾(Michael Larabel)指出,補丁軟件會使系統(tǒng)性能“下降1至2位數(shù)”。在PC上運行游戲的性能似乎不受補丁軟件影響,運行PostgreSQL和Redis等數(shù)據(jù)庫的性能會有適度下降。

英特爾在聲明中也提到了性能問題,“與部分媒體報道截然不同的是,任何性能下降都取決于負載,對于普通用戶而言,性能下降并不嚴重,隨著時間推移,對性能的影響將得到緩解。”

英特爾稱,它計劃下周討論這一安全問題,“屆時會有更多軟件和固件更新包發(fā)布”。

這一事件會給英特爾帶來費用甚至訴訟,市場研究公司Bernstein分析師斯塔西·拉斯岡(Stacy Rasgon)在星期三發(fā)表的報告中也提及了這一點。

AppleInsider刊文稱,蘋果一直在忙于修正影響macOS的漏洞;the Register刊文稱,微軟已經(jīng)在對修正該問題的Windows更新包進行測試。

谷歌、亞馬遜、蘋果和微軟未就此置評。

英特爾建議用戶,“與操作系統(tǒng)開發(fā)商或系統(tǒng)制造商接洽,盡可能快地安裝它們發(fā)布的補丁軟件。”

附:基本知識科普

首先,我們需要了解一下現(xiàn)在的CPU的基本工作方式:

指令解碼:

將指令翻譯成微代碼(是,x86處理器基本上都已經(jīng)是硬件級JIT引擎了……)

將微代碼丟進執(zhí)行隊列

調(diào)度執(zhí)行:

調(diào)度器檢查隊列中的微代碼,依據(jù)現(xiàn)有資源和微代碼間的依賴關系,選出可以執(zhí)行的微代碼

調(diào)度器將這些微代碼(可能有多個)發(fā)送給相應的執(zhí)行器執(zhí)行

執(zhí)行器將執(zhí)行結果丟回調(diào)度器(結果、異常、狀態(tài)位之類的)

調(diào)度器檢查緩存里最舊的指令的微代碼是否已經(jīng)全部執(zhí)行完畢,如果沒有完成執(zhí)行,回到第2.1步

將最舊的指令的微代碼移出隊列

結果提交:

按指令的執(zhí)行結果更新架構狀態(tài)(寫入寄存器、產(chǎn)生中斷等)

如果發(fā)生了需要特殊操作的事件(比如異常、中斷等),清空整個流水線并按流程處理

注意除了3可以清空掉1、2之外,這三塊基本上是互相獨立工作的

如果我們訪問了不能訪問的內(nèi)存,這個異常是在3.2這一步里引發(fā)的,此時整個流水線都會被清空

但!是!2.2這一步可能已經(jīng)訪問了這部分內(nèi)存,只是因為3.2引發(fā)異常而丟棄了結果

所以說如果有辦法能觀測到2這一塊對內(nèi)存的使用情況的話……

比如這段匯編:

CLFLUSH [用戶地址]

CLFLUSH [用戶地址 + 1]

MOV AX, [內(nèi)核地址]

AND AX, 1

MOV BL, [用戶地址 + AX]

顯然,在第3條就會發(fā)生異常。

但是,萬一,萬一在清空流水線前,調(diào)度執(zhí)行階段執(zhí)行到了第5條會怎么樣!

如果這個內(nèi)核地址的最低位是0,那么我們會訪問用戶地址 ,但是如果是1的話,我們會訪問用戶地址+1

如果我們把這個地址放在緩存頁的邊界上 ,那么根據(jù)這個內(nèi)核地址上最低位值的不同,被加載進緩存的頁也會不同,后續(xù)訪問兩個頁的延遲會存在區(qū)別

所以說……我們就能推斷這個內(nèi)核地址上的值了?

哦對,以上這段是確認不能用了我才發(fā)出來的(真要能用早三五年就被人報了好么)

估計這次的東西可能是類似的原因,調(diào)度執(zhí)行階段會忽略訪問控制,以致在后續(xù)執(zhí)行中可以通過其他間接方式觀測/推測這個不可訪問的值。

其次我們需要知道,以前常見的虛擬內(nèi)存結構怎樣的。

以32位Linux為例,我們知道2^32 Bytes = 4GB,從應用程序的眼中來看,我擁有4個G的內(nèi)存。但是,這4個G的內(nèi)存并不完全屬于應用程序——高地址那邊的1GB大小的映射是屬于內(nèi)核的。比如,假設內(nèi)核有一段代碼在虛擬地址0xCCCCCCCC這個位置上,應用程序也是無法直接調(diào)用的。換句話說,雖然這些地址普通程序不能訪問,但內(nèi)核程序、內(nèi)核棧等確實映射在這了。

看起來一切正常。接下來,假設我們發(fā)現(xiàn)了一個內(nèi)核漏洞,這個漏洞允許程序調(diào)用任意內(nèi)核級的代碼——也就是說,應用程序通過這個漏洞可以調(diào)用內(nèi)核中0xCCCCCCCC地址的程序了,進而對系統(tǒng)造成危害。

那么如何減輕發(fā)現(xiàn)內(nèi)核漏洞之后的危害呢?畢竟,有代碼的地方就會有bug。大佬們決定采用一種隨機的方法:你不是要調(diào)用0xCCCCCCCC這塊的代碼嗎?那我每次啟動的時候,把內(nèi)核映射到一個隨機的地址上就好了嘛,比如這段代碼這次啟動的時候它在0xCCCC0000,下次啟動它就變成了0xCCCC8888,讓人摸不著頭腦。

這種機制就叫KASLR。它隨機化內(nèi)核在虛擬空間中的地址,只有內(nèi)核自己知道我在哪,別人休想知道。所以說,KASLR不是“修補”漏洞,而是提高了利用漏洞的成本——最好的情況是,雖然有人發(fā)現(xiàn)了漏洞,但卻難以利用。

但是,魔高一尺道高一丈。另一位大佬說,你這太弱了。我用一種方法,能探測出你究竟隨機到哪去了。這就是很多答主說的Time Based Attack。因為放代碼的地址和沒放代碼的地址,在某些操作下時間長短不一樣。

因此,這種Attack不是真正的漏洞攻擊,但他讓KASLR機制失效了。如果有人發(fā)現(xiàn)了可利用的內(nèi)核漏洞后,就可以用這種方式繞過KASLR。

大佬還說了,雖然KASLR不好使了,但我的新方法好使啊。這個新方法就是KAISER——內(nèi)核除了讓應用程序知道必要的信息外,不再在應用程序的眼中“可見”。但是代價也是有的,就是性能會有所下降。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關閉