云計算通過虛擬化技術,極大地提高了資源的使用效率,它將改變我們獲取信息的方式,隨之產生的是數據在云中的安全問題。本文由云計算面臨的安全威脅引出了其特定的安全需求,通過CSA的安全模型映射出安全層次和具體要解決的安全內容,針對各層次提出了應對策略。
□趙玉明
近幾年,隨著保險行業的快速發展,各大保險公司的經營規模不斷擴大,公司的信息化建設也經歷了一場跨越式的發展:從最初的幾臺服務器、幾十臺客戶端小型網絡,發展到今天的近百臺服務器、上千臺客戶端。與此同時,后臺存儲、計算機能量消耗,數據量急劇增長,成本也隨之升高。原始的互聯網系統與服務設計已經不能解決上述種種問題,云計算應運而生。云計算是在分布式計算、網格計算、并行計算等發展的基礎上提出的一種新型計算模型,它面對的是超大規模的分布式環境,核心是提供數據存儲和網絡服務。
伴隨著云計算的應用,隨之產生的是數據在云中的安全問題。云的安全和傳統的安全到底有多大的差異?需要在哪些方面給予特別的注意?如云安全聯盟(CSA)在其發布的“Security Guidance for Critical Areas of Focus in Cloud Computing”中所言:在安全控制方面,云與其它IT環境相比并沒有很大的不同;但是,在服務模型、運營模型以及用于提供服務的相關技術等方面,云可能會導致與以往不同的風險。
云計算存在的安全問題
虛擬化安全問題。虛擬化技術能夠充分利用現有的硬件資源,拓展了基礎設施、硬件、軟件的服務能力,然而,虛擬化技術也帶來了如下的安全問題:如果主機遭到破壞,那么主機所管理的虛擬機VM將面臨威脅;如果虛擬網絡遭到破壞,那么客戶端也將受到損害;如果單臺VM虛擬機存在漏洞,那么相鄰的其它VM也將面臨威脅。
云平臺可用性問題。用戶的數據存儲、處理、網絡傳輸等都與云計算系統有關。這對云平臺服務的連續性、SLA以及事件處理等提出了挑戰。另外,當發生系統故障時,如何保證用戶數據的快速恢復也成為一個重要問題。
云平臺遭受攻擊的問題。云計算平臺由于其用戶、信息資源的高度集中,容易成為黑客攻擊的目標。另外,關鍵信息的丟失或者被竊取,對于用戶來說,都是不能接受的。
云計算安全參考模型
從服務模型的角度,CSA 提出了3種基本云服務層次模型。IaaS 是所有云服務的基礎,PaaS建立在IaaS之上,而SaaS又建立在PaaS之上。
IaaS:為用戶提供處理、存儲、網絡以及其它基礎計算資源的服務,用戶可以在其上部署和運行包括操作系統和應用在內的任何軟件。
PaaS:為用戶提供將其應用部署在云架構上的服務,而創建這些應用的編程語言和工具必須得到服務提供商的支持。
SaaS:為用戶提供在云架構上運行的應用的服務。用戶可以從多種多樣的瘦客戶設備經由瘦客戶接口(例如web瀏覽器)對應用進行訪問。
此處,我們給出一種云計算平臺安全技術體系框架,如圖所示。
云計算平臺安全技術體系框架
從圖中可以看出,對于不同的云服務模式(IaaS、PaaS、SaaS),安全關注點是不一樣的;當然,也有一些是這3種模式需要共同關注的,即無論是IaaS、PaaS,還是SaaS,都應該關注的安全,如:數據安全、加密和密鑰管理、身份識別和訪問管理、安全事件管理、業務連續性等等。
IaaS層安全策略:
IaaS涵蓋了從機房設備到其中的硬件平臺等所有的基礎設施資源層面。IaaS層的安全,主要包括物理與環境安全、主機安全、網絡安全、虛擬化安全、接口安全。
1.物理安全:是指保護云計算平臺免遭地震、水災、火災等事故以及人為行為導致的破壞。
2.主機安全:應該要求做到身份鑒別、訪問控制、安全審計、剩余信息保護、入侵防范、惡意代碼控制、資源控制等。
3.網絡安全:網絡結構安全、網絡訪問控制、網絡安全審計、邊界完整性檢查、網絡入侵防范、惡意代碼防范、網絡設備防護。
4.虛擬化安全:包括兩個方面的問題:一是虛擬技術本身的安全,二是虛擬化引入的新的安全問題。
5.接口安全:需要采取相應的措施來確保接口的強用戶認證、加密和訪問控制的有效性,避免利用接口對內和對外的攻擊,避免利用接口進行云服務的濫用等。
PaaS層安全策略:
PaaS位于IaaS之上,又增加了一個層面用以與應用開發框架、中間件能力以及數據庫、消息和隊列等功能集成。PaaS允許開發者在平臺之上開發應用,開發的編程語言和工具由PaaS支持提供。PaaS層的安全,主要包括接口安全、運行安全。
1.接口安全:需要采取相應的措施來確保接口的強用戶認證、加密和訪問控制的有效性,避免利用接口對內和對外的攻擊,避免利用接口進行云服務的濫用等。
2.運行安全:主要包括對用戶應用的安全審核、不同應用的監控、不同用戶系統的隔離、安全審計等。
SaaS層安全策略:
SaaS位于底層的IaaS和PaaS之上,SaaS能夠提供獨立的運行環境,用以交付完整的用戶體驗,包括內容、展現、應用和管理能力。SaaS層的安全,主要包括應用安全:就是要在應用的設計開發之初,充分考慮到安全性,應該制定并遵循適合SaaS模式的SDL(安全開發生命周期)規范和流程,從整個生命周期上去考慮應用安全。
共有安全:
無論是IaaS、PaaS還是SaaS,都存在數據安全、加密和密鑰管理、身份識別和訪問管理、安全事件管理、業務連續性。
1.數據安全:就是要保障數據的保密性、完整性、可用性、真實性、授權、認證和不可抵賴性。
2.加密和密鑰管理:包括密鑰存儲的保護、密鑰存儲的訪問控制、密鑰的備份和恢復。
3.身份識別和訪問管理:包括認證、訪問控制、單點登錄、職權分離、數據保護、特權用戶管理、數據防丟失保護措施與合規報告等。
4.安全事件管理:實現數據采集、關聯分析、事件優先重要性分析、安全事件處理等。
5.業務連續性:進行業務連續性管理(BCM),制定相應的業務連續性規劃(BCP),并且能夠得以落實和實施,使得當出現災難時,可以快速的恢復業務,繼續為用戶提供服務
云計算正處于發展初期,云計算安全還面臨很多需要解決的問題,除了前面提到的安全風險之外,還包括相關服務提供商來說,如何保證用戶存儲在云中的數據的安全,對用戶來說,如何才能相信云服務提供商能保證云中數據的安全,將是云計算落地急需解決的問題。