TPM 2.0 庫中的新漏洞對數十億物聯網和企業設備構成威脅
可信平臺模塊(TPM,也稱為ISO/IEC 11889 )是安全加密處理器的國際標準,這是一種專用微控制器,旨在通過集成的加密密鑰保護硬件。該術語也可以指符合標準的芯片。
TPM 用于數字版權管理 (DRM)、Windows Defender 、Windows 域登錄、軟件許可證的保護和執行,以及防止在線游戲作弊。
Windows 11的系統要求之一是 TPM 2.0。微軟表示,這是為了幫助提高針對固件攻擊的安全性。
Quarkslab 在 TPM2.0 參考實現中發現并于 2022 年 11 月報告的兩個漏洞現已公開,可能會影響數十億臺設備。
其中一個漏洞CVE-2023-1017涉及越界寫入,而另一個漏洞CVE-2023-1018被描述為越界讀取。網絡安全公司 Quarkslab 在 2022 年 11 月發現并報告了這些問題。
“這些漏洞可以通過向 TPM 2.0 發送惡意命令從用戶模式應用程序觸發,TPM 2.0 的固件基于受影響的 TCG 參考實現,”可信計算組 (TCG) 在一份公告中表示。
概述
在可信平臺模塊 (TPM) 2.0 參考庫規范中發現了兩個緩沖區溢出漏洞,目前處于Level 00,Revision 01.59 November 2019。有權訪問 TPM 命令接口的攻擊者可以向模塊發送惡意制作的命令并觸發這些漏洞。這允許對敏感數據進行只讀訪問或覆蓋僅對 TPM 可用的通常受保護的數據(例如,加密密鑰)。
描述
可信平臺模塊 (TPM) 技術是一種基于硬件的解決方案,可為現代計算機上的操作系統提供安全的加密功能,使其能夠抵抗篡改。近年來,隨著云計算和虛擬化越來越流行,基于軟件的 TPM 實施也越來越受歡迎。TPM 可以在其硬件形式中以離散、集成或固件 TPM 的形式實現。虛擬 TPM 以 Hypervisor 形式或純基于軟件的 TPM 實現(例如 swtpm)存在。可信計算組(TCG) 負責維護 TPM 規范,該規范由硬件和軟件制造商積極貢獻。TCG 于 2014 年 10 月發布了 TPM 2.0 規范,此后對其進行了多次修訂。最新版本 Revision 01.59 于 2019 年 11 月發布。許多 TPM 硬件和軟件制造商使用這些規范來構建符合標準的固件,并為敏感的加密數據提供安全接口。TPM 用于各種設備,從專門的企業級硬件到物聯網 (IoT) 設備。
TPM 庫規范體系結構記錄了“基于會話的加密”,它允許加密客戶端應用程序執行各種操作,包括那些提供參數加密功能的操作。基于會話的加密可用于確保這些參數的機密性。操作系統或客戶端軟件依靠 TPM 來安全地提供功能,例如用于塊密碼的密碼反饋 (CFB) 或對預期參數有效負載進行基于流哈希的 XOR 混淆。
Quarkslab 安全研究人員在 TPM 參考規范處理屬于 TPM 命令的部分參數的方式中發現了兩個漏洞。例程中的越界 (OOB) 讀取漏洞??CryptParameterDecryption()?
? 允許對不屬于當前會話的數據進行 2 字節讀取訪問。也有可能寫入超過當前命令緩沖區末尾的 2 個字節,從而導致內存損壞。
有權訪問使用易受攻擊的 TPM 版本構建的設備的攻擊者可以通過向 TPM 發送精心設計的命令來觸發此錯誤。因此,易受攻擊的 TPM 可能會被誘騙訪問不屬于預期操作的數據。由于操作系統依賴于 TPM 固件來實現這些功能,因此使用傳統的基于主機的安全功能可能難以檢測或阻止此類訪問。
影響
經過身份驗證的本地攻擊者可以將惡意制作的命令發送到易受攻擊的 TPM,從而允許訪問敏感數據。在某些情況下,攻擊者還可以覆蓋 TPM 固件中受保護的數據。這可能會導致 TPM 中的崩潰或任意代碼執行。由于攻擊者的有效負載在 TPM 中運行,因此目標設備的其他組件可能檢測不到它。
解決方案
應用更新可信計算組 (TCG) 發布了TPM2.0 庫規范勘誤表 的更新,其中包含解決這些漏洞的說明。為確保系統安全,用戶應盡快應用硬件和軟件制造商通過其供應鏈提供的任何更新。可能需要更新 TPM 芯片的固件,這可以通過操作系統供應商或原始設備制造商 (OEM) 來完成。在某些情況下,作為更新過程的一部分,OEM 可能需要將 TPM 重置為其原始出廠默認值。
高保證計算環境中的用戶應考慮使用 TPM遠程證明來檢測設備的任何更改并確保其 TPM 是防篡改的。由于這些攻擊涉及基于 TPM 的軟件,因此用戶密碼或 PIN 保護和 tpm-totp 等機制無法防止利用本文討論的漏洞進行的攻擊。
Quarkslab指出,大型技術供應商、使用企業計算機、服務器、物聯網設備和包含 TPM 的嵌入式系統的組織可能會受到這些缺陷的影響,并補充說它們“可能會影響數十億臺設備” 。?