天天看點

看見“信任”,可信計算史上最全解析一、什麼是可信計算二、等保2.0關于可信要求的解讀三、阿裡雲可信計算實踐四、結語

一、什麼是可信計算

可信計算(Trusted Computing,簡稱TC)是一項由TCG(可信計算組)推動和開發的技術。可信的核心目标之一是保證系統和應用的完整性,進而确定系統或軟體運作在設計目标期望的可信狀态。可信并不等同于安全,但它是安全的基礎,因為安全方案、政策隻有運作在未被篡改的環境下才能進一步確定安全目的。通過保證系統和應用的完整性,可以確定使用正确的軟體棧,并在軟體棧受到攻擊發生改變後能及時發現。總的來說,在系統和應用中加入可信驗證能夠減少由于使用未知或遭到篡改的系統/軟體遭到攻擊的可能性。

以PC機可信舉例,通俗來講,可信就是在每台PC機啟動時檢測BIOS和作業系統的完整性和正确性,保障你在使用PC時硬體配置和作業系統沒有被篡改過,所有系統的安全措施和設定都不會被繞過;在啟動後,對所有的應用,如社交軟體、音樂軟體、視訊軟體等應用可進行實時監控,若發現應用被篡改立即采取止損措施。

看見“信任”,可信計算史上最全解析一、什麼是可信計算二、等保2.0關于可信要求的解讀三、阿裡雲可信計算實踐四、結語

具體來說,可信計算技術對安全有如下提升:

  • 作業系統安全更新,如防範UEFI中插入rootkit、防範OS中插入rootkit、以及防範病毒和攻擊驅動注入等。
  • 應用完整性保障,如防範在應用中插入木馬。
  • 安全政策強制實作,如防範安全政策被繞過/篡改、 強制應用隻能在某個計算機上用、強制資料隻能有某幾種操作等。

可信主要通過度量和驗證的技術手段實作。度量就是采集所檢測的軟體或系統的狀态,驗證是将度量結果和參考值比對看是否一緻,如果一緻表示驗證通過,如果不一緻則表示驗證失敗。

度量分為靜态度量和動态度量兩種。靜态度量通常指在運作環境初裝或重新開機時對其鏡像的度量。度量是逐級的,通常先啟動的軟體對後一級啟動的軟體進行度量,路徑成本驗證成功則标志着可信鍊從前一級軟體向後一級的成功傳遞。以作業系統啟動為例,可信作業系統啟動時基于硬體的可信啟動鍊,對啟動鍊上的UEFI、loader、OS的image進行靜态度量,靜态度量的結果通過雲上可信管理服務來驗證,以判斷系統是否被改動。

動态度量和驗證指在系統運作時動态擷取其運作特征,根據規則或模型分析判斷系統是否運作正常。

看見“信任”,可信計算史上最全解析一、什麼是可信計算二、等保2.0關于可信要求的解讀三、阿裡雲可信計算實踐四、結語

可信計算另一個核心部分是可信根,通常是可信硬體晶片。可信計算通過晶片廠家植入在可信硬體中的算法和秘鑰,以及內建的專用微控制器對軟體棧進行度量和驗證來確定可信。根據安全晶片和其上運作的可信軟體基(Trusted Software Stack)分類,業界目前主流的可信計算标準主要有三種:Trusted Platform Module (TPM)、Trusted Cryptography Module (TCM)和Trusted Platform Control Module (TPCM)。

TPM/TCM的優勢在于技術成熟、商業化條件好,産品商業化已經超過十年。微軟和谷歌都有基于TPM的商業化的可信雲方案。TPCM是基于國産化思路提出的可信标準。相對TPM和TCM,TPCM對硬體和可信軟體棧(TSS:Trusted Software Stack)架構做了較大的改動。TPCM最大的優點是可以做主動度量,但在計算主機上尚未商業化和産品化成熟。

二、等保2.0關于可信要求的解讀

等保2.0将可信提升到一個新的強度。在等保一到四級都有可信的要求,主要在三個領域:計算環境可信、網絡可信、接入可信。以計算環境可信舉例,等保2.0中可信四級要求如下:

