研究人員發現一種針對蘋果M1 CPU芯片的硬件攻擊,可在Mac系統中執行任意代碼。
指針認證,也叫指針認證碼(PAC)是在指針中加入加密簽名的安全特征,允許操作系統檢測和攔截可能會引發數據丟失或系統破壞的意外變化。MIT CSAIL研究人員發現瞭一種針對蘋果M1 CPU指針認證的硬件攻擊——PACMAN。具有被攻擊Mac設備物理訪問權限的攻擊者可以利用推測執行能力訪問Mac設備底層文件系統,並在系統中執行任意代碼。
PACMAN
PACMAN是一種可以繞過蘋果M1 CPU指針認證的新型硬件攻擊方法,是軟件和硬件攻擊的交叉和結合。主要思想是通過微架構側信道使用推測執行來靜默地泄露PAC的驗證結果。
PACMAN使用現有內存讀寫軟件漏洞,並將其轉變成可利用的原語(指針認證繞過),可以引發任意代碼執行。為此,首先需要瞭解什麼PAC值是哪個特定的受害者指針。PACMAN攻擊通過創建PAC Oracle來完成這一功能,即判斷給定的PAC是否與特定的指針相匹配。如果推測執行中的猜測錯誤,PAC Oracle不會崩潰。然後使用PAC Oracle暴力破解所有可能的PAC值。
與Spectre 攻擊類似,PACMAN攻擊是基於推測執行的,攻擊過程不會有任何日志記錄。
攻擊影響
該攻擊影響蘋果M1 CPU芯片。
漏洞時間軸
研究人員在2021年就將該漏洞和PoC代碼提交給瞭蘋果公司。蘋果公司稱側信道攻擊並不意味著會對Mac用戶帶來危險,因為需要配合安全漏洞才可以發起攻擊。蘋果公司無法修復該硬件漏洞來攔截使用該利用技術的攻擊,好消息是隻要終端用戶保持軟件安全更新,攻擊者無法利用軟件漏洞就無法使用PACMAN攻擊實現代碼執行。
該研究成果已被計算機體系結構領域的頂級會議ISCA錄用,論文下載參見:https://pacmanattack.com/paper.pdf