譯者 | 晶顏
審校 | 重樓
如今,所有主流的操作系統(tǒng)和軟件程序都會自動接收安全更新,以幫助用戶保護他們的系統(tǒng)免受每月發(fā)現(xiàn)的大量漏洞的攻擊。但對于影響我們日常生活的數(shù)十億嵌入式設備來說,情況卻并非如此。
從關鍵基礎設施和醫(yī)院中所用的設備到我們家中使用的設備,其中許多都依賴于稱為“固件”的低級軟件來運行。所謂“固件”是直接與硬件組件交互和控制的代碼,它通常存儲于附加在電路板上的特殊只讀存儲器芯片中。和其他形式的軟件一樣,固件同樣存在安全問題。
更新固件的過程通常被稱為“刷機”(flashing),其復雜性差異很大,通常需要手動步驟和對設備的物理訪問,有些設備甚至無法被最終用戶更新。這使得修補固件漏洞成為一個漫長而復雜的過程,這就是固件漏洞往往會在設備中保持多年(通常是永遠)未修補的原因所在。
以下是近年來發(fā)現(xiàn)的一些關鍵固件漏洞,這些漏洞影響了大量設備和行業(yè),需要更新固件進行修復。
1.BlueBorne
2017年,國外安全廠商Armis公布了8個藍牙漏洞,允許攻擊者無視藍牙版本完全控制設備和數(shù)據(jù)。Armis將這組漏洞合為名叫“BlueBorne”的攻擊媒介,危及支持藍牙功能的移動、桌面和物聯(lián)網(wǎng)操作系統(tǒng),包括Linux、Android、Windows和macOS等設備。
憑借這些漏洞,黑客能夠通過無線方式利用藍牙協(xié)議攻擊和控制設備、訪問數(shù)據(jù)和網(wǎng)絡,甚至滲透到某些安全的物理隔離網(wǎng)絡,并在設備間傳播惡意軟件。期間,攻擊者無需與目標設備進行配對。
據(jù)估計,這些漏洞影響了超過50億臺設備。在電腦上,通過操作系統(tǒng)更新更容易修復,而支持藍牙的智能手表、電視、醫(yī)療設備、汽車信息娛樂系統(tǒng)、可穿戴設備和其他物聯(lián)網(wǎng)設備則需要固件更新。
2.KRACK
KRACK,即密鑰重裝攻擊(Key Reinstallation Attack),是由Wi-Fi安全研究員、魯汶大學教授Mathy Vanhoef于2016年設計的一種攻擊。它利用了當時用于保護大多數(shù)無線網(wǎng)絡的WPA2無線安全標準的一個弱點。
在密鑰重裝攻擊當中,攻擊者會誘導受害者重新安裝已經(jīng)被使用過的密鑰。具體實現(xiàn)方法是操縱并重播密碼握手消息。當受害者重新安裝密鑰時,增量發(fā)送分組號(即隨機數(shù))以及接收分組號(即重播計數(shù)器)等相關參數(shù)將被重置為初始值。從本質上來講,為了保證安全性,每條密鑰只能安裝并使用一次。遺憾的是,WPA2協(xié)議中并不包含這一強制要求。通過操縱加密握手過程,攻擊者將能夠在實踐當中利用這一致命缺陷。
具體來說,攻擊者能夠利用這種攻擊方法讀取此前被認為是安全加密的信息,進而竊取各類敏感信息,具體包括信用卡號碼、密碼、聊天信息、電子郵件以及圖片等等。
由于該標準本身存在缺陷,WPA2在所有類型設備(包括家庭路由器和其他物聯(lián)網(wǎng)設備)中的實現(xiàn)都受到了影響。修復該漏洞需要固件更新,因此許多不受支持的設備直到今天仍然容易受到攻擊。
3.FragAttacks
2021年,安全研究人員Mathy Vanhoef發(fā)現(xiàn)的一系列安全漏洞,合稱為“碎片聚合攻擊”(FragAttacks),這些漏洞影響了許多設備(包括電腦、智能手機和智能設備)上的Wi-Fi實現(xiàn),且最早可以追溯到1997年。這意味著,自1997年以來的所有Wi-Fi設備無一幸免。
新發(fā)現(xiàn)的漏洞中,有三個是影響大部分設備的幀聚合和幀碎片功能Wi-Fi 802.11標準設計缺陷,其他的則是Wi-Fi產品的編程錯誤。這些漏洞影響所有Wi-Fi安全協(xié)議,包括WPA3身份驗證,它們允許攻擊者在易受攻擊的Wi-Fi網(wǎng)絡范圍內竊取用戶信息并攻擊和控制設備。
4.SSID混淆
2024年5月,Mathy Vanhoef和一位魯汶大學的同事發(fā)現(xiàn)了另一種名為“SSID混淆”的攻擊。該攻擊利用Wi-Fi標準的一個弱點,誘騙用戶設備連接到非法接入點,影響了所有操作系統(tǒng)上的所有Wi-Fi客戶端。
據(jù)了解,該設計缺陷的根因在于IEEE 802.11標準并不總是要求網(wǎng)絡的SSID進行連接認證。SSID識別唯一的無線訪問點和網(wǎng)絡,因此與臨近區(qū)域的其它網(wǎng)絡有所不同。問題在于,IEEE 802.11標準并不強制要求SSID包含在密鑰衍生流程中。換句話說,SSID并不總是客戶端設備連接到SSID時認證流程的一部分。在這些實現(xiàn)中,攻擊者有機會設置惡意訪問點、嗅探可信網(wǎng)絡的SSID,并利用它將受害者降級到可信度更低的網(wǎng)絡中,從而可能導致數(shù)據(jù)攔截和其他安全漏洞。
5.BadUSB
BadUSB最早是在2014年的黑帽大會上研究人員JakobLell和Karsten Nohl提出并展示的。不同于老式的U盤病毒,它利用了USB協(xié)議中的一個漏洞,用戶只需插入BadUSB,就會自動執(zhí)行預置在固件中的惡意代碼。
BadUsb插入后,會模擬鍵盤鼠標對電腦進行操作,通過這些操作打開電腦的命令終端,并執(zhí)行一條命令,這條命令將從指定網(wǎng)址下載其他代碼并于后臺靜默運行。這些代碼功能包括:竊取信息、反彈shell、發(fā)送郵件等,從而實現(xiàn)控制目標機或者竊取信息的目的。
惡意代碼存在于U盤的固件中,PC上的殺毒軟件無法訪問到U盤存放固件的區(qū)域,因此也就意味著殺毒軟件和U盤格式化都無法防御BadUSB的攻擊。
6.Thunderstrike和Thunderstrike 2
2015年初,編程專家Trammell Hudson在德國漢堡舉辦的“年度混沌計算機大會”上展現(xiàn)這種名為“Thunderstrike(雷擊)”的攻擊方式。它實際上利用了一個在ThunderboltOption ROM中有些歷史的漏洞,該漏洞在2012年首次被發(fā)現(xiàn)但仍未修補。
一旦安裝Thunderstrike惡意軟件,它會替換Mac下的引導固件程序,以高優(yōu)先級的指令獲得系統(tǒng)控制權限。這款惡意軟件(bootkit)可以繞過固件程序密碼驗證及硬盤密碼驗證,在操作系統(tǒng)啟動時就預裝上后門。該惡意軟件安裝以后,將獨立于操作系統(tǒng)和硬盤驅動,因此格式化硬盤和重裝操作系統(tǒng)也拿它沒辦法。
幾個月后,LegbaCorp安全研究團隊又制造出了Thunderstrike 2,它可以在固件層面對受感染的Mac進行攻擊,也就是說一旦設備被感染將很難移除,即使重裝OS X,或者升級,甚至是重裝硬盤都無法解決。此外,Thunderstrike 2還能夠通過Thunderbolt設備進行傳播,從而產生蠕蟲的可能性。
7.Thunderclap
2019年,劍橋大學、計算機科學技術部、萊斯大學、SRI國際的研究人員發(fā)現(xiàn),配有Thunderbolt接口并運行Windows、macOS、Linux或FreeBSD的現(xiàn)代計算機易受大量直接內存訪問(DMA) 攻擊。這些漏洞被統(tǒng)稱為“Thunderclap”,可被利用以系統(tǒng)上可能的最高權限級別運行任意代碼,可能訪問或竊取密碼、銀行登錄憑據(jù)、加密密鑰、私人文件、瀏覽其他敏感數(shù)據(jù)。
這些Thunderclap漏洞使得攻擊者能夠擁有對機器內存的直接且不受限的訪問權限,因為這些端口具有底層且權限特別高的直接內存訪問權限(DMA),從而為任意惡意外圍設備提供多于常規(guī)USB設備的權限。
8.ROCA
2017年10月中旬,來自捷克共和國Masaryk大學、英國網(wǎng)絡安全管理公司Enigma Bridge和意大利Ca' Foscari大學的安全研究員發(fā)現(xiàn)RSA加密部署中存在一個安全漏洞,他們將該漏洞稱為Return of Coppersmith's Attack(簡稱ROCA)。經(jīng)發(fā)現(xiàn),在德國半導體制造商英飛凌科技公司(Infineon Technologies AG)生產的各類廣泛的密碼芯片所使用的密碼庫中,RSA密鑰對生成過程存在該漏洞。
利用該漏洞,攻擊者可以進行實際的因數(shù)分解攻擊,計算RSA密鑰的私鑰部分。對于常用的密鑰長度(包括1024和2048位),該攻擊是可實現(xiàn)的,并且會影響2012年之前生產的芯片,這種芯片非常常見。研究人員估計,恢復這些設備生成的單個2048位RSA密鑰的成本約為2萬美元,1024位RSA密鑰的成本約為40美元。
9.Intel管理引擎(ME)缺陷
Intel 管理引擎(ME)是許多Intel CPU中存在的專用協(xié)處理器和子系統(tǒng),用于帶外管理任務。Intel ME運行自己的輕量級操作系統(tǒng),完全獨立于用戶安裝的操作系統(tǒng),這就是它經(jīng)常被安全社區(qū)描述為“后門”的原因所在。多年來,在Intel ME中發(fā)現(xiàn)了很多嚴重的漏洞,修復它們需要安裝計算機制造商的固件更新。因此,不受支持的系統(tǒng)不太可能收到這樣的更新。
2022年從Conti勒索軟件團伙泄露的日志顯示,該網(wǎng)絡犯罪組織正在研究如何利用Intel ME漏洞,在CPU的高度特權執(zhí)行環(huán)境“系統(tǒng)管理模式”(System Management Mode)中獲得代碼執(zhí)行權限,目的是將惡意代碼部署到計算機固件深處,以逃避安全產品的檢測。泄露的內部聊天記錄表明,該團伙已經(jīng)為此類攻擊開發(fā)了概念驗證代碼(PoC)。
10.iLOBleed和其他BMC缺陷
許多服務器主板都有基板管理控制器(BMC),它允許在主操作系統(tǒng)關閉時對機器進行帶外管理。BMC是專門的微控制器,有自己的固件和操作系統(tǒng)、專用內存、電源和網(wǎng)絡端口。它們公開了一個標準化的接口和協(xié)議,即智能平臺管理接口(IPMI)。管理員可以通過它遠程執(zhí)行維護任務,例如重新安裝操作系統(tǒng)、重新啟動無響應的服務器和部署固件更新等。多年來,在多個服務器供應商的BMC固件和IPMI實現(xiàn)中已經(jīng)發(fā)現(xiàn)了許多嚴重的漏洞。
2024年4月,思科修補了其集成管理控制器(IMC)中的兩個特權升級漏洞,該控制器用于對其許多服務器產品和設備進行帶外管理。這些漏洞已經(jīng)公開提供了概念驗證漏洞利用代碼,并可能允許經(jīng)過身份驗證的攻擊者在底層操作系統(tǒng)上以root身份執(zhí)行命令。
2023年7月,固件安全公司Eclypsium的研究人員發(fā)現(xiàn)并披露了MegaRAC的兩個漏洞。MegaRAC是世界上最大的BIOS/UEFI和BMC固件供應商美國大趨勢公司(AMI)開發(fā)的一種BMC固件。長期以來,在其部分產品中使用AMI MegaRAC的服務器制造商包括AMD、安培計算、ASRock、華碩、ARM、戴爾EMC、技嘉、惠普企業(yè)、華為、浪潮、聯(lián)想、英偉達、高通、廣達和泰安。早在2022年12月,Eclypsium就已經(jīng)披露了AMI MegaRAC的另外五個缺陷。
2022年1月,一種名為iLOBleed的惡意軟件植入物被發(fā)現(xiàn)感染了惠普企業(yè)的第8代和第9代服務器,它利用了惠普集成的Lights-Out (iLO)BMC技術中的已知漏洞。
2018年,研究人員發(fā)現(xiàn)了來自X9、X10和X11平臺的超微服務器BMC實現(xiàn)中的漏洞。當時,有來自90多個國家的4.7萬臺超微服務器及其BMC接口暴露在互聯(lián)網(wǎng)上。
雖然BMC漏洞可能是特定于供應商的,但它們也可能影響多個供應商,AMI MegaRAC漏洞就是這種情況。雖然這些接口不應該直接暴露給互聯(lián)網(wǎng),但是公開暴露BMC的服務器數(shù)量已達數(shù)萬甚至數(shù)十萬。
11.LogoFAIL和其他BIOS/UEFI漏洞
統(tǒng)一可擴展固件接口(UEFI)是計算機系統(tǒng)中固件的標準化規(guī)范——相當于舊的BIOS——包括負責在加載安裝在硬盤驅動器上的操作系統(tǒng)之前初始化計算機硬件的低級代碼。
攻擊者長期以來一直在開發(fā)感染計算機BIOS或UEFI的惡意軟件植入物,為他們提供低級持久性和隱身性,并且即便重新安裝操作系統(tǒng)或更換硬盤驅動器也能重新感染計算機。因此,現(xiàn)代UEFI大多帶有加密代碼驗證功能,如安全啟動(Secure Boot)和英特爾啟動保護(Intel Boot Guard),但安全漏洞仍然存在,允許攻擊者繞過這些機制。
2024年7月,研究人員從美國大趨勢國際公司(AMI)處發(fā)現(xiàn)了一個泄露的安全啟動私有平臺密鑰,該密鑰被7家制造商用于數(shù)百臺筆記本電腦、臺式機和服務器主板型號。
大多數(shù)PC廠商在他們的主板上使用reference UEFI實現(xiàn),這些實現(xiàn)來自三家專業(yè)軟件公司,即獨立的BIOS供應商(IBV)——American megtrends International(AMI)、Insyde software和Phoenix Technologies——然后他們根據(jù)自己的需要進行配置和定制。因此,UEFI漏洞可以影響特定的PC制造商或特定的產品線,或者它們可以影響IBV的所有UEFI代碼,因此可以同時影響多個制造商,或者可以影響所有IBV。
最近一個影響廣泛的UEFI攻擊的例子是LogoFAIL,它允許攻擊者通過允許PC制造商在啟動過程中在BIOS啟動屏幕上顯示自定義圖形的功能,輕松地將惡意代碼注入UEFI。這種攻擊是由Insyde、AMI和Phoenix固件使用的圖像解析器中的內存損壞和緩沖區(qū)溢出漏洞導致的。
2024年披露的另一種跨IBV和跨廠商UEFI攻擊是PixieFail。這種攻擊利用了廣泛使用的預啟動執(zhí)行環(huán)境(PXE)實現(xiàn)中的漏洞,PXE是UEFI的一種功能,允許通過網(wǎng)絡從映像啟動系統(tǒng),也稱為網(wǎng)絡啟動或netboot。事實證明,Arm、Insyde、AMI、Phoenix和微軟都使用了來自開源reference UEFI實現(xiàn)的PXE網(wǎng)絡堆棧,稱為TianoCore EDK II,研究人員在代碼中發(fā)現(xiàn)了拒絕服務、信息泄露、遠程代碼執(zhí)行、DNS緩存中毒和網(wǎng)絡會話劫持的漏洞。
2022年,Binarly的研究人員發(fā)現(xiàn)了12個漏洞,這些漏洞可能導致英特爾、惠普和獨立固件供應商AMI在UEFI實現(xiàn)中執(zhí)行預啟動遠程代碼。在此之前,他們還發(fā)現(xiàn)了42個與來自多個制造商的固件的SMM(系統(tǒng)管理模式)和DXE(驅動程序執(zhí)行環(huán)境)相關的高影響漏洞。
可以肯定地說,UEFI漏洞并不缺乏,即使其中一些漏洞可能特定于一個供應商或IBV,問題是PC制造商不會為過期的主板發(fā)布UEFI更新。此外,用戶沒有手動安裝UEFI更新的習慣,這些更新不會通過Windows Update等機制自動執(zhí)行。
有時,PC制造商在其UEFI固件中添加的定制功能不安全,還可能成為后門。UEFI筆記本電腦跟蹤和防盜技術“Computrace LoJack”就是一個例子,該技術被與俄羅斯軍事情報機構GRU有關聯(lián)的網(wǎng)絡間諜組織APT28濫用。
2023年5月,安全研究人員發(fā)現(xiàn),數(shù)百GB主板型號的UEFI在啟動過程中向Windows注入了一個可執(zhí)行程序。這個可執(zhí)行文件與一個名為APP Center Download & Install的功能捆綁在一起,可能會被欺騙來下載和執(zhí)行惡意軟件。換句話說,就像Computrace LoJack一樣,它可以被改造成一個高度持久的惡意軟件植入物,即使在重新安裝操作系統(tǒng)后也會重新出現(xiàn)。
12.Project Memoria和嵌入式TCP/IP棧缺陷
如今,許多消費類物聯(lián)網(wǎng)設備,如路由器、調制解調器、網(wǎng)絡附加存儲(NAS)盒和網(wǎng)絡視頻錄像機(NVR)都使用基于Linux內核的固件。但是工業(yè)和醫(yī)療嵌入式設備的固件仍然依賴于專有的實時操作系統(tǒng)(RTOSes),比如VxWorks。
盡管這意味著工業(yè)物聯(lián)網(wǎng)世界中的固件更加多樣化,但仍然有一些組件可以由不同的RTOSes共享,包括TCP/IP堆棧。這些復雜的代碼庫實現(xiàn)了Internet的一些核心協(xié)議——DNS、HTTP、FTP、ARP、ICMP等——并且是在幾十年前作為專有庫編寫的,然后出售給嵌入式操作系統(tǒng)供應商。
2020年,安全公司Forescout的研究人員與大學和其他公司合作,啟動了一個名為“Project Memoria”的項目,旨在分析工業(yè)設備中使用的專有TCP/IP堆棧。該項目的研究持續(xù)了18個月,共計發(fā)現(xiàn)了104個漏洞,其中許多是關鍵漏洞,這些漏洞存在于來自500多家供應商的25萬多款嵌入式設備模型中。
TCP/IP漏洞非常嚴重,因為它們位于解析網(wǎng)絡數(shù)據(jù)包的代碼中,所以通??梢员晃唇?jīng)身份驗證的攻擊者在網(wǎng)絡上濫用。由于代碼庫十分古老,它們影響的設備的數(shù)量和類型可能非常廣泛。許多受影響的設備已達到使用壽命,無法再接收固件更新來修復這些缺陷。
Forescout并不是唯一關注TCP/IP協(xié)議棧的公司。2019年,安全公司Armis在VxWorks的TCP/IP堆棧中也發(fā)現(xiàn)了11個嚴重漏洞。VxWorks是一個嵌入式操作系統(tǒng),廣泛應用于許多行業(yè)的20多億臺設備中。
原文標題:12 wide-impact firmware vulnerabilities and threats,作者:Lucian Constantin