劉國杰,張建標,楊萍,李錚
基于TPCM的容器云可信環(huán)境研究
劉國杰1,2,張建標1,2,楊萍3,李錚1,2
(1. 北京工業(yè)大學信息學部,北京 100124;2. 可信計算北京市重點實驗室,北京 100124;3. 北京信息科技大學,北京 100192)
容器技術是一種輕量級的操作系統(tǒng)虛擬化技術,被廣泛應用于云計算環(huán)境,是云計算領域的研究熱點,其安全性備受關注。提出了一種采用主動免疫可信計算進行容器云可信環(huán)境構(gòu)建方法,其安全性符合網(wǎng)絡安全等級保護標準要求。首先,通過TPCM對容器云服務器進行度量,由TPCM到容器的運行環(huán)境建立一條可信鏈。然后,通過在TSB增加容器可信的度量代理,實現(xiàn)對容器運行過程的可信度量與可信遠程證明。最后,基于Docker與Kubernetes建立實驗原型并進行實驗。實驗結(jié)果表明,所提方法能保障云服務器的啟動過程與容器運行過程的可信,符合網(wǎng)絡安全等級保護標準測評要求。
可信計算;可信啟動;可信度量;遠程證明
隨著信息技術的發(fā)展,信息安全問題日益嚴峻[1-3]。網(wǎng)絡安全等級保護國家標準對中國信息安全工作非常重要。這項標準被應用于網(wǎng)絡安全職能部門、網(wǎng)絡安全管理部門以及等級測評機構(gòu)的各項工作。標準要求在系統(tǒng)啟動時對信息設備的主板固件、引導程序、操作系統(tǒng)與關鍵應用程序進行可信驗證,并在檢測到被惡意篡改后發(fā)送報警信號[4]。
容器技術是一種輕量級的操作系統(tǒng)虛擬化技術。容器技術廣泛應用于云計算環(huán)境和數(shù)據(jù)中心的資源管理、系統(tǒng)運維和軟件部署,成為云計算領域的業(yè)界熱點[5]。與傳統(tǒng)的虛擬機相比,容器直接運行在操作系統(tǒng)中,具有更高的性能、更好的可移植性和更快的速度[6]。在容器環(huán)境中,由容器引擎創(chuàng)建并運行容器,常用的容器引擎是Docker[7]?;谌萜鞯娜蝿站幣排c資源調(diào)度技術的快速發(fā)展,使容器技術越來越受歡迎,常用的任務編排與資源調(diào)度應用是Kubernetes[8]。
容器廣泛應用部署的主要障礙之一是其面臨的安全問題。在容器環(huán)境中發(fā)現(xiàn)了一些安全問題,包括容器應用、容器之間、容器與主機的安全等[9-11]。容器鏡像及其內(nèi)部程序可能在運行時被主機或外部攻擊者利用漏洞惡意篡改。攻擊者可能獲得對正在運行的容器的訪問特權(quán),通過修改服務配置和二進制文件、啟動惡意腳本或啟動新進程來發(fā)起攻擊[12-14]。容器技術提出了確保映像完整性的解決方案,但它們并不覆蓋整個服務生命周期,因此存在用戶對容器安全性的信任問題。
目前,大多數(shù)研究人員使用命名空間隔離和可信計算技術來確保容器的安全運行。文獻[15]提出了安全命名空間,使容器能夠獨立控制其安全性。文獻[16]提出了一種輕量級容器云基礎設施的安全監(jiān)控解決方案,該方案利用遠程證明來驗證容器云應用程序在其整個生命周期中的軟件完整性。文獻[17]提出了兩種架構(gòu)解決方案,用于將vTPM集成到基于容器的虛擬化模型中,一種方案將vTPM模塊放到內(nèi)核中,另一種方案將vTPM放到單獨的容器中。文獻[18]為每個容器創(chuàng)建一個vTPM,設計了格式統(tǒng)一的簽名列表來授權(quán)容器可執(zhí)行文件。文獻[19]設計并實現(xiàn)了一個可信增強的Docker容器,構(gòu)造了一條從硬件到容器內(nèi)部進程和文件的信任鏈,同時增加了包括進程監(jiān)控、文件系統(tǒng)度量、網(wǎng)絡監(jiān)控等安全防護模塊。文獻[20]對傳統(tǒng)的信任模型進行了改進,提出了適合容器云環(huán)境的信任模型。
可信計算[21-23]在解決云環(huán)境的安全性問題中發(fā)揮了重要作用。TCG(Trusted Computing Group)提出的解決方案是以TPM(trusted platform module)為可信根,作為外掛部件被動調(diào)用無法進行主動度量[24]。我國學者提出了TPCM(trusted platform control module)[25]作為可信計算環(huán)境的信任根,它是可信計算的核心模塊。TPCM與TSB(trusted software base)、TCA(trust connection architecture)等功能模塊,實現(xiàn)主動免疫可信計算。
本文提出了一種采用主動免疫可信計算構(gòu)建容器云可信環(huán)境的方法,主要貢獻如下:①提出了基于主動免疫可信計算的容器云可信環(huán)境架構(gòu),可以全面保護容器云環(huán)境;②提出了利用TPCM進行可信啟動的流程,從TPCM到容器運行環(huán)境與容器運行進程建立一條可信鏈;③基于容器的命名空間隔離機制,增加了TSB對容器應用的度量功能,實現(xiàn)容器的主動度量。
為了研究容器云可信環(huán)境的構(gòu)建方法,本節(jié)主要進行容器云架構(gòu)、主動免疫可信計算等相關研究工作。容器云架構(gòu)是近年來出現(xiàn)并發(fā)展迅速的新技術,針對容器云架構(gòu)的可信計算技術需要進一步深入研究。主動免疫可信計算技術是我國近年來快速發(fā)展的安全防護技術。本文將其應用于容器云環(huán)境的安全防護。
中關村可信計算聯(lián)盟組織提出了TPCM,中國國家標準《信息安全技術可信計算規(guī)范可信平臺控制模塊》被制定,并發(fā)布了征求意見稿。這個標準闡明了TPCM的功能組成。TPCM主要包括嵌入了可信密碼模塊核心、基礎軟件、功能服務、功能接口和計算部件接口的CPU。圖1顯示了TPCM的功能結(jié)構(gòu)[26]。
圖1 TPCM的功能結(jié)構(gòu)
Figure 1 The functional structure of TPCM
TPCM在TCM(trusted cryptography module)的基礎上增加信任根控制功能,實現(xiàn)密碼與控制相結(jié)合,將可信平臺控制模塊設計為可信計算控制節(jié)點,實現(xiàn)了TPCM對整個平臺的主動控制;在可信平臺主板中增加了可信度量控制節(jié)點,實現(xiàn)了計算和可信雙節(jié)點融合;軟件基礎層實現(xiàn)宿主操作系統(tǒng)和可信軟件基的雙重系統(tǒng)核心,通過在操作系統(tǒng)核心層并接一個可信的控制軟件接管系統(tǒng)調(diào)用,在不改變應用軟件的前提下實施對應執(zhí)行點的可信驗證,達到主動防御效果[27]。
TSB由基本信任基、主動監(jiān)控機制、可信基準庫、支撐機制與協(xié)作機制組成[28]。圖2展示了TSB的組成結(jié)構(gòu)?;拘湃位趩舆^程中實現(xiàn)對其他機制的驗證與加載。主動監(jiān)控機制包括控制機制、度量機制與判定機制,攔截應用的系統(tǒng)調(diào)用,實現(xiàn)對相關的主體、客體、操作與環(huán)境的度量與控制。TSB通過支撐機制實現(xiàn)對可信根實體的資源訪問。TSB通過協(xié)作機制與可信策略管理中心交互。本文擴展了TSB的功能實現(xiàn)對容器的主動可信度量與控制。
圖2 TSB組成結(jié)構(gòu)
Figure 2 Composition structure of TSB
主動免疫可信計算的核心是構(gòu)建基于TPCM的雙系統(tǒng)體系結(jié)構(gòu),如圖3所示。TPCM、TSB可信的度量和主動監(jiān)控系統(tǒng)啟動環(huán)境和運行環(huán)境,實現(xiàn)計算節(jié)點的主動免疫可信計算。TPCM作為可信根,先于CPU通電,對主板硬件進行主動度量。TSB承接底層硬件的信任鏈,并利用TPCM對系統(tǒng)運行環(huán)境進行主動度量,對系統(tǒng)運行環(huán)境進行主動監(jiān)控。從系統(tǒng)啟動開始,以TPCM為可信根,通過信任鏈傳遞機制,逐級實施主動度量驗證。通過TCA保證計算節(jié)點的網(wǎng)絡環(huán)境的可信[29]。
容器云架構(gòu)主要包括主節(jié)點與計算節(jié)點兩部分,如圖4所示。容器云架構(gòu)的主節(jié)點一般采用Kubernetes作為管理程序,其主要部件運行在容器中,包括API Server、Controller、Scheduler、Etcd等關鍵部件。容器云架構(gòu)的計算節(jié)點一般采用Docker作為容器應用的運行程序,包括Kubelet與Kube-proxy等關鍵部件實現(xiàn)與Kubernetes交互和負載均衡。
圖3 主動免疫可信計算節(jié)點
Figure 3 Active immune trusted computing node
圖4 容器云架構(gòu)
Figure 4 Container-based cloud architecture
TCG提出的解決方案,以TPM為信任根作為外掛部件被動調(diào)用,無法進行主動度量[30]。本文提出了一種基于TPCM的服務器PXE可信啟動方法[31],圖5展示了PXE可信啟動過程。
圖5 PXE可信啟動過程
Figure 5 PXE trusted boot process
文獻[32]提出了虛擬化TPM的軟件實現(xiàn),用于保護在Hypervisor運行的多個虛擬機。每個虛擬機對應一個vTPM。這種vTPM設計如圖6(a)所示。文獻[17]提出了兩種架構(gòu)解決方案,用于將vTPM集成到基于容器的虛擬化模型中,一種方案將vTPM模塊放到內(nèi)核中,另一種方案將vTPM放到單獨的容器中。圖6(b)展示了vTPM放到內(nèi)核中的功能設計。圖6(c)展示了在一個特權(quán)容器中運行vTPMManager,并且在每個容器中運行 vTPMAdapter。
文獻[16]提出了一種輕量級的云環(huán)境下Docker容器的完整性驗證方案DIVE。圖7展示了DIVE遠程證明的工作流程。DIVE利用遠程認證來驗證云應用程序在其整個生命周期中的軟件完整性。DIVE不能防護內(nèi)存攻擊,需要額外保存內(nèi)存。
圖6 3種不同的vTPM設計
Figure 6 Three different vTPM designs
圖7 DIVE遠程證明的工作流程
Figure 7 Work flow of cave remote certification
本文基于主動免疫可信計算技術來構(gòu)建容器云可信環(huán)境,其架構(gòu)如圖8所示。容器云可信環(huán)境架構(gòu)包括安全管理中心、部署在主節(jié)點與計算節(jié)點的TPCM與TSB。安全管理中心主要包括系統(tǒng)管理、安全管理與審計管理3個功能模塊,主要進行系統(tǒng)管理、安全策略的制定與下發(fā)、容器應用白名單的維護、系統(tǒng)運行信息的審計等。
圖8 容器云可信環(huán)境架構(gòu)
Figure 8 Trusted container cloud environment architecture
容器云可信的啟動過程如圖9所示?;赥PCM構(gòu)建的可信主板在啟動時,TPCM先于主板上電。TPCM度量主板固件和BIOS,如果沒問題進行下一步驟,否則發(fā)出報警信號。然后主板上電,BIOS獲得控制權(quán)。BIOS度量操作系統(tǒng)內(nèi)核與TSB,如果沒問題進行下一步驟,否則發(fā)出報警信號。操作系統(tǒng)內(nèi)核啟動,TSB獲得控制權(quán)。在容器云環(huán)境的主節(jié)點,TSB度量Docker、API Server、Controller、Scheduler等關鍵應用程序與配置文件。在容器云環(huán)境的計算節(jié)點,TSB度量Docker、Kubelet、Kube-proxy等關鍵應用程序與配置文件。
圖9 容器云可信的啟動過程
Figure 9 Container based cloud trusted startup process
定義1 每個啟動階段的一個關鍵部件作為一個實體。
以信任根為起點,對實體進行逐級度量與驗證,逐級信任,得到一個信任鏈。
以TPCM作為起點,進行逐級度量與驗證,最終得到Master節(jié)點與Computing節(jié)點的信任鏈。
在容器云的控制節(jié)點與計算節(jié)點啟動時、運行環(huán)境的信任鏈建立后,TPCM通過容器引擎與TSB實現(xiàn)對容器應用文件與進程的度量。容器的運行與虛擬機的運行有很多不同,同一臺宿主機的容器共享操作系統(tǒng)內(nèi)核,而虛擬機必須獨立安裝運行操作系統(tǒng)。
主動可信度量把TPCM 作為主動的度量根,其檢查原則是 TPCM 先檢查硬件設備配置,再檢查軟件系統(tǒng)。對硬件設備先檢查身份合法性,再檢查固件完整性。對軟件系統(tǒng)先檢查輸入數(shù)據(jù)的真實性和新鮮性,再檢查輸入數(shù)據(jù)的完整性,最后通過密碼機制保護信任鏈,構(gòu)建可信計算環(huán)境[33]。
可信策略管理中心為每一個容器Image制定可信策略。TSB根據(jù)容器可信度量代理下載的容器,從可信策略管理中心下載該容器的可信策略。容器云環(huán)境的主動可信度量如圖10所示。TPCM為TSB的可信功能提供支撐。TSB根據(jù)可信策略通過嵌入容器引擎中的可信度量代理對容器應用進行主動可信度量,可信度量代理對容器應用度量后,把度量結(jié)果返回到TSB。
在容器啟動時,會生成唯一的命名空間,并把容器鏡像加載到內(nèi)存中,這時,可信度量代理檢測到容器的加載,建立對應的可信度量緩存。根據(jù)容器ImageID找到對應的可信策略并加載到內(nèi)存中。完整性度量列表數(shù)據(jù)結(jié)構(gòu)如圖11所示。
圖10 容器可信度量流程
Figure 10 Container trusted measurement process
圖11 完整性度量列表數(shù)據(jù)結(jié)構(gòu)
Figure 11 Data structure of integrity measurement list
容器的可信度量流程:首先,根據(jù)容器加載建立對應的緩存;然后,根據(jù)容器ImageID查找對應的可信策略;最后,根據(jù)可信策略對容器緩存進行度量,得出度量結(jié)果,存儲到度量緩存中。
本文提出了一種容器云環(huán)境的可信遠程證明架構(gòu),該架構(gòu)可以從主節(jié)點與計算節(jié)點收集和驗證可信遠程證明信息,并在安全管理中心集中管理這些信息。該架構(gòu)通過驗證主節(jié)點與計算節(jié)點的受信任狀態(tài),來驗證容器云環(huán)境的受信任證明??尚胚h程證明流程如圖12所示。終端用戶發(fā)起可信遠程證明請求到達安全管理中心,安全管理中心通過驗證容器云環(huán)境的主節(jié)點與計算節(jié)點的受信任狀態(tài),完成容器云環(huán)境的受信任證明。安全管理中心把遠程證明結(jié)果返回給終端用戶。
以下是可信遠程證明的具體步驟。
步驟1 挑戰(zhàn)者A應請求者B的請求,創(chuàng)建一個不可預知的隨機數(shù)發(fā)給證明節(jié)點的證明代理T。
步驟2 證明代理T以Quote請求的形式發(fā)送給計算節(jié)點C的TPCM。
圖12 可信遠程證明過程
Figure 12 Trusted remote attestation process
步驟3 計算節(jié)點C的TPCM使用存儲根密鑰SRK,讀取身份證明密鑰AIK,執(zhí)行Quote命令。
步驟4 證明代理T簽名Quote,并把簽名后的Quote、完整性狀態(tài)S、身份證明密鑰(AIK)證書與度量存儲日志L發(fā)送給挑戰(zhàn)者A。
步驟5 挑戰(zhàn)者A驗證身份證明密鑰證書的有效性,同時驗證Quote簽名的正確性和新鮮性。
步驟6 挑戰(zhàn)者A將度量存儲日志Log與基準值BV比較,如果度量值與基準值匹配,證明遠程節(jié)點處于可信狀態(tài)。
(1)可信啟動需要在服務器主板增加TPCM芯片,修改并配置服務器的通電順序。當計算機通電時,CPLD控制邏輯首先為TPCM、閃存與高速開關通電,其他設備不通電,通過可信根TPCM驗證啟動代碼與主板固件的可信性;然后在TPCM的控制下為其他設備通電與開機[34-35]。
(2)可信度量與可信遠程證明基于軟件TPCM仿真器在虛擬機上完成。實驗中的開發(fā)環(huán)境的配置是:8 Core CPU 3.1 GHz,32 GB Memory,Ubuntu 18.04.5,Docker CE 19.03.13,Golang 1.13.15。實驗中的測試環(huán)境需要使用VMware虛擬化軟件創(chuàng)建3臺虛擬機,這3臺虛擬機的網(wǎng)絡拓撲結(jié)構(gòu)與詳細配置如圖13所示。主節(jié)點的配置為:2 Core CPU 3.1 GHz,4 GB Memory,Ubuntu 18.04.5,Docker CE 19.03.13,Kubernetes 1.18.8, Attestation Server and Software TPCM Emulator。計算節(jié)點的配置為:2 Core CPU 3.1 GHz,4 GB Memory,Ubuntu 18.04.5,Docker CE 19.03.13,Attestation Client and Software TPCM Emulator。Attestation Client、Attestation Server and Software TPCM Emulator 基于IBM TPM 2.0 Emulator[36]開發(fā)。
圖13 實驗環(huán)境的網(wǎng)絡拓撲結(jié)構(gòu)
Figure 13 Network topology of experimental environment
為了實現(xiàn)提出的方法,需要配置TPCM并修改BIOS固件的源代碼,增加對OS引導程序的可信驗證模塊(BIOS固件使用了開源的EDK2源代碼[37]);需要把編譯生成的FV文件通過專用工具燒寫至BIOS閃存。容器的runtime使用開源的Docker源代碼[38]。容器的管理調(diào)度使用開源的Kubernetes源代碼[39]。
本文從以下3方面對實驗結(jié)果進行分析。
(1)可信啟動。首先,TPCM對啟動過程中的啟動代碼、主板固件、系統(tǒng)內(nèi)核、TSB、Docker、Kubernetes等關鍵部件進行度量并存儲基準值。然后,在運行啟動過程中分別對這些部件進行可信度量并與基準值比較。實驗結(jié)果表明,TPCM能夠發(fā)現(xiàn)被修改的固件并發(fā)出報警信號。本文所采用的TPCM與文獻[16,19]采用TPM的關鍵功能的對比,如表1所示。
表1 TPCM與TPM防御有效性的比較
本文進行了可信啟動的性能測試,在操作系統(tǒng)Ubuntu16.04.7上,經(jīng)過20次的可信啟動實驗,結(jié)果表明對操作系統(tǒng)進行可信度量時間比重為0.55%左右。這個結(jié)果是可以接受的,對操作系統(tǒng)時間的啟動影響不大。
(2)主動可信度量。本文基于TPCM在Docker中嵌入可信度量代理,在容器啟動時對容器進行度量,如果與基準值一樣,則正常運行,否則發(fā)出報警信號并終止運行。本文測試了容器被惡意篡改前后的運行結(jié)果,只有沒有被篡改的容器能夠運行。
把TSB與容器的可信度量代理部署到管理節(jié)點與計算節(jié)點進行實驗。在相同條件下,使用文獻[17-18]中的vTPM進行實驗并與本文方法進行比較。本文方法不需要額外加載vTPM,節(jié)約了時間并提高了效率,結(jié)果如圖14所示。
圖14 容器Image的度量時間
(3)可信遠程證明??尚胚h程證明包括對容器運行環(huán)境的證明與容器自身的證明。實驗表明,本文方法能夠根據(jù)用戶的請求得到容器運行環(huán)境的可信狀態(tài)數(shù)據(jù)。
本文采用主動免疫可信計算技術來保護容器云環(huán)境的安全可信運行。本文對比了基于TPM[16,19]或基于vTPM[17-18]構(gòu)建基于容器的可信云環(huán)境方法,總結(jié)如表2所示。
在可信啟動方面,由于TPCM先上電,在主板通電之前能夠?qū)Ψ掌髦靼骞碳cBIOS進行可信驗證。根據(jù)表1中的TPCM 與 TPM 防御效果比較得出,TPCM安全性比文獻[16,19]提出的采用TPM進行可信啟動安全性高,本文提出的可信啟動方法能夠驗證啟動代碼與主板固件。
在可信度量方面,本文基于TPCM采用在Docker中嵌入可信度量代理進行主動度量,實際由可信芯片TPCM進行可信度量。TPCM物理芯片不能被惡意篡改,而虛擬的vTPM可能被惡意篡改。根據(jù)表2得出,本文提出的使用TPCM來保護容器的方法的安全性比文獻[17-18]提出的使用vTPM來保護容器的方法好。實驗結(jié)果表明,本文提出的方法不需要加載vTPM,節(jié)約了初始化時間,提高了效率。
表2 構(gòu)建容器的不同受信任的云環(huán)境方法的比較
在可信遠程證明方面,本文方法能夠驗證啟動代碼與主板固件,并且實現(xiàn)了基于TPCM的主動度量,能夠?qū)崟r證明容器云環(huán)境的安全可信。
本文方法實現(xiàn)了容器云環(huán)境的可信啟動、主動可信度量與可信遠程證明,實現(xiàn)了容器云可信環(huán)境。首先,基于TPCM實現(xiàn)可信啟動。從TPCM到BIOS,再到系統(tǒng)內(nèi)核與TSB,最后到Docker與Kubernetes應用程序,逐級進行可信度量,形成一條信任鏈。其次,將可信度量代理模塊嵌入Docker,實現(xiàn)對通過Docker中運行的容器進行主動度量,這比采用TPM或vTPM保護容器的方法,安全性更高并且執(zhí)行效率更高。最后,本文實現(xiàn)了對容器云環(huán)境的可信遠程證明。本文采用了TPCM,可以保護硬件固件的安全性、容器所在主機的操作系統(tǒng)內(nèi)核、Docker與Kubernetes的安全性,并且通過可信度量代理對運行的容器進行主動度量,保護范圍更全面且可信性更高。
下一步,將在安裝有物理芯片TPCM的容器云服務上對本文提出的方法進行驗證。由于實驗條件限制,本文采用虛擬機對所提方法進行驗證,沒有使用TPCM,雖然可以驗證所提方法的安全性,但仍需要在真實環(huán)境下進行更多的實驗。
[1] 張玉清, 王曉菲, 劉雪峰, 等. 云計算環(huán)境安全綜述[J]. 軟件學報, 2016, 27(6): 1328-1348.
ZHANG Y Q, WANG X F, LIU X F, et al. Survey on cloud computing security[J]. Journal of Software, 2016, 27(6): 1328-1348.
[2] SINGH A, CHATTERJEE K. Cloud security issues and challenges: a survey[J]. Journal of Network and Computer Applications, 2017, 79.
[3] SINGH S, JEONG Y S, PARK J H. A survey on cloud computing security: issues, threats, and solutions[J]. Journal of Network and Computer Applications, 2016, 75.
[4] 陳廣勇, 祝國邦, 范春玲. 《信息安全技術網(wǎng)絡安全等級保護測評要求》(GB/T 28448-2019)標準解讀[J]. 信息網(wǎng)絡安全雜志, 2019, 19(7): 1-8.
CHEN G Y, ZHU G B, FAN C L. Information security technology-evaluation requirement for classified protection of cybersecurity (GB/T 28448-2019) standard interpretation[J]. Netinfo Security, 2019, 19(7): 1-8.
[5] 吳松, 王坤, 金海. 操作系統(tǒng)虛擬化的研究現(xiàn)狀與展望[J]. 計算機研究與發(fā)展, 2019, 56(1): 58-68.
WU S, WANG K, JIN H. Research situation and prospects of operating system virtualization[J]. Journal of Computer Research and Development, 2019, 56(1): 58-68.
[6] FELTER W, FERREIRA A, RAJAMONY R, et al. An updated performance comparison of virtual machines and Linux containers[C]//2015 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS). 2015.
[7] MERKEL D. Docker: lightweight linux containers for consistent development and deployment[J]. Linux Journal, 2014(1):76-90.
[8] BRENDAN B, BRIAN G, DAVID O, et al. Borg, Omega, and Kubernetes[J]. Communications of the ACM, 2016, 59(5):50-57.
[9] SULTAN S, AHMAD I, DIMITRIOU T. Container security: issues, challenges, and the road ahead[J]. IEEE Access, 2019, 7(1): 52976-52996.
[10] RUI S, GU X H, ENCK W. A study of security vulnerabilities on docker hub[C]//Proceedings of the Seventh ACM on Conference on Data and Application Security and Privacy. 2017.
[11] THANH B. Analysis of docker security[J]. arXiv preprint arXiv:1501.02967, 2015.
[12] 魯濤, 陳杰, 史軍. Docker安全性研究[J]. 計算機技術與發(fā)展, 2018, 28(6): 115-120.
LU T, CHEN J, SHI J. Research of Docker security[J]. Computer Technology and Development, 2018, 28(6): 115-120.
[13] JAYANTH G, DESIKAN T, TURNER Y. Over 30% of official images in docker hub contain high priority security vulnerabilities[R]. Technical Report. 2015.
[14] MANU A R, PATEL J K, AKHTAR S, et al. A study, analysis and deep dive on cloud PAAS security in terms of Docker container security[C]//2016 International Conference on Circuit, Power and Computing Technologies (ICCPCT). 2016.
[15] SUN Y Q, SAFFORD D, ZOHAR M, et al. Security namespace: making Linux security frameworks available to containers[C]//Proceedings of the 27th USENIX Conference on Security Symposium (SEC'18). 2018: 1423-1439.
[16] BENEDICTIS M D, LIOY A. Integrity verification of Docker containers for a lightweight cloud environment[J]. Future Generation Computer Systems, 2019, 97(8):236-246.
[17] HOSSEINZADEH S, LAURéN S, LEPPNEN V. Security in container-based virtualization through vTPM[C]//IEEE/ACM International Conference on Utility & Cloud Computing. 2017.
[18] GUO Y, YU A, GONG X, et al. Building trust in container environment[C]//2019 18th IEEE International Conference on Trust, Security and Privacy in Computing and Communications/13th IEEE International Conference on Big Data Science and Engineering (TrustCom/BigDataSE). 2019.
[19] 王鵑, 胡威, 張雨菡, 等. 基于Docker的可信容器[J]. 武漢大學學報(理學版), 2017, 63(2): 102-108.
WANG J, HU W, ZHANG Y H, et al. Trusted container based on Docker[J]. Journal of Wuhan University (Natural Science Edition), 2017, 63(2): 102-108.
[20] XIE X L, YUAN T W, ZHOU X, et al. Research on trust model in container-based cloud service[J]. CMC: Computers, Materials & Continua, 2018, 56(2).
[21] 馮登國, 秦宇, 汪丹, 等.可信計算技術研究[J]. 計算機研究與發(fā)展, 2011, 48(8): 1332-1349.
FENG D G, QIN Y, WANG D, et al. Research on trusted computing technology[J]. Journal of Computer Research and Development, 2011, 48(8): 1332-1349.
[22] SHEN C X, ZHANG H G, WANG H M, et al. Research on trusted computing and its development[J]. Science China Information Sciences, 2010, 53(3): 405-433.
[23] 張煥國, 羅捷, 金剛, 等. 可信計算研究進展[J]. 武漢大學學報(理學版), 2006(5): 513-518.
ZHANG H G, LUO J, JIN G, et al. Development of trusted computing research[J]. Wuhan University Journal of Natural Sciences, 2006(5): 513-518.
[24] FENG D G, QIN Y, FENG W, et al. The theory and practice in the evolution of trusted computing[J]. Chinese Science Bulletin, 2014, 59(32):4173-4189.
[25] 郭穎, 毛軍捷, 張翀斌, 等. 基于可信平臺控制模塊的主動度量方法[J]. 清華大學學報(自然科學版), 2012, 52(10): 1465-1473.
GUO Y, MAO J J, ZHANG C B, et al. Active measures base on a trusted platform control module[J]. Journal of Tsinghua University (Sci and Tech), 2012, 52(10): 1465-1473.
[26] 中國國家標準化委員會. 信息安全技術可信計算規(guī)范可信平臺控制模塊[S]. 征求意見稿, 2019.
National Information Security Standardization Technical Committee. Information security technology-trusted computing specification-motherboard function and interface of trusted platform[S]. Draft for Comments, 2019.
[27] 沈昌祥.用主動免疫可信計算3.0筑牢網(wǎng)絡安全防線營造清朗的網(wǎng)絡空間[J]. 信息安全研究, 2018, 4(4): 282-302.
SHEN C X. To create a positive cyberspace by safeguarding network security with active immune trusted computing 3.0[J]. Journal of Information Security Research, 2018, 4(14): 282-302.
[28] GB/T 37935-2019. 信息安全技術可信計算規(guī)范可信軟件基[S]. 2020.
GB/T 37935-2019, Information security technology-Trusted computing specification-Trust software base[S]. 2020.
[29] 沈昌祥, 張大偉, 劉吉強, 等. 可信3.0戰(zhàn)略:可信計算的革命性演變[J]. 中國工程科學, 2016, 18(6): 53-57.
SHEN C X, ZHANG D W, LIU J Q, et al. The strategy of TC 3.0: a revolutionary evolution in trusted computing[J]. Strategic Study of Chinese Academy of Engineering, 2016, 18(6): 53-57.
[30] 田俊峰, 常方舒. 基于TPM聯(lián)盟的可信云平臺管理模型[J]. 通信學報, 2016, 37(2): 1-10.
TIAN J F, CHANG F S. Trusted cloud platform management model based on TPM alliance[J]. Journal on Communications, 2016, 37(2): 1-10.
[31] 劉國杰, 張建標. 基于TPCM的服務器可信PXE啟動方法[J]. 網(wǎng)絡與信息安全學報, 2020, 6(6): 105-111.
LIU G J, ZHANG J B. TPCM-based trusted PXE boot method for servers[J]. Chinese Journal of Network and Information Security, 2020, 6(6): 105-111.
[32] BERGER S, CáCERES R, GOLDMAN K A, et al. vTPM: virtualizing the trusted platform module[J]. Usenix Security, 2006, 15: 305-320.
[33] 田健生, 詹靜. 基于TPCM的主動動態(tài)度量機制的研究與實現(xiàn)[J]. 信息網(wǎng)絡安全, 2016, 16(6): 22-27 .
TIAN J S, ZHAN J. Research and implementation of active dynamic measurement based on TPCM[J]. Netinfo Security, 2016, 16(6): 22-27 .
[34] 黃堅會, 石文昌. 基于ATX主板的TPCM主動度量及電源控制設計[J]. 信息網(wǎng)絡安全, 2016, 16(11): 1-5 .
HUANG J H, SHI W C. The TPCM active measurement and power control design for ATX motherboard[J]. Netinfo Security. 2016, 16(11): 1-5 .
[35] 黃堅會, 沈昌祥. TPCM主動防御可信服務器平臺設計[J]. 鄭州大學學報(理學版), 2019, 51(3): 1-6.
HUANG J H, SHEN C X. Trusted platform design of server with TPCM active defense[J]. Journal of Zhengzhou University (Natural Science Edition) (2019), 51(3): 1-6.
[36] IBM's software TPM 2 [EB].
[37] EDK Ⅱproject [EB].
[38] Docker [EB].
[39] Kubernetes [EB].
Research on the trusted environment of container cloud based on the TPCM
LIU Guojie1,2, ZHANG Jianbiao1,2, YANGPing3, LIZheng1,2
1. Faculty of Information Technology, Beijing University of Technology, Beijing 100124, China 2. Beijing Key Laboratory of Trusted Computing, Beijing 100124, China 3. Beijing Information Science and Technology University, Beijing 100192, China
Container technology is a lightweight operating system virtualization technology that is widely used in cloud computing environments and is a research hotspot in the field of cloud computing. The security of container technology has attracted much attention. A method for constructing a trusted environment of container cloud using active immune trusted computing was proposed, and its security meet the requirements of network security level protection standards. First, container cloud servers were measured through the TPCM and a trust chain from the TPCM to the container's operating environment was established. Then, by adding the trusted measurement agent of the container to the TSB, the trusted measurement and trusted remote attestation of the running process of the container were realized. Finally, an experimental prototype based on Docker and Kubernetes and conduct experiments were built. The experimental results show that the proposed method can ensure the credibility of the boot process of the cloud server and the running process of the container and meet the requirements of the network security level protection standard evaluation.
trusted computing, trusted boot, trusted measurement, remote attestation
TP309
A
10.11959/j.issn.2096?109x.2021068
2021?01?05;
2021?04?22
張建標,zjb@bjut.edu.cn
國家自然科學基金(61971014);國防科技實驗信息安全實驗室對外開放項目(2017XXAQ08)
The National Natural Science Foundation of China (61971014), National Defense Science and Technology Laboratory of Information Security (2017XXAQ08)
劉國杰, 張建標, 楊萍, 等. 基于TPCM的容器云可信環(huán)境研究[J]. 網(wǎng)絡與信息安全學報, 2021, 7(4): 164-174.
LIU G J, ZHANG J B, YANG P, et al. Research on the trusted environment of container cloud based on the TPCM[J]. Chinese Journal of Network and Information Security, 2021, 7(4): 164-174.
劉國杰(1982? ),男,北京工業(yè)大學博士生,主要研究方向為網(wǎng)絡與信息安全、可信計算。
張建標(1969? ),男,北京工業(yè)大學教授、博士生導師,主要研究方向為網(wǎng)絡與信息安全、可信計算。
楊萍(1987? ),女,北京信息科技大學講師,主要研究方向為人工智能、智能信息處理、機器學習和信息安全。
李錚(1992? ),女,北京工業(yè)大學講師,主要研究方向為信息安全、密碼分析和對稱密碼算法的設計。