ADVERTISEMENT
你的CPU數據,可能存在被竊取的風險。
這個最新被發現的英特爾CPU漏洞,讓攻擊者直接透過監視功耗的變化,便可以輕鬆獲取你的CPU數據。
漏洞一經發現,英特爾立即對此作出了補救。不過,這並不僅僅是英特爾一家的事情,其他各大廠商也都推出修補程式。
那麼,究竟是出了什麼問題?
直擊RAPL的Platypus
問題便是出在RAPL上。
RAPL,表示的是運行時平均功率限制,是允許韌體或軟體應用程式監控CPU和DRAM功耗的一個組件。
而關於具體的攻擊原理,研究人員是這麼介紹道:
透過觀察功耗的變化,區分不同的指令、操作數和記憶體負載的不同漢明權重,攻擊者便可以推斷加載的值。
這麼簡單?對,就是這麼簡單。
雖然有著KASLR、TEEs等保護一系列安全系統的保護,但是攻擊者僅僅透過RAPL,利用監視功耗值的變化,便可以繞過所有這些安全系統,獲取我們CPU的數據。
這個漏洞,是由來自格拉茨工業大學、伯明罕大學等高校的科學家發現並進行了報導。
而這種攻擊方法,被研究者命名為Platypus(鴨嘴獸),是「漏電攻擊:針對你受保護的用戶機密」(Power Leakage Attacks: Targeting Your Protected User Secrets) 的首字母縮寫。
利用監視功耗值變化的這一漏洞,研究者們也沿著這條線索,有了不少發現和預警。
首先,Platypus的攻擊在Linux系統上是最有效的,這是因為Linux核心附帶了PowerCap框架。
PowerCap是一個通用驅動程式,其用於與RAPL連接埠和其他功率限額API進行互動。而這,將允許攻擊者輕鬆讀取功耗值。
這也是Linux作為開源系統,對於功耗監視的訪問權限偏低所帶來的一個問題。
所以相比之下,Windows和macOS系統是安全的。
但是,如果你的設備上安裝英特爾的Power Gadget,那麼攻擊者便可以與RAPL連接埠進行互動。於是,攻擊也便成了可能。
此外,不論OS如何,針對英特爾SGX安全區的攻擊都可以進行,因為攻擊者針對的是SGX安全區,而非OS及CPU記憶體。
對此,研究者們做了攻擊測試進行驗證:
- 監視了RAPL功耗值僅20秒鐘,攻擊者便繞過了KASLR,開始從Linux內核中檢索數據;
- 監視100分鐘的RAPL數據,便從SGX安全區取得了RSA私鑰;
- 從SGX安全區和Linux內核記憶體空間取得AES-NI加密密鑰的攻擊稍久,需要26小時。
攻擊非常有效,而且功耗監視進行攻擊,這還是第一次。
除此之外,遠端操作讓這類攻擊是隱秘性更上了一層樓。
在遠端攻擊中,攻擊者只需將攻擊的程式碼打包在的惡意軟體之中。只要目標設備安裝或植入了該軟體,攻擊者便可以經由軟體進行功耗監視。
攻擊者無需在現場操作或者主動進攻系統,便可以悄無聲息地「偷走」設備主人的關鍵訊息。
針對漏洞的補救
悄無聲息地攻擊,是不是意味著已經有大量的數據使用者已經洩露了?
英特爾表示:
目前在學術研究領域之外,尚未發現有任何利用這種漏洞的攻擊。
雖說如此,漏洞的一經宣布,還是立即觸動了各大廠家的神經,各類修補程式也紛紛發布。
首先是英特爾及其晶片製造商,其緊急發布了一項微程式碼(CPU韌體)更新,用以防止Platypus或其他經由RAPL的攻擊。
其次,Linux核心也發布了一個更新:該更新將對RAPL介面的存取限制在「特權較高」的應用程式,使得從低級應用程式內部發起攻擊變得更加困難。
最後,AMD也發布了關於RAPL的Linux驅動程式更新。
值得一提的是,除英特爾外,幾乎所有其他晶片製造商的產品中都包含功率上限系統,包括NVIDIA,Marvell和Ampere。
雖然由於時間和成本問題,研究者並未進所有設備進行測試,但是並不代表這些設備不存在此類風險。
可以相信的是,最近各大廠商都會陸續發布相關的程式更新,讀者們留意一下即時更新,切莫讓自己的隱私被偷偷帶走了。
資料來源:
- New Platypus attack can steal data from Intel CPUs
- PLATYPUS: Software-based Power Side-Channel Attacks on x86
請注意!留言要自負法律責任,相關案例層出不窮,請慎重發文!