可基于可信根對系統引導程式、系統程式、重要配置參數和通信應用程式等進行可信驗證,并在應用程式的所有執行環節進行動态的可信驗證,在檢測到其可信性受到破壞後進行報警,并将驗證結果形成審計記錄送至安全管理中心,并進行動态關聯感覺。
看見“信任”,可信計算史上最全解析一、什麼是可信計算二、等保2.0關于可信要求的解讀三、阿裡雲可信計算實踐四、結語

可信基本要求之一“基于可信根對系統引導程式、系統程式、重要配置參數和通信應用程式等進行可信驗證”在業界已有方案,如基于TCM安全晶片的系統啟動度量和驗證。等保2.0中對這項要求沒有明确提出動态的可信驗證,原因之一是系統(如作業系統)過于複雜,很難形成完整的甚至局部的驗證基準值,在工程實作上無法保障規則的完整性,誤報、漏報無法控制,嚴重影響安全和使用者體驗。基于這個判斷,傳統的基于靜态度量和驗證的系統可信啟動應該滿足這項要求。

與系統可信不同,等保2.0四級對應用可信有明确的動态驗證要求。再複雜的應用相對作業系統來說也簡單得多,是以做應用動态驗證在工程上是可行的,挑戰是如何在不嚴重影響應用的功能、性能,即保證使用者使用體驗的前提下做到應用動态可信。解決這個問題的實質在于如何選擇應用的度量對象,确定路徑成本,以及如何收集和管理驗證基準值,或所謂的應用行為白名單。

應用可信的實作可通過隻允許指定的應用,即所謂白名單應用在某個環境下(一般是實體主機、虛拟機上或容器)運作,非白名單應用無法在目标環境中運作;同時白名單應用受到監控,其運作行為一旦被發現異常,系統會根據異常行為的安全危害等級報警并采取相應措施,如阻斷應用、删除應用、重新開機系統等。對環境中運作的應用進行限制可減少不安全的應用對雲平台進行攻擊的可能性,而對應用的監控可以及時發現攻擊并做響應。

看見“信任”,可信計算史上最全解析一、什麼是可信計算二、等保2.0關于可信要求的解讀三、阿裡雲可信計算實踐四、結語

等保2.0并沒有明确規範應該如何實作應用可信,原因之一是在現有的安全實踐中沒有很好的方式可以參考。可信最終是為安全服務的,如果應用的動态驗證能夠幫助及時發現攻擊甚至阻止攻擊,将攻擊造成的危害降至最低,這樣的應用可信就應該是有效的。

等保2.0要求的動态關聯,可了解成在可信驗證失敗時對被監測的對象及時采取措施,阻斷攻擊并對可能遭受攻擊的資産進行保護。實作的方式可通過安全管理中心有效地傳遞驗證結果資料,使其他安全手段能夠及時響應。

三、阿裡雲可信計算實踐

雲平台安全依賴作業系統、資料庫、虛拟化等技術,而這些系統/技術會存在原生的安全問題,使攻擊者可利用系統/技術漏洞實作其攻擊目的。同時,平台上的第三方系統軟體、應用軟體等可能會在安裝或更新過程中被修改或植入攻擊性子產品,存在通過類似中間人攻擊或内部攻擊替換正版軟體的風險。

阿裡雲提供了較完整的平台安全措施和強邊界防禦能力,同時通過可信來有效減小攻擊面和攻擊源,提升攻擊門檻,使雲平台安全更新。所謂可信,即雲平台、雲上應用以及雲使用者運作環境、應用,通過使用使用者指定的軟體而達到行為的可預判,以此來確定雲平台上運作環境以及其上運作的應用的可信,來減少由于未知因素引發成功攻擊的可能性。

看見“信任”,可信計算史上最全解析一、什麼是可信計算二、等保2.0關于可信要求的解讀三、阿裡雲可信計算實踐四、結語

可信整體架構

阿裡雲可信是依賴雲平台硬體安全中的可信計算能力,通過自研開發的可信服務,實作雲上的軟體棧可信,即:雲平台安全可信、雲平台上運作的應用可信,達到雲平台整體安全可信更新的目标。

