6月11日消息,據(jù)媒體報(bào)道,近日,麻省理工學(xué)院(MIT)的研究人員發(fā)現(xiàn),蘋(píng)果的M1芯片存在一個(gè)“無(wú)法修補(bǔ)”的硬件漏洞,攻擊者可以利用該漏洞突破其最后一道安全防御。
報(bào)道稱(chēng),該漏洞存在于蘋(píng)果M1芯片中使用的硬件級(jí)安全機(jī)制中,被稱(chēng)為“指針身份驗(yàn)證”(PAC)——這是Arm處理器當(dāng)中廣泛存在的一項(xiàng)硬件安全機(jī)制,它通過(guò)使用加密哈希保護(hù)指針來(lái)保護(hù)內(nèi)存中的指針完整性,該加密哈希驗(yàn)證指針無(wú)法被修改,系統(tǒng)使用它來(lái)驗(yàn)證程序?qū)κ鼙Wo(hù)指針的使用。當(dāng)使用錯(cuò)誤的PAC時(shí),程序會(huì)崩潰。
根據(jù)此前Arm公布的信息顯示,PAC最小化了攻擊面,使得面向返回編程(ROP)漏洞減少了60%以上、面向跳轉(zhuǎn)編程(JOP)漏洞減少了40%以上。
如果是同時(shí)使用PAC和分支目標(biāo)標(biāo)識(shí)符(BTI)這兩個(gè)硬件安全機(jī)制的Arm CPU則能夠進(jìn)一步提升安全性,Glibc 中攻擊者可用的小工具數(shù)量減少了約 98%,而代碼大小僅增加了 2% 左右。
不過(guò),麻省理工學(xué)院計(jì)算機(jī)科學(xué)和人工智能實(shí)驗(yàn)室(CSAIL)的研究人員Joseph Ravichandran、Weon Taek Na、Jay Lang 和 Mengjia Yan 創(chuàng)造了一種新穎的硬件攻擊方式,它結(jié)合了內(nèi)存損壞和推測(cè)執(zhí)行攻擊來(lái)回避安全功能。
該攻擊表明,指針身份驗(yàn)證可以不留痕跡地被攻破,并且由于它是一種硬件安全機(jī)制,因此蘋(píng)果將無(wú)法通過(guò)更新M1芯片的軟件補(bǔ)丁來(lái)修復(fù)它。
MIT CSAIL研究團(tuán)隊(duì)將其攻擊方式稱(chēng)之為“Pacman”,它通過(guò)硬件側(cè)信道攻擊來(lái)暴力破解PAC值(由于PAC值只有一定數(shù)量,研究人員可以嘗試所有值以找到正確的值),并抑制崩潰,從而啟動(dòng)連鎖攻擊,最終構(gòu)建控制流劫持攻擊。
“PAC的大小相對(duì)較小,直接的暴力攻擊會(huì)導(dǎo)致足夠多的崩潰來(lái)檢測(cè)惡意行為——更不用說(shuō)程序重新啟動(dòng)會(huì)導(dǎo)致 PAC 被刷新。但Pacman攻擊的關(guān)鍵在于,使用推測(cè)執(zhí)行攻擊,通過(guò)微架構(gòu)側(cè)通道秘密泄露PAC驗(yàn)證結(jié)果,而不會(huì)導(dǎo)致崩潰?!痹撜撐慕忉尩馈?/p>
在概念驗(yàn)證中,研究人員證明該攻擊甚至可以針對(duì)內(nèi)核(設(shè)備操作系統(tǒng)的軟件核心)起作用,這“對(duì)所有啟用指針身份驗(yàn)證的 Arm 系統(tǒng)的未來(lái)安全工作具有重大影響。”MIT CSAIL的博士生和該研究論文的共同主要作者Joseph Ravichandran說(shuō)道。
“指針身份驗(yàn)證背后的想法是,如果所有其他防御方法都失敗了,你仍然可以依靠它來(lái)防止攻擊者控制你的系統(tǒng)?!?Joseph Ravichandran補(bǔ)充道:“但是,我們已經(jīng)證明,作為最后一道防線的指針身份驗(yàn)證并不像我們?cè)?jīng)認(rèn)為的那樣的安全?!?/p>
到目前為止,蘋(píng)果已經(jīng)在其所有基于Arm架構(gòu)的定制芯片上內(nèi)置了PAC功能,包括 M1、M1 Pro 和 M1 Max等。此外,包括高通和三星在內(nèi)的許多其他芯片廠商已經(jīng)宣布或預(yù)計(jì)將推出新處理器都將支持該硬件級(jí)安全功能。
雖然,MIT CSAIL的研究人員表示,尚未對(duì)蘋(píng)果剛剛發(fā)布的 M2 芯片的進(jìn)行測(cè)試攻擊,但該芯片也支持PAC功能。
根據(jù)此前Arm公布的信息顯示,不僅基于Armv8.3/8.6指令集的CPU內(nèi)置了PAC功能,最新的Armv9指令集的CPU同樣也內(nèi)置了PAC功能。
MIT CSAIL的研究人員在研究論文中說(shuō):“如果不解決這個(gè)問(wèn)題,我們發(fā)現(xiàn)的這項(xiàng)攻擊方式將在未來(lái)幾年影響大多數(shù)移動(dòng)設(shè)備,甚至可能影響桌面設(shè)備。”
據(jù)介紹,研究人員已經(jīng)向蘋(píng)果公司展示了他們的研究結(jié)果。不過(guò),他們也指出,Pacman攻擊并不能繞過(guò) M1 芯片上的所有安全機(jī)制,它只是針對(duì)PAC可以防止的現(xiàn)有的漏洞。
Joseph Ravichandran表示:“到目前為止,還沒(méi)有使用Pacman創(chuàng)建端到端攻擊,因此沒(méi)有直接的擔(dān)憂。Pacman需要一個(gè)現(xiàn)有的軟件漏洞才能發(fā)揮作用——攻擊者需要能夠?qū)懭胍绯鰞?nèi)存。攻擊者可以使用現(xiàn)有的漏洞與我們的謂的‘Pacman Gadget’相結(jié)合——受攻擊中的一個(gè)代碼序列,允許推測(cè)性地使用簽名指針。”
目前,該研究團(tuán)隊(duì)已將該問(wèn)題通知蘋(píng)果,并將在 6 月 18 日的計(jì)算機(jī)架構(gòu)國(guó)際研討會(huì)上披露更多細(xì)節(jié)。
在該消息被曝光之后,蘋(píng)果公司發(fā)言人 Scott Radcliffe 對(duì)外回應(yīng)稱(chēng):“我們要感謝研究人員的合作,因?yàn)檫@個(gè)概念證明促進(jìn)了我們對(duì)這些技術(shù)的理解。根據(jù)我們的分析以及研究人員與我們分享的詳細(xì)信息,我們得出的結(jié)論是,此問(wèn)題不會(huì)對(duì)我們的用戶構(gòu)成直接風(fēng)險(xiǎn),并且不足以自行繞過(guò)操作系統(tǒng)安全保護(hù)。”
值得一提的是,Pacman是在蘋(píng)果M1芯片中被發(fā)現(xiàn)的第三個(gè)漏洞。去年5月,安全研究員赫克托馬丁 (Hector Martin) 發(fā)現(xiàn)了一個(gè)名為M1RACLES的漏洞,該漏洞允許兩個(gè)應(yīng)用程序秘密交換數(shù)據(jù)。
上個(gè)月,多個(gè)大學(xué)組成的團(tuán)隊(duì)又發(fā)現(xiàn)了一個(gè)名為 Augury 的漏洞,可導(dǎo)致芯片泄漏靜態(tài)數(shù)據(jù),不過(guò)目前還沒(méi)有展示出任何可行的漏洞利用方法。
但是與前兩個(gè)漏洞不同的是,Pacman漏洞利用的是M1本身的存在的硬件安全機(jī)制PAC,而且該機(jī)制還廣泛存在于其他Arm架構(gòu)的處理器當(dāng)中,這也使得該漏洞可能將會(huì)帶來(lái)更大的影響。