ATF(TF-A)安全通告匯總
目錄
一、ATF(TF-A)安全通告 TFV-9 (CVE-2022-23960)
二、CVE-2022-23960
一、ATF(TF-A)安全通告 TFV-9 (CVE-2022-23960)
Title | TF-A披露通過分支預測目標重用(branch prediction target reuse)引發的前瞻執行處理器漏洞 |
CVE ID | CVE-2022-23960 |
Date | 08 Mar 2022 |
Versions Affected | All, up to and including v2.6 |
Configurations Affected | All |
Impact | 如果攻擊者能夠找到一個TF-A原語,它可以被預測為一個有效的分支目標,并以某種方式誘導對該原語的錯誤預測,那么安全世界數據可能會泄露到非安全世界。目前沒有已知的漏洞。 |
Fix Version | Gerrit topic #spectre_bhb |
Credit | 阿姆斯特丹自由大學系統和網絡安全小組發布的CVE-2022-23960, Arm發布的補丁 |
????????本安全通告描述了當前對TF-A披露的新的前瞻執行處理器漏洞的理解。要了解Arm系統上這些漏洞的背景和更廣泛的影響,請參閱Arm Processor Security Update。下面引用的白皮書更詳細地描述了Spectre攻擊和緩解措施,包括針對所有受影響的Arm cpu的特定實現緩解細節。
二、CVE-2022-23960
????????在實現了FEAT_CSV2的易受攻擊的CPU上,Arm建議在可能的情況下插入一個具有實現特定迭代次數的循環(loop)解決方案,這樣就可以在給定CPU往更高異常級別跳轉時,丟棄異常入口的分支歷史記錄。
????????在進入EL3時,在任何分支指令被執行之前,這都要盡早完成。這足以代表所有的安全世界代碼減輕Spectre-BHB,假設沒有安全世界代碼是在攻擊者的控制之下。
????????下表列出了在TF-A中使用循環解決方案來緩解該漏洞的cpu(所有實現FEAT_CSV2的核心,除了實現FEAT_CSV2的Cortex-A73和Cortex-A75修訂版本)。
Core |
Cortex-A72(from r1p0) |
Cortex-A76 |
Cortex-A76AE |
Cortex-A77 |
Cortex-A78 |
Cortex-A78AE |
Cortex-A78C |
Cortex-X1 |
Cortex-X2 |
Cortex-X3 |
Cortex-A710 |
Cortex-A715 |
Cortex-A720 |
Neoverse-N1 |
Neoverse-N2 |
Neoverse-V1 |
Neoverse-V2 |
Neoverse-Poseidon |
????????對于受Spectre-BHB影響的所有其他核心,其中一些沒有實現FEAT_CSV2,有些實現了,例如Cortex-A73,建議的緩解措施是通過實現特定的路由flush所有分支預測。
????????如果本地解決方案不可用,Rich OS可以調用SMC (SMCCC_ARCH_WORKAROUND_3)來應用解決方案。詳情請參閱SMCCC Calling Convention specification。
????????這個補丁集(Gerrit topic #spectre_bhb)為上表中提到的cpu實現了Spectre-BHB循環解決方案。對于支持speculative?barrier指令的cpu,通過使用SB指令代替常見的DSB和ISB序列來優化循環解決方案。它還緩解了支持CSV2特性的Cortex-A72 CPU版本(從r1p0開始)的此漏洞。補丁還包括一個特定的CVE-2022-23960解決方案SMC(SMCCC_ARCH_WORKAROUND_3)的實現,供非安全世界特權軟件使用。關于SMCCC ARCH WORKAROUND 3的詳細信息可以在SMCCC Calling Convention specification找到。規范和實現還使非安全世界能夠發現該固件服務的存在。此補丁還使用現有的解決方案為Cortex-A57, cortex - a72, Cortex-A73和Cortex-A75實現了SMCCC_ARCH_WORKAROUND_3。對于CVE-2017-5715,Cortex-A15補丁將Spectre V2緩解擴展到Spectre-BHB。
????????以上的解決方案是默認啟用的(僅在易受攻擊的cpu上)。如果平臺不需要它們,可以選擇在編譯時禁用它們。
????????怎么禁用呢?
????????有關非arm架構?CPU的更多信息,請聯系CPU供應商。
參考:
9.9. Advisory TFV-9 (CVE-2022-23960) — Trusted Firmware-A 2.9.0 documentation