本文為您介紹支援可信計算能力執行個體的工作原理以及可信計算技術的基本概念。
什麼是可信計算能力
可信計算是用於實現雲租戶計算環境底層高等級安全的主要功能之一。通過虛擬化層面的可信能力vTPM作為可信根,構建涵蓋系統啟動和使用者指定應用的信任鏈結並實現遠程證明機制,為使用者提供了針對環境啟動階段和運行階段的全方位可信保障。在系統和應用中加入可信驗證,能夠減少由於使用未知或遭到篡改的系統/軟體遭到攻擊的可能性。
支援可信計算能力的執行個體規格類型系列
g7t、c7t、r7t支援SGX機密計算,在ECS管理主控台建立這類執行個體時會自動安裝阿里雲SGX運行時。更多關於SGX機密計算的資訊,請參見構建SGX機密計算環境。
工作原理
可信計算技術為您的ECS執行個體提供可驗證的完整性,以確保執行個體未受到啟動級或核心級惡意軟體或Rootkit的侵害。可信執行個體通過使用UEFI安全韌體、虛擬可信平台模組(vTPM/vTCM)、遠程證明服務,實現執行個體啟動度量和完整性校正,從而保障執行個體的安全可信。
韌體安全
針對伺服器中的韌體,阿里雲實現了完整的韌體安全更新能力。在更新韌體時會進行韌體簽名驗證,確保只更新經過合法授權的韌體,從而阻止通過惡意韌體對雲基礎設施的攻擊。
虛擬可信平台模組vTPM/vTCM
vTPM/vTCM是一個虛擬化的可信平台模組,依託硬體TPM/TCM可信根實現從伺服器硬體可信到執行個體可信的傳遞。vTPM/vTCM與可信計算規範(TPM 2.0/TCM 2.0)完全相容,可信執行個體通過啟用vTPM/vTCM模組,在ECS執行個體中構建虛擬可信根,並實作類別似主機層的啟動信任鏈結和遠程證明機制。建立執行個體時會建立完整性基準資料,該基準資料與後續執行個體啟動的度量值進行比較,以確定該執行個體是否有任何更改,並將度量結果(即是否可信的狀態)展示在Security Center控制台。
UEFI安全韌體
可信執行個體使用滿足整合可延伸韌體介面標準(UEFI)的可信引導韌體進行系統引導。UEFI韌體可以在引導作業系統啟動的過程中,實現對系統韌體、系統引導載入程式以及系統核心模組的完整性度量,以構建系統啟動信任鏈結。
啟動度量
度量是逐級的,先啟動的組件對後一級啟動的組件進行度量,度量值驗證成功則標誌著可信鏈從前一級向後一級的成功傳遞。
在每台執行個體引導啟動期間,對於從底層伺服器硬體到GuestOS的啟動鏈中的每個模組,在模組載入時可信組件會計算相關組件的雜湊值,並將雜湊值儲存到可信根中,形成信任鏈結。通過逐級度量並驗證啟動鏈中的各個模組,確保自上次引導啟動以來系統沒有發生過更改。
完整性校正
完整性校正用於協助您瞭解執行個體的可信狀態並作出決策。
初次開機執行個體時,可信組件會將第一組度量資訊(雜湊值)建立為完整性基準資料,並安全地儲存此資料。此後,每一次執行個體啟動時,都將再次執行這些度量及儲存操作。可信組件與可信服務端進行遠程證明,將度量資訊上報至可信服務端。通過對比最新度量資料與基準資料,可以實現執行個體的完整性度量校正,以此來確定該執行個體是否運行在期望的可信狀態。
完整性校正依賴於啟動度量建立的度量資訊,完整性校正將執行個體最近的啟動度量資訊與該執行個體的完整性基準進行比較。如果匹配則返回通過結果,代表可信;如果不匹配則返回失敗結果,代表不可信。
如果是預期失敗(例如,ECS執行個體進行了系統更新),可以通過對可信事件進行白名單操作,更新執行個體完整性基準,後續完整性度量將會以最新的完整性基準作為對比標準。具體操作,請參見處理可信異常。
如果是非預期失敗,則應該根據可信事件詳情調查失敗的原因,避免執行個體運行在非可信環境。