首個(gè)針對(duì)Linux的UEFI引導(dǎo)工具曝光
近期,網(wǎng)絡(luò)安全研究人員發(fā)現(xiàn)了首個(gè)針對(duì)Linux系統(tǒng)的統(tǒng)一可擴(kuò)展固件接口(UEFI)引導(dǎo)工具(bootkit),被其作者命名為“Bootkitty”。該工具由名為BlackCat的組織開發(fā),于2024年11月5日被上傳至VirusTotal平臺(tái),當(dāng)前仍為概念驗(yàn)證(僅在某些Ubuntu版本和配置上起作用),尚無證據(jù)表明其在實(shí)際攻擊中被利用。
Bootkit是一種高級(jí)Rootkit惡意軟件,過去主要針對(duì)Windows系統(tǒng)。通過感染計(jì)算機(jī)的啟動(dòng)過程,在用戶每次開機(jī)后搶在操作系統(tǒng)內(nèi)核之前加載,在內(nèi)核(劫持)級(jí)別完全控制系統(tǒng)。Bootkit可以隱藏文件、修改啟動(dòng)項(xiàng)、記錄密碼、安裝間諜軟件、格式化硬盤等。
Bootkitty的技術(shù)特征
ESET研究人員Martin Smolár和Peter Stry?ek指出,Bootkitty的主要目的是禁用內(nèi)核的簽名驗(yàn)證功能,并通過Linux初始化進(jìn)程預(yù)加載兩個(gè)未知的ELF二進(jìn)制文件。
值得注意的是,Bootkitty使用自簽名證書進(jìn)行簽名,因此在啟用了UEFI安全啟動(dòng)的系統(tǒng)上無法執(zhí)行,除非攻擊者已安裝了受控證書。無論UEFI安全啟動(dòng)狀態(tài)如何,該引導(dǎo)工具主要用于引導(dǎo)Linux內(nèi)核,并在GNU GRand Unified Bootloader(GRUB)執(zhí)行前,在內(nèi)存中修補(bǔ)用于完整性驗(yàn)證的函數(shù)響應(yīng)。
具體而言,Bootkitty會(huì)掛鉤UEFI認(rèn)證協(xié)議中的兩個(gè)函數(shù),以繞過UEFI完整性檢查。隨后,它還修補(bǔ)了合法GRUB引導(dǎo)加載程序中的三個(gè)不同函數(shù),以規(guī)避其他完整性驗(yàn)證。
關(guān)聯(lián)模塊的發(fā)現(xiàn)
ESET的調(diào)查還發(fā)現(xiàn)了一個(gè)可能相關(guān)的未簽名內(nèi)核模塊,該模塊能夠部署名為BCDropper的ELF二進(jìn)制文件,在系統(tǒng)啟動(dòng)后加載另一個(gè)未知的內(nèi)核模塊。該內(nèi)核模塊同樣由BlackCat開發(fā),具備隱藏文件、進(jìn)程和開放端口等rootkit相關(guān)功能。目前尚無證據(jù)表明該工具與ALPHV/BlackCat勒索軟件組織存在關(guān)聯(lián)。
安全建議
盡管Bootkitty目前僅為概念驗(yàn)證,但其出現(xiàn)打破了現(xiàn)代UEFI引導(dǎo)工具僅針對(duì)Windows系統(tǒng)的認(rèn)知。這強(qiáng)調(diào)了為潛在未來威脅做好準(zhǔn)備的必要性。建議系統(tǒng)管理員和安全專業(yè)人員采取以下措施:
- 啟用UEFI安全啟動(dòng):確保系統(tǒng)啟用了UEFI安全啟動(dòng)功能,以防止未經(jīng)授權(quán)的引導(dǎo)加載程序執(zhí)行。
- 定期更新固件和軟件:保持系統(tǒng)固件和軟件的最新狀態(tài),以修補(bǔ)已知漏洞。
- 監(jiān)控系統(tǒng)完整性:使用可信的平臺(tái)模塊(TPM)等技術(shù),監(jiān)控系統(tǒng)啟動(dòng)過程的完整性。
- 實(shí)施嚴(yán)格的訪問控制:限制對(duì)UEFI設(shè)置和引導(dǎo)加載程序的訪問權(quán)限,防止未經(jīng)授權(quán)的更改。
通過采取上述措施,可以有效降低類似Bootkitty引導(dǎo)工具對(duì)Linux系統(tǒng)構(gòu)成的潛在威脅和風(fēng)險(xiǎn)。