雲平台可信即確定雲平台上運作的系統軟體,如固件、作業系統(OS)都是安全的,保障平台上的系統不被篡改,即保持運作環境是所要求的運作環境。為實作這個目标,主要采用的手段是對系統軟體的度量和驗證,而度量和驗證自身的可信通過雲平台可信硬體來支援。可信硬體作為雲伺服器或接入使用者伺服器的可信根,通過在硬體内部實作最基礎的安全功能如秘鑰存儲、安全算法實作從下到上逐級的可信鍊傳遞。

阿裡雲可信根采用在商業和産品化上成熟的TCM,通過使用裝有TCM可信晶片的可信伺服器作為系統的可信根逐級實作雲平台以及其上業務的可信。在未來國有化和更強大的TPCM商業化成熟後,會過渡到用TPCM支援的可信伺服器。

TCM能保障實體機的可信,而雲平台的實體主控端上一般需運作多個虛拟機,但一個主控端通常有一個TCM晶片,為保證對虛拟機的度量,需要有效地對TCM資源進行配置設定;同時虛拟機會因業務的需要而遷移,為保證虛拟機度量的延續性,其可信相關的安全管理資料如最後的PCR值等應同步遷移到目标主機上,為實作上述需求,阿裡雲開發TCM虛拟化(vTCM)以安全管理TCM的資源和資料。

雲平台可信實作架構圖如下:

看見“信任”,可信計算史上最全解析一、什麼是可信計算二、等保2.0關于可信要求的解讀三、阿裡雲可信計算實踐四、結語

可信度量啟動鍊+遠端證明設計架構

阿裡雲對白名單應用的保護是通過靜态度量和驗證、動态度量和驗證來實作的,同時采用動态關聯感覺技術進一步確定應用可信。

靜态度量和驗證在應用啟動之前對其鏡像進行校驗,僅校驗合格後才允許應用啟動運作。校驗的基準值為應用開發者釋出的應用簽名,或是可信服務提供的校驗基準值。

動态度量和驗證采用的是通過應用行為白名單來實作的。被度量和驗證的應用行為是系統調用行為,包括程序啟動、程序調用、網絡通路、檔案通路等。系統調用是應用的核心執行動作,一個被攻擊過、不再可信的應用在執行實作攻擊者目标時必須通過系統調用實作,也就是說,通過對系統調用的監測能夠有效地發現應用異常,即不再可信。實作應用可信的具體方式是首先通過對白名單應用的分析,收集使用者正常行為,并以此建立行為規則庫,然後根據實時采集的應用行為資料,對比應用行為規則庫進行判斷。如果應用行為無法比對任何一條規則,這個行為會被判斷為異常,可信雲決定是否告警或終止應用運作。

此外,動态關聯感覺技術通過對應用行為特征的判斷,可發現應用在不調用白名單以外的情況下的應用異常。動态關聯感覺通過機器學習産生應用行為基線,在應用運作時采集了一段時間應用的行為,通過大資料分析和機器學習的方式形成應用行為特征,并以此對應用行為特征異常作出判斷。

阿裡雲可信應用可信的實作方式如下:

看見“信任”,可信計算史上最全解析一、什麼是可信計算二、等保2.0關于可信要求的解讀三、阿裡雲可信計算實踐四、結語

四、結語

可信和安全是相輔相成的,可信是安全的基礎,但可信自身的實作也需要有安全機制,有安全手段配合才能更有效,例如作業系統的隻讀安全措施可以大大減少系統動态度量的範圍,使系統動态度量成為可能。

目前,國際領先雲服務商如谷歌的GCP和微軟的AZURE都已有完整的基于靜态度量/驗證的雲平台可信方案,AWS可信方案也在開發中。在國内,阿裡雲是首家具備可信能力的雲廠商,其專有雲平台研發了基于可信技術的雲平台入侵檢測系統,滿足了等保2.0對于可信部分的高标準要求,這也是其成為通過等保2.0四級(可傳遞的最高等級)評測的原因之一。

在目前中國雲計算可信發展初期階段,安全硬體、伺服器、系統、應用等廠商需要聯合起來,形成協同共赢的生态,共同推動可信的深入發展,為建構更穩固的安全體系固本強基。

繼續閱讀