硬體安全的進階主題與趨勢
在VM型TEE中,只加密虛擬機器的記憶體被認為不夠,因而像AMD的SEV-SNP那樣加入了保護記憶體完整性的機制,其理由下列何者正確?
- A即使記憶體已加密,超管理器也管理著虛擬機器的金鑰,能用該金鑰在CPU外部自由解密
- B使用加密後,虛擬機器可用的記憶體容量會減半,分頁置換因此增加
- C超管理器即使無法讀取內容,也能變更分頁的對應,或寫回舊的密文,藉此擾亂虛擬機器的運作
查看答案與解析
正確答案:C. 超管理器即使無法讀取內容,也能變更分頁的對應,或寫回舊的密文,藉此擾亂虛擬機器的運作
在早期的記憶體加密中,超管理器雖然無法讀取密文,卻能把虛擬機器的分頁重新對應到其他位置、寫回先前保存的舊密文(重放),或破壞密文。密文被變更時,解密結果只會變成無法預測的值,虛擬機器無法察覺遭到竄改,研究也展示了以此為立足點的攻擊。SEV-SNP由CPU確認一張記錄每個實體分頁之擁有者虛擬機器與對應位址的表(RMP),防止超管理器寫入虛擬機器的分頁或調換其對應。此外,依截至2020年代中期的公開資料,在運作中直接操控記憶體匯流排這類進階實體攻擊,不在SEV-SNP的防護範圍內。
- A. 金鑰只存在於CPU內部,超管理器無法解密。無法讀取與無法改寫是不同的問題。
- B. 即使加密,可用的記憶體容量也不會改變。
- C. 正確。不只需要機密性,也需要防止竄改與調換的完整性。