PACMAN,一種針對 Apple M1 芯片的新攻擊技術(shù)
Security Affairs 網(wǎng)站披露,攻擊者可以通過一種名為 PACMAN 的新硬件攻擊技術(shù),繞過蘋果 M1 處理器上的指針認證(PAC),入侵 MacOS 系統(tǒng)。
據(jù)悉,這項技術(shù)是由麻省理工學院計算機科學與人工智能實驗室(CSAIL)的研究人員Joseph Ravichandran, Weon Taek Na, Jay Lang和Mengjia Yan 共同發(fā)現(xiàn)。
研究人員發(fā)現(xiàn),指針認證碼(PAC)允許檢測和防范內(nèi)存中指針意外更改。
指針認證實現(xiàn)了一個特殊的 CPU 指令,在存儲指針之前,將一個加密簽名(PAC)添加到指針未使用的高階位,當從內(nèi)存中讀回指針后,該簽名會被另一條指令移除并進行驗證。
在寫入和讀取之間對存儲值的任何更改都會使簽名無效,這一事件被解釋為內(nèi)存損壞,并設(shè)置指針中的高階位,使指針無效。
研究人員在其發(fā)表的研究論文中表示,利用推測執(zhí)行攻擊來繞過一個重要的內(nèi)存保護機制--ARM 指針身份認證,這是一個用于執(zhí)行指針完整性的安全功能。之后研究人員提出了 PACMAN,這是一種新的攻擊方法,它可以通過微架構(gòu)的側(cè)邊渠道投機性地泄露 PAC 驗證結(jié)果,而不會造成任何崩潰。
這一攻擊技術(shù)消除了在使用指針身份驗證保護的平臺上進行控制流劫持攻擊的主要障礙。
研究人員已通知蘋果公司
值得一提的是,研究人員指出,PACMAN 攻擊只是一種利用技術(shù),并不足以破壞一個系統(tǒng)。但壞消息是,PACMAN 使用的硬件機制不能用軟件更新來修補。
目前,研究人員設(shè)計了一個 PAC 諭令,以區(qū)分正確的 PAC 和不正確的 PAC,不會引起任何系統(tǒng)崩潰。
攻擊者可以暴力破解正確的 PAC 值,同時抑制崩潰,并對啟用 PA 的受害者程序或操作系統(tǒng)構(gòu)建控制流劫持攻擊。 PACMAN 攻擊的關(guān)鍵洞察力是使用推測執(zhí)行通過微架構(gòu)側(cè)通道秘密泄露 PAC 驗證結(jié)果。
一個 PACMAN gadget 包含以下兩個操作:
- 一個指針驗證操作,推測性地驗證猜測的 PAC 的正確性;
- 一個傳輸操作,通過微架構(gòu)側(cè)通道推測性地傳輸驗證結(jié)果。
指針驗證操作由驗證指令(ARMv8.3 中的新指令)執(zhí)行,如果驗證成功,則輸出有效指針,否則輸出無效指針。
最后,研究人員指出,這種攻擊對于希望實現(xiàn)具有指針身份驗證功能的處理器設(shè)計人員具有重要意義,并對未來控制流完整性原語的安全性產(chǎn)生廣泛影響。目前,研究人員已經(jīng)與蘋果公司分享了其發(fā)現(xiàn)。