一種面向云計(jì)算環(huán)境下虛擬機(jī)的威脅建模方法
摘要:針時云計(jì)算環(huán)境中虛擬機(jī)平臺存在的弱點(diǎn)和漏洞,分析研究了虛擬機(jī)可能面臨的威脅和攻擊,基于STRIDE建模技術(shù)構(gòu)建了云計(jì)算環(huán)境下虛擬機(jī)平臺的安全威脅模型。并對威脅發(fā)生的可能性和嚴(yán)重程度進(jìn)行量化,從而進(jìn)一步評估整個云計(jì)算系統(tǒng)面臨的安全威脅。
關(guān)鍵詞:云計(jì)算;虛擬機(jī);STRIDE威脅建模
0 引言
云計(jì)算是一種基于互聯(lián)網(wǎng)服務(wù)的新型計(jì)算模式,通過彈性動態(tài)分配虛擬化資源給用戶帶來全新的計(jì)算體驗(yàn),讓用戶從繁重且昂貴的運(yùn)營與維護(hù)中解脫出來。虛擬化技術(shù)是實(shí)現(xiàn)云計(jì)算最重要的技術(shù)基礎(chǔ),實(shí)現(xiàn)了物理資源的邏輯抽象和統(tǒng)一表示,解決了資源的動態(tài)可重構(gòu)、監(jiān)控和自動化部署問題。在云計(jì)算技術(shù)飛速發(fā)展的同時,云計(jì)算系統(tǒng)的安全問題也不斷暴露出來。全球綜合性網(wǎng)絡(luò)安全信息解決方案供應(yīng)商安博士公司基于網(wǎng)絡(luò)安全監(jiān)控平臺與安全威脅趨勢,發(fā)布了2011年七大網(wǎng)絡(luò)安全威脅報(bào)告,其中指出,針對云計(jì)算及虛擬化技術(shù)漏洞的攻擊所占比重越來越大。
云計(jì)算的安全問題引起了廣泛的關(guān)注。Chen Qian,Jia Tiejun,J.Schiffman等人分別研究了云計(jì)算模型、云安全、云服務(wù)基礎(chǔ)架構(gòu)安全與挑戰(zhàn)等問題。張紅斌等人研究建立了內(nèi)部威脅云模型,實(shí)現(xiàn)了基于云模型的內(nèi)部威脅感知算法。本文擬通過分析研究云計(jì)算環(huán)境下虛擬機(jī)平臺所面臨的常見安全威脅,建立威脅模型來確定和評估云計(jì)算系統(tǒng)的安全威脅及系統(tǒng)漏洞嚴(yán)重程度,有助于制定完整的安全策略來對抗云計(jì)算系統(tǒng)所面臨的威脅。
1 虛擬機(jī)威脅建模流程
STRIDE威脅建模技術(shù)是微軟公司提出的一項(xiàng)技術(shù),廣泛用于安全系統(tǒng)的威脅建模。STRIDE是6種威脅的首字母縮寫:
(1)欺騙標(biāo)識(Spoofing identity),使用另一個用戶的用戶名和口令、認(rèn)證信息等。
(2)篡改數(shù)據(jù)(Tampering with data),惡意修改數(shù)據(jù)。
(3)拒絕履約(Repudiation),用戶拒絕從事一項(xiàng)活動,而又沒有辦法證明其拒絕履約。
(4)信息泄漏(Information disclosure),把信息暴露給無訪問權(quán)限的用戶。
(5)拒絕服務(wù)(Denial of Service),使合法用戶得不到服務(wù)。
(6)特權(quán)提升(Elevation of Privilege),使沒有特權(quán)的用戶獲得特權(quán),從而有足夠的能力損壞或摧毀整個系統(tǒng)。
云計(jì)算環(huán)境下虛擬機(jī)STRIDE安全威脅模型建立過程,可以概括為云系統(tǒng)結(jié)構(gòu)分析、威脅識別、威脅量化評估3個階段。其中,系統(tǒng)結(jié)構(gòu)分析階段是通過對云計(jì)算系統(tǒng)的架構(gòu)分析,劃定系統(tǒng)的各個層面和安全邊界。威脅識別階段通過分析、識別云計(jì)算系統(tǒng)運(yùn)行的關(guān)鍵節(jié)點(diǎn)和數(shù)據(jù)所面臨的威脅來構(gòu)建STRIDE模型。威脅量化評估階段是對識別的威脅進(jìn)行量化,進(jìn)而對整個云計(jì)算系統(tǒng)面臨的安全威脅嚴(yán)重程度進(jìn)行評估。
2 云計(jì)算環(huán)境下虛擬機(jī)架構(gòu)分析
虛擬機(jī)按照實(shí)現(xiàn)架構(gòu)主要分為I型(Bare-Metal,裸機(jī)型)和Ⅱ型(Hosted,宿主型)兩大類。I型虛擬機(jī)中,虛擬化技術(shù)通過直接在硬件平臺上添加一層虛擬機(jī)監(jiān)控器(Virtual Machine Monitor,VMM,也稱Hyper-visor)程序,實(shí)現(xiàn)對CPU、內(nèi)存管理器及I/O系統(tǒng)等的虛擬化管理,并負(fù)責(zé)對硬件資源的調(diào)度、所有虛擬機(jī)(Virtual machine,VM)的管理并響應(yīng)虛擬機(jī)的請求。I型虛擬機(jī)主要應(yīng)用于服務(wù)器虛擬化。Ⅱ型虛擬機(jī)通過在寄主操作系統(tǒng)中構(gòu)建一個虛擬化管理層實(shí)現(xiàn)對虛擬機(jī)的管理,該型虛擬機(jī)主要應(yīng)用于桌面虛擬化。在云計(jì)算環(huán)境下,參照I型虛擬機(jī)架構(gòu),可以將提供云服務(wù)的虛擬化平臺分為用戶層、應(yīng)用層、系統(tǒng)層、監(jiān)控層、硬件層等五個層面,如圖1所示。
虛擬化技術(shù)的引入也帶來了新的安全威脅與挑戰(zhàn),主要表現(xiàn)為以下幾個方面:
(1)虛擬機(jī)監(jiān)控器引入新的安全威脅。當(dāng)VMM本身存在的潛在漏洞或配置錯誤被攻擊時,極易造成虛擬機(jī)溢出,也稱為虛擬機(jī)逃逸,即攻擊者可以獲得對虛擬機(jī)監(jiān)控器或虛擬機(jī)管理系統(tǒng)的控制。
(2)虛擬機(jī)遷移引入新的安全威脅。虛擬機(jī)實(shí)時遷移技術(shù)可以使虛擬機(jī)在不中斷應(yīng)用的情況下在不同的物理主機(jī)之間實(shí)時進(jìn)行遷移,對于分布式數(shù)據(jù)中心、集群的負(fù)載均衡和災(zāi)難恢復(fù)有重大意義。虛擬機(jī)實(shí)時遷移過程中,攻擊者可能對遷移控制層、遷移數(shù)據(jù)層、遷移模塊等發(fā)動攻擊,這對虛擬機(jī)的可靠運(yùn)行帶來了安全挑戰(zhàn)。
(3)虛擬機(jī)共享機(jī)制引入的安全威脅。為了保證應(yīng)用層服務(wù)能夠相對平等高效地共享底層硬件,虛擬化技術(shù)提供了大量的共享資源,而這些共享資源則成為隱蔽通道發(fā)生的源泉。另外數(shù)據(jù)殘留也有可能造成敏感信息泄露。
(4)新增的網(wǎng)絡(luò)監(jiān)管障礙。在虛擬化數(shù)據(jù)中心中采用了新的網(wǎng)絡(luò)模型,幾十個操作系統(tǒng)或應(yīng)用程序以虛擬機(jī)的形式同時部署在物理服務(wù)器上,這些虛擬機(jī)同時共享該服務(wù)器的硬件資源,虛擬機(jī)間的網(wǎng)絡(luò)流量不經(jīng)過傳統(tǒng)的硬件防火墻、IDS和IPS等網(wǎng)絡(luò)安全設(shè)備,這顯然是網(wǎng)絡(luò)安全防護(hù)中的盲點(diǎn)。當(dāng)一臺虛擬機(jī)發(fā)生問題時,安全威脅就會通過網(wǎng)絡(luò)蔓延至其他的虛擬機(jī)。
3 威脅識別
威脅識別是對云計(jì)算環(huán)境下虛擬機(jī)平臺劃分的各個層面構(gòu)建STRIDE威脅模型,分析每個層面和關(guān)鍵節(jié)點(diǎn)是否容易受到S、T、R、I、D以及E類威脅的攻擊,識別并記錄這些威脅。虛擬機(jī)平臺的STRIDE安全威脅模型如圖2所示。
(1)用戶層可能面臨的威脅
威脅①:攻擊者有可能在用戶向云服務(wù)(以Web服務(wù)器為例)提交信息或者Web服務(wù)器應(yīng)答用戶響應(yīng)請求的過程中查看或者篡改數(shù)據(jù)(信息泄露/篡改數(shù)據(jù))。
(2)應(yīng)用層可能面臨的威脅
威脅②:攻擊者可能發(fā)動應(yīng)用層級的DDoS攻擊,致使Web服務(wù)器無法響應(yīng)合法用戶的請求(拒絕服務(wù))。
威脅③:攻擊者可能通過攻擊篡改服務(wù)器中的Web頁面(篡改數(shù)據(jù))。
(3)系統(tǒng)層可能面臨的威脅
威脅④:攻擊者可能利用虛擬機(jī)操作系統(tǒng)的漏洞或者管理配置錯誤進(jìn)行攻擊,獲取虛擬機(jī)的管理權(quán)限,從而竊取Web服務(wù)器信息(信息泄露/提升權(quán)限)。
威脅⑤:攻擊者可能運(yùn)用DNS欺騙、ARP緩存中毒攻擊、會話劫持等中間人攻擊技術(shù),對虛擬機(jī)遷移過程進(jìn)行嗅探、入侵和攻擊,檢測、竊取或肆意破壞虛擬機(jī)遷移中的網(wǎng)路數(shù)據(jù)流,達(dá)到敏感數(shù)據(jù)竊取、數(shù)據(jù)篡改、密碼破譯等目的(信息泄露/篡改數(shù)據(jù)/權(quán)限提升/欺騙)。
威脅⑧:攻擊者可能通過字典攻擊或者暴力破解等方式破解客戶操作系統(tǒng)的身份驗(yàn)證,從而可以冒充合法用戶(欺騙/信息泄露/提升權(quán)限)。
(4)監(jiān)控器層可能面臨的威脅
威脅⑥:攻擊者可能利用虛擬機(jī)監(jiān)控器程序漏洞、設(shè)備驅(qū)動漏洞或者配置不當(dāng)進(jìn)行攻擊,獲取虛擬機(jī)監(jiān)控器的管理權(quán)限,攻擊者可以進(jìn)入主機(jī)系統(tǒng)和在主機(jī)上運(yùn)行的其他虛擬機(jī)(信息泄露/篡改數(shù)據(jù)/權(quán)限提升/欺騙)。
威脅⑦:攻擊者可能利用系統(tǒng)間隱蔽通道,如基于共享內(nèi)存、緩存Cache和CPU負(fù)載的隱蔽通道獲取其他用戶的數(shù)據(jù)信息(信息泄露)。
威脅⑧:攻擊者可能通過字典攻擊或者暴力破解等方式破解虛擬化管理系統(tǒng)的身份驗(yàn)證,從而可以冒充合法用戶(欺騙/信息泄露/提升權(quán)限)。
(5)硬件層可能面臨的威脅
威脅⑨:攻擊者可能通過發(fā)動DDOS、Botnet攻擊,占用網(wǎng)絡(luò)帶寬或使得服務(wù)器無法響應(yīng)合法用戶的請求(拒絕服務(wù))。
威脅⑩:攻擊者(內(nèi)部人員或者取得數(shù)據(jù)庫權(quán)限的攻擊者)可能直接訪問服務(wù)器,竊取或者篡改服務(wù)器中的數(shù)據(jù)(信息泄露/篡改數(shù)據(jù))。
4 威脅量化評估
通過建立威脅量化模型,對威脅識別過程中記錄的所有威脅發(fā)生的可能性和嚴(yán)重程度進(jìn)行量化。
威脅可能性度量P是威脅重現(xiàn)性、威脅可發(fā)現(xiàn)性、威脅可利用性3個屬性的量化值之和。每個屬性量化值范圍為1~5的整數(shù)。
威脅嚴(yán)重度D是威脅潛在的損失、影響的用戶和資產(chǎn)價值3個要素量化值之和,每個要素的取值范圍為1~5。
攻擊因子A是攻擊技術(shù)流行度、攻擊技術(shù)難易度以及攻擊后果3個屬性量化值的綜合平均值,每種屬性的取值范圍為1~5的整數(shù)。
虛擬化系統(tǒng)面臨威脅取決于3個因素:威脅發(fā)生的可能性、威脅發(fā)生后的嚴(yán)重度及攻擊因子??傻玫酵{值計(jì)算公式:R=P×D×A。虛擬機(jī)的安全威脅最終表現(xiàn)為安全事件對虛擬機(jī)服務(wù)的影響,即云計(jì)算系統(tǒng)面臨威脅的量化值R是評價虛擬機(jī)安全威脅的決定因素。
5 結(jié)語
本文在綜合分析云計(jì)算環(huán)境下虛擬機(jī)可能面臨的威脅和攻擊的基礎(chǔ)上,提出了一種基于STRIDE的虛擬機(jī)安全威脅模型。并對虛擬機(jī)安全威脅進(jìn)行量化和評估,分析各層面威脅嚴(yán)重程度對于云計(jì)算環(huán)境下虛擬機(jī)安全服務(wù)的影響,進(jìn)而評估整個云計(jì)算環(huán)境下虛擬機(jī)的整體安全威脅。