請選擇 進入手機版 | 繼續訪問電腦版

台灣粉絲俱樂部

CPU漏洞之後 Ring 0究竟什麼鬼?

[複製鏈接]
本文作者:『電腦愛好者』 | 發表於:2018-1-14 13:54:39
最近一段時間CPU漏洞的新聞可謂讓人驚詫不已,一個最不可能、最不能被允許的關鍵設備竟然有硬件漏洞!這幾天PC廠商最忙的事情就是推出補丁,用軟件方式彌補硬件漏洞的錯誤。而且,這些措施還會導致CPU性能下降。但是這個漏洞究竟影響什嗎?你真需要為此而擔憂嗎?



漏洞是真但不必害怕

漏洞存在這是千真萬確的事情,但是你也不需要為此而擔心——這個被證實影響了十幾年來幾乎大部分CPU的硬件缺陷確實存在,只是這個漏洞的技術細節沒有公之於眾。

事情要從去年說起,谷歌旗下的Project Zero團隊發現了一些由CPU“預測執行”引發的芯片級漏洞,“Spectre”和“Meltdown”,這三個漏洞都是先天性質的架構設計缺陷導致的,可以讓非特權用戶訪問到系統內存從而讀取敏感信息。簡單說這些漏洞能讓惡意程序獲取核心內存裡存儲的敏感內容,比如能導致黑客訪問到個人電腦的內存數據,包括用戶賬號密碼,應用程序文件,文件緩存等。

經過進一步證實包括Intel、AMD,以及ARM的CPU都在“黑名單”上,這意味著無論是Windows,Linux,Mac系統抑或移動端的Android,都有潛在的安全威脅。但是目前也僅僅是“潛在的威脅”。



CPU權限究竟什麼鬼?

大部分現代CPU架構都有某種形式的保護環,每一個環具備不同級別的保護權限,可以調用不同的CPU資源級別。拿這次最先曝光問題的Intel X86 CPU來說,他一共有Ring0、Ring1、Ring 2、Ring3四個級別,還有一個Ring -3級別權限。



常見的操作系統比如Windows、Linux、Android、iOS等等操作系統沒有完全使用所有的各個級別權限,只是用了一部分。以Windows來說它用了3個Rings級別:Ring 0用於內核代碼和驅動程序, Ring 2用於某些需要特權的代碼,Ring 3用於非特權代碼。

在CPU的所有指令中,有一些指令是非常危險的,如果用錯了會導致系統崩潰。比如:清除內存數據、設置時鐘等。如果應用程序能隨意調用屬於不同權限的這些指令,那麼系統會出現各種各樣的無解問題。所以,CPU將指令分為特權指令和非特權指令,對於那些危險的指令,只允許操作系統及其相關模塊使用,普通的應用程序只能使用那些不會造成災難的指令。比如普通應用程序企圖執行Ring 0指令,則Windows會顯示“非法指令”錯誤信息。而這次波及什廣的CPU漏洞,就是可以通過非法指令直接調用到Ring 0權限!所以從安全角度看確實危險,唯一的好消息是目前尚未有人實現過這種攻擊。

Intel最近被暴露出的問題絕不止這些,大家還記得前些日子Intel的另一個漏洞嗎?ME管理引擎引發的恐慌其實比這次漏洞還要可怕:近三年Intel CPU中的ME管理引擎是基於Ring -3權限的——這個權限就是至高無上的,它不依賴於任何系統之上,說白了就是CPU內部的一個完整系統!可以說,如果這個漏洞被人掌握了技術攻擊方式,你的電腦從技術上將不屬於你,因為ME管理引擎使用的權限太高了,就是CPU內的一個原生操作系統!當然了,現在也有相應補丁,而且只影響4代酷睿以後的產品,范圍比這此的情況小不少。



顯然,CPU的權限管理是非常重要的,不過小編覺得普通用戶大可不必擔心,什至小編認為現階段普通用戶自己的電腦都沒有打補丁的必要,這些漏洞的技術細節不會公布,意味著短時間內我們不會面臨巨大的安全威脅,尤其家用電腦還要考慮性能損失的部分,不如靜觀其變。

內容來源皆為自媒體,轉貼請附上原文連結。
原文轉發,文章內金額部分多以人民幣為單位。
投稿或版權問題,請您聯繫:service#taiwanfansclub.com ( # ~> @ )
姓名標示─非商業性─相同方式分享
快速回復 返回頂部 返回列表