眾所周知蘋果Mac電腦很安全,但是隨著惡意軟件的發(fā)展,憑借現(xiàn)有Mac安全機(jī)制想要完全對(duì)抗惡意軟件的感染可能會(huì)變得更加艱難。近期一種新型惡意軟件的問(wèn)世,使得黑客通過(guò)短暫的物理接觸,讓2011年以后生產(chǎn)的蘋果Mac電腦感染ROM級(jí)惡意程序。
背景
近日,安全研究人員發(fā)現(xiàn)一種讓蘋果電腦感染ROM級(jí)惡意程序的方法。
這個(gè)攻擊由編程專家Trammell Hudson在德國(guó)漢堡舉辦的年度混沌計(jì)算機(jī)大會(huì)上展現(xiàn),他證明這將使重寫蘋果Mac計(jì)算機(jī)固件成為可能。
這種攻擊被命名為“Thunderstrike(雷擊)”。它實(shí)際上利用了一個(gè)在ThunderboltOption ROM中有些歷史的漏洞,該漏洞在2012年首次被發(fā)現(xiàn)但仍未修補(bǔ)。通過(guò)受感染的Thunderbolt設(shè)備在蘋果電腦的boot ROM中分配一段惡意程序,Thunderstrike 將可以感染蘋果可擴(kuò)展固件接口(EFI)。查看更多信息點(diǎn)我
科普(本文涉及的專有名詞解釋)
Thunderbolt(雷電)接口:英特爾在2009年設(shè)計(jì)完成的某種接口,替代并統(tǒng)一目前電腦上數(shù)量繁多性能參差不齊的擴(kuò)展接口。雷電接口形狀與MiniDisplayport一樣,并且可以對(duì)其兼容。其理論最高傳輸速度可達(dá)單向10Gbps,是USB 3.0規(guī)范的2倍。并且在未來(lái)會(huì)提供對(duì)存儲(chǔ)設(shè)備的支持,可以大幅提升傳輸帶寬。
該技術(shù)由蘋果和Intel共同開(kāi)發(fā)、推廣,蘋果新款MacBook Pro中便使用了全新的Intel雷電技術(shù)。
Option ROM:PCI Option ROM又叫PCI Expansion ROM。 它是用于設(shè)備初始化和系統(tǒng)boot的code。有的PCI Option ROM被存放在板卡上,而有的則保存在BIOS的binary里面。
Bootkit:是更高級(jí)的Rootkit,該項(xiàng)目通過(guò)感染MBR(磁盤主引記錄)的方式,實(shí)現(xiàn)繞過(guò)內(nèi)核檢查和啟動(dòng)隱身。可以認(rèn)為,所有在開(kāi)機(jī)時(shí)比Windows內(nèi)核更早加載,實(shí)現(xiàn)內(nèi)核劫持的技術(shù),都可以稱之為Bootkit。
循環(huán)冗余校驗(yàn)算法:要計(jì)算n位的CRC值,將待CRC的數(shù)據(jù)左移n位(即在其最右端添加n個(gè)0),如果待CRC數(shù)據(jù)的最高位為0,不進(jìn)行任何操作,否則將其與事先設(shè)定好的除數(shù)(divisor)進(jìn)行異或操作,然后將除數(shù)右移一位。重復(fù)上述兩個(gè)操作直到除數(shù)到達(dá)待CRC數(shù)據(jù)的右端。
EFI可擴(kuò)展固件接口: (英文名Extensible Firmware Interface 或EFI)是由英特爾,一個(gè)主導(dǎo)個(gè)人電腦技術(shù)研發(fā)的公司推出的一種在未來(lái)的類PC的電腦系統(tǒng)中替代BIOS的升級(jí)方案。
UEFI:全稱“統(tǒng)一的可擴(kuò)展固件接口”(Unified Extensible Firmware Interface), 是一種詳細(xì)描述類型接口的標(biāo)準(zhǔn)。這種接口用于操作系統(tǒng)自動(dòng)從預(yù)啟動(dòng)的操作環(huán)境,加載到一種操作系統(tǒng)上。
惡意軟件“雷擊(Thunderstrike)”
原理:
一旦安裝了這種名“雷擊(Thunderstrike)”的惡意軟件,它會(huì)替換Mac下的引導(dǎo)固件程序,以高優(yōu)先級(jí)的指令獲得系統(tǒng)控制權(quán)限。這款惡意軟件(bootkit)可以繞過(guò)固件程序密碼驗(yàn)證及硬盤密碼驗(yàn)證,在操作系統(tǒng)啟動(dòng)時(shí)就預(yù)裝上后門。
該惡意軟件安裝以后,將獨(dú)立于操作系統(tǒng)和硬盤驅(qū)動(dòng),因此格式化硬盤和重裝操作系統(tǒng)也拿它沒(méi)辦法。
原因是該惡意軟件取代了蘋果的數(shù)字簽名。本來(lái)Mac下運(yùn)行的固件程序都需要數(shù)字簽名進(jìn)行授權(quán),現(xiàn)在數(shù)字簽名被替換了后也就沒(méi)有了相應(yīng)的限制。同時(shí),當(dāng)前很少有方法可以清理受惡意軟件感染了的引導(dǎo)系統(tǒng)。目前這個(gè)概念首次在OS X平臺(tái)提出,暫時(shí)在真實(shí)環(huán)境下并沒(méi)有發(fā)現(xiàn)這樣的攻擊實(shí)例,現(xiàn)有的技術(shù)也沒(méi)法對(duì)這類攻擊進(jìn)行精確檢測(cè)。
傳播方式:
該惡意軟件通過(guò)連接Mac機(jī)器Thunderbolt(雷電)接口的外接設(shè)備進(jìn)行傳播。當(dāng)攻擊者使用帶有惡意軟件的外接設(shè)備插入Mac機(jī)器中進(jìn)行引導(dǎo)時(shí),會(huì)把惡意Option ROM注入可擴(kuò)展固件接口(EFI)。
Option ROM負(fù)責(zé)啟用Mac系統(tǒng)的管理模式,并在系統(tǒng)加載前激活其他低級(jí)指令。它替換了Mac下的RSA密鑰(key),使得不經(jīng)過(guò)授權(quán)的固件程序也可以安裝。這樣的話,操控了生殺大權(quán)的Thunderbolt外接設(shè)備就可以隨意往Mac安裝惡意固件程序,沒(méi)有新的key很難將它去除。
如何實(shí)施攻擊
從表面上看,這種攻擊行為需要短時(shí)間接觸物理機(jī),也許有童鞋會(huì)認(rèn)為這種攻擊實(shí)現(xiàn)難度比較高。
但事實(shí)未必如此,現(xiàn)實(shí)中仍然有很多攻擊機(jī)會(huì):比如,某名不懷好意的酒店服務(wù)人員可能有機(jī)會(huì)接觸你的電腦,海關(guān)陸卡的人員也有很多機(jī)會(huì)接觸他人電腦。前NSA員工斯諾登泄密的文檔里也顯示,從事美國(guó)情報(bào)工作的相關(guān)人員會(huì)攔截那些運(yùn)往目標(biāo)組織的設(shè)備硬件,在中途悄悄將修改過(guò)的固件程序裝上去。
如何實(shí)施Thunderstrike式攻擊呢?將惡意改裝過(guò)的Thunderbolt設(shè)備插入Mac并將其重啟就行。如果你碰到一臺(tái)Mac機(jī)器開(kāi)機(jī)后卻發(fā)現(xiàn)存在密碼校驗(yàn)機(jī)制,只需要按下電源鍵幾秒鐘對(duì)機(jī)器進(jìn)行硬重啟,固件密碼、硬盤密碼,以及用戶密碼等防護(hù)手段都將失效,因?yàn)镺ption ROMs在這些保護(hù)措施進(jìn)行檢測(cè)之前已經(jīng)加載了。
“雷擊(Thunderstrike)”的歷史
Thunderstrike在去年12月下旬于混沌通信大會(huì)亮相。該漏洞由Trammell Hudson發(fā)現(xiàn),這名安全研究員供職于紐約一家名為Two Sigma Investments的高科技對(duì)沖基金公司。當(dāng)初發(fā)現(xiàn)這個(gè)漏洞時(shí),他只是試圖對(duì)公司的Mac筆記本進(jìn)行安全加固。Hudson自稱為一名逆向愛(ài)好者,以前曾以創(chuàng)建佳能單反相機(jī)的開(kāi)源編程擴(kuò)展包Magic Lantern而出名。
2012年黑帽大會(huì)曾展示了一個(gè)繞過(guò)OS X FileVault保護(hù),然后安裝rootkit的攻擊案例。Thunderstrike的實(shí)現(xiàn)與其比較相似。如Thunderstrike一般,那款2012年黑帽大會(huì)的exp也使用了Thunderbolt端口,對(duì)引導(dǎo)進(jìn)程注入了惡意payload。但是,它卻不能對(duì)引導(dǎo)ROM本身進(jìn)行更改。為了繞過(guò)這一限制,研究人員寫出了針對(duì)EFI系統(tǒng)分區(qū)的bootkit。
Thunderstrike的其中一個(gè)技術(shù)突破點(diǎn),是其可以通過(guò)引導(dǎo)ROM固件卷的驗(yàn)證。Hudson在常規(guī)驗(yàn)證過(guò)程中發(fā)現(xiàn)一個(gè)未證明的CRC32循環(huán)冗余校驗(yàn)程序,正是從這個(gè)里面他得到了啟發(fā)。第二次技術(shù)突破點(diǎn),則是Hudson發(fā)現(xiàn)Option ROMs會(huì)在恢復(fù)引導(dǎo)模式進(jìn)行加載。就是這兩個(gè)突破,讓Hudson想出了如何替換蘋果的現(xiàn)有的EFI代碼。
Thunderstrike只是在12月混沌通信大會(huì)上演示的基于EFI的攻擊之一,該大會(huì)演示了至少演示了兩個(gè)以上的同類型攻擊。其中有一個(gè)話題單獨(dú)剖析了可擴(kuò)展固件接口(UEFI),討論了如何使用相似的機(jī)制用來(lái)引導(dǎo)啟動(dòng)某些Win或者Linux機(jī)器。Hudson表示,有一種名為黑暗絕地(Dark Jedi)的技術(shù),黑客不需要進(jìn)行物理接觸,只需要遠(yuǎn)程實(shí)施攻擊。
本周早些時(shí)候,美國(guó)CERT發(fā)布了關(guān)于使用UEFI的設(shè)備的三個(gè)漏洞的預(yù)警:
http://www.kb.cert.org/vuls/id/976132
http://www.kb.cert.org/vuls/id/766164
http://www.kb.cert.org/vuls/id/533140
此外,安全公司Bromium的某名研究員在關(guān)于UEFI討論中,也發(fā)布有短篇的writeup。
漏洞作者的建議
Hudson表示蘋果公司只會(huì)在局部修補(bǔ)漏洞,正是這個(gè)情況造就了“雷擊(Thunderstrike)”漏洞。想要補(bǔ)救該漏洞,就需要禁止Option ROMs在固件更新時(shí)進(jìn)行加載。Hudson指出,這個(gè)措施能有效地遏制其目前發(fā)現(xiàn)的漏洞影響。蘋果公司已經(jīng)升級(jí)了Mac Mini和iMac Retina 5k,而且打算盡量在短時(shí)間內(nèi)向用戶推廣。
但是Hudson指出,蘋果的這次升級(jí)并非一個(gè)完美的解決方案。Option ROMs仍然實(shí)行的是普通引導(dǎo)模式,所以2012年的那種攻擊手法仍然能夠起效,導(dǎo)致老版Mac在更新固件版本后反而會(huì)受到該類攻擊。
在蘋果提出完美修復(fù)方案之前,并沒(méi)太多防御“雷擊(Thunderstrike)”的可行方案。
也許在Thunderbolt端口澆上大量的環(huán)氧樹(shù)脂膠確實(shí)會(huì)增加攻擊難度,這樣的話黑客不得不拆開(kāi)外殼才能才能接觸到底層的Flash ROM芯片。但是畢竟這是以禁用關(guān)鍵的功能為代價(jià)的……另一個(gè)不靠譜的解決方案,就是讓電腦主人寸步不離機(jī)器,不過(guò)就算放在酒店保險(xiǎn)箱和儲(chǔ)物盒密封,也總會(huì)有被人進(jìn)行物理接觸的可能。、