本質上,所有的云計算服務由一個“堆棧”組成,可能包括硬件資產(服務器內存、CPU、磁盤)、運行在硬件上的虛擬化技術、網絡組建(包含物理和虛擬的)、額外的計算和編制軟件、大規模存儲和虛擬機(VM)或者應用和軟件實例。
盡管這個廣泛的技術集在計算功能上打開了一個充滿機遇的世界,但是企業必須知道因為這些技術進行交互的途徑以及經常在云計算客戶之間共享的特性,云堆棧中會出現漏洞。比如,多用戶系統中,應用和數據托管在公有云或者商業云環境中(就像是在相同的物理平臺上),制定合適的隔離、分段以及虛擬系統和數據之間的 訪問控制都是最基本的。
在任何hypervisor中,都可以托管若干VM。在一個私有網絡或者私有云中,內部分段(或者甚至是在不同物理主機上物理分離的)都可以輕松維護。然 而,在云環境中,內部安全團隊不具備基礎架構(公有云和混合云部署)的控制權限,多個組織的VM和數據運行在同樣的物理平臺上就會存在風險。此外,管理和 hypervisor中所有活動的監控都至關重要,嘗試和追蹤其他用戶的VM需要被檢測到(或者阻止),迅速防止問題發生。
為了獲取更好的云堆棧安全漏洞理解,我們來看一下可能在不同云模型中受到的各種威脅。
IaaS和PaaS威脅
在基礎架構即服務(IaaS)模型中,整個VM可以在多租戶環境中托管,這意味著攻擊者可能在相同的環境中創建惡意的VM。MIT的研究員透露了定位亞馬 遜云中具體物理云服務器的方法,可能很多其他的提供商的環境也是如此。這是一種相當具有創新性的攻擊,允許攻擊者通過具體的受害VM行為屬性,精確到其貯 存的物理服務器。通過所獲取的信息,攻擊者能夠上傳和運行惡意的VM,隨后可以用于執行數據盜竊攻擊和其他的攻擊。
2013年十一月,一群研究員在演示可行的“邊信道”攻擊對陣運行在相同的hypervisor平臺上的VM時,曝光了另外一種IaaS模型中潛在共享技術漏洞。在 這種攻擊中,VM溢滿本地硬件緩存,導致目標VM自己重寫一些數據。基于這些寫入的數據,以及其寫入方式,攻擊者可以識別出這個目標VM的各種信息,包括 隔離使用的加密秘鑰以及其他的加密功能。雖然這種類型的攻擊可能難以在云端實現,但是演示顯示了企業云計算多租戶環境多么容易受到攻擊。
平臺即服務(PaaS)環境能夠一起運行所有的VM,但是客戶對于其配置也缺失了控制;導致他們沒有能力創建單獨的VM,攻擊者可能不能在IaaS 環境中 創建惡意VM。這并意味著PaaS模型沒有云堆棧漏洞,因為其他的共享組件會招致風險,比如存儲和API。在API的情況中,數據可以以非加密的形式轉 換,或者在有缺陷的授權中實施。
至于存儲(有些可以影響所有的云模型),關鍵的風險在于缺少客戶數據之間的隔離。2012年四月, Context信息安全的研究員表示他們能夠從數個云提供商處下載自己的VM磁盤文件,在進行刑偵分析后,斷定其他客戶的數據也呈現在其中。原因何在?因 為提供商沒能在多租戶環境中隔離和清潔存儲空間。
如何管理云堆棧風險
那么企業如何能夠對抗共享技術帶來的威脅呢?首先,必須理解有多少種實際的風險,包括上面提到的這些以及其他的風險。比如,“VM逃脫”和 hypervisor妥協場景類似于經常探討的Blue Pill,但是實際生活中這些威脅的發生概率比較低。同樣的,實施邊信道攻擊的協調、環境知識以及所需技能極為超凡,目的就是為了獲取共享存儲緩存的加密 密鑰,因此這樣的威脅在大多數云環境中可能不會發生。
話雖如此,但是企業還是必須有合適的預防措施,確保云堆棧的安全。加密敏感數據和VM組件是很多這種威脅的有利威懾。從內在來看,虛擬化平臺支持內置分段 和隔離,很多更是芯片級的。此外,網絡和托管的訪問控制可以在物理和虛擬網絡層實施,在VM本身中也可以。 Hypervisor的訪問控制也必須考慮在內,攻擊者獲取了hypervisor的控制或者其管理平臺的控制也是毀滅性的。
大多數企業的關鍵在于直接詢問云提供商關于其安全實踐的問題,尤其是如何鎖定hypervisor或者堆棧中的其他層。此外,找出最適合的訪問控制,阻止 惡意訪問,從而管理和編制應用。比如,應該包括用戶賬戶和群組管理、密碼和多因子認證策略和時間,以及更加健壯的身份識別管理工具和流程。