谷歌安全研究人員發(fā)現(xiàn)微軟Surface Pro 3 TPM繞過安全漏洞。
10月18日,微軟發(fā)布關(guān)于CVE-2021-42299漏洞的安全公告,該漏洞是TPM(Trusted Platform Module,可信平臺模塊)繞過漏洞,影響Surface Pro 3筆記本。該漏洞是谷歌安全研究人員發(fā)現(xiàn)的,攻擊者利用該漏洞可以發(fā)起復(fù)雜的TPM Carte Blanche攻擊。
漏洞概述——繞過安全完整性檢查
Surface Pro 3設(shè)備使用平臺配置寄存器(Platform Configuration Registers,PCR)來記錄設(shè)備和軟件配置信息來確保啟動過程是安全的。Windows使用這些PCR來確定設(shè)備的健康程度。
有漏洞的設(shè)備可以擴(kuò)展任意值到平臺配置寄存器庫中來偽裝成健康的設(shè)備。通過利用CVE-2021-42299漏洞,攻擊者可以對TPM和PCR日志來獲取錯誤的證明,允許攻擊者來入侵設(shè)備健康證明(Device Health Attestation)驗證過程。Device Health Attestation是一個Windows特征,使用TPM來證明PC的啟動狀態(tài)。
漏洞利用
一般來說,Health Attestation系統(tǒng)包括發(fā)送TCG日志和PCR引用到服務(wù)。為成功提取錯誤的微軟的DHA證書,攻擊者需要了解請求的格式以及發(fā)送的目的地。
攻擊者通過空的PCR來訪問信任度設(shè)備的步驟如下:
?獲取目標(biāo)TCG日志:可以從目標(biāo)設(shè)備讀取;
?重放日志到空的PCR中,使其與通過目標(biāo)TCG日志描述的軟件啟動的設(shè)備處于相同的狀態(tài);
?發(fā)送有效的Health Attestation請求到服務(wù)。
在實際攻擊過程中,攻擊者可以準(zhǔn)備一個Linux USB啟動盤以盡量減少與目標(biāo)設(shè)備所需的交互。
PoC
谷歌安全研究人員還發(fā)布了該漏洞的PoC漏洞利用,PoC代碼參見:https://github.com/google/security-research/tree/master/pocs/bios/tpm-carte-blanche
受影響的設(shè)備
微軟已經(jīng)確認(rèn)Surface Pro 3受到該漏洞的影響。但使用類似BIOS的微軟和非微軟設(shè)備都可能受到該漏洞的影響。但Surface Pro 4、Surface Book和其他最新的Surface并不受到該漏洞的影響。
如何應(yīng)對
為成功利用該漏洞,攻擊者需要能夠訪問所有者的憑證或物理訪問設(shè)備。研究人員建議用戶采用最佳安全實踐對其設(shè)備采取訪問控制原則,預(yù)防對設(shè)備的非授權(quán)物理訪問。