摘 要: 云存儲(chǔ)是近年來工業(yè)界和學(xué)術(shù)界研究的熱點(diǎn),其中的安全問題受到了多方矚目。將云存儲(chǔ)相關(guān)的安全技術(shù)問題歸結(jié)為5類(用戶需求3類,服務(wù)商需求2類),并結(jié)合最新學(xué)術(shù)研究成果進(jìn)行了逐一闡述。這些分析表明云存儲(chǔ)安全技術(shù)涉及面廣、風(fēng)險(xiǎn)高。相關(guān)技術(shù)發(fā)展到今天,產(chǎn)生了一些很好的成果,但也仍然有很多問題尚未解決,需要進(jìn)一步深入研究。
關(guān)鍵詞: 云存儲(chǔ);安全技術(shù);數(shù)據(jù)完整性
云計(jì)算是近年來發(fā)展最迅速的互聯(lián)網(wǎng)服務(wù)模式之一。但是在一段時(shí)間里,云計(jì)算的概念界定不清,造成了工業(yè)界和學(xué)術(shù)界的概念混亂。為此,UC Berkeley的ARMBRUST M等就云計(jì)算的內(nèi)涵和外延進(jìn)行了較為深入的探討[1],隨后美國NIST給出了官方的云計(jì)算定義[2],即云計(jì)算是一種模式,使得普適、便捷、應(yīng)需地針對(duì)可配置的計(jì)算資源池(包括網(wǎng)絡(luò)、服務(wù)器、存儲(chǔ)、應(yīng)用及服務(wù))的網(wǎng)絡(luò)訪問可以在最小的管理代價(jià)下迅速配給和釋放。其中云存儲(chǔ)在云計(jì)算中占據(jù)重要位置,近年來不但作為云計(jì)算的支撐技術(shù)迅速發(fā)展,單獨(dú)的云存儲(chǔ)服務(wù)也獲得了引入矚目的成功。
隨著云服務(wù)的推廣,很快業(yè)界就發(fā)現(xiàn)圍繞數(shù)據(jù)的安全問題是云服務(wù)推廣的最大障礙[3],用戶對(duì)于云服務(wù)提供商的安全保障能力心懷疑慮,從而阻礙了將更多的數(shù)據(jù)和業(yè)務(wù)轉(zhuǎn)移到云平臺(tái)上。
除了傳統(tǒng)的身份認(rèn)證(如網(wǎng)絡(luò)釣魚、密碼泄漏等)、底層系統(tǒng)安全(安全傳輸、弱隨機(jī)數(shù)、側(cè)信道攻擊等)、物理安全等安全需求外,云存儲(chǔ)用戶面臨的特殊安全需求主要集中在如下3個(gè)問題,這些形成了數(shù)據(jù)外包(Data Outsourcing)的主要安全需求[3]。
?。?)數(shù)據(jù)完整性與機(jī)密性,即云存儲(chǔ)服務(wù)商是否能夠向用戶確保其數(shù)據(jù)和操作不被惡意或非惡意的丟失、破壞、泄漏或非法利用。
?。?)數(shù)據(jù)可用性與遠(yuǎn)程驗(yàn)證,在發(fā)生意外(如硬盤損壞、IDC失火、網(wǎng)絡(luò)故障等)的時(shí)候,用戶的數(shù)據(jù)能夠在何種程度上可用;同時(shí)用戶如何通過技術(shù)手段驗(yàn)證,而不只是靠云服務(wù)方的商業(yè)信用保證。
(3)訪問隱私性,用戶在訪問某些敏感數(shù)據(jù)的時(shí)候,能否防止?jié)撛跀呈滞ㄟ^用戶的訪問模式(非直接數(shù)據(jù)泄漏)而推測(cè)出用戶的行為。
云存儲(chǔ)服務(wù)商面臨的安全問題主要有:
(1)服務(wù)是否被濫用,攻擊者是否可以通過濫用云服務(wù)從而獲得超出合約的額外資源或者破壞合法用戶的利益;
(2)服務(wù)效能,如何在保障用戶安全屬性的條件下,提升自身資源的利用效能。
近年來,這些問題成為學(xué)術(shù)界操作系統(tǒng)和信息安全領(lǐng)域的研究熱點(diǎn),在頂級(jí)會(huì)議OSDI、SOSP、CRYPTO、CCS、NDSS、STOC、ICDCS和其他眾多知名會(huì)議上出現(xiàn)了大量相關(guān)論文。本文后續(xù)章節(jié)將圍繞這5個(gè)問題展開,闡述近年來云存儲(chǔ)安全技術(shù)的最新發(fā)展。
1 數(shù)據(jù)完整性和機(jī)密性
數(shù)據(jù)完整性和機(jī)密性,即云存儲(chǔ)服務(wù)商是否能夠向用戶確保其數(shù)據(jù)和操作不被惡意或非惡意地丟失、破壞、泄漏或非法利用。由于用戶并不能信任云存儲(chǔ)的運(yùn)營者,而云存儲(chǔ)服務(wù)商也基本不可能消除潛在的內(nèi)部攻擊(Insider Threat),從而用戶將敏感數(shù)據(jù)直接存放在云存儲(chǔ)上是非常危險(xiǎn)的,類似的攻擊甚至在云存儲(chǔ)之前就屢次發(fā)生。簡單的加密則面臨著密鑰管理的難題,以及無法支持查詢、并行修改、細(xì)粒度授權(quán)等復(fù)雜需求。這個(gè)領(lǐng)域也是近年來學(xué)術(shù)研究的熱點(diǎn)之一。
1.1 可靠存儲(chǔ)協(xié)議
非可信存儲(chǔ)最普通的非正常行為就是丟棄某次用戶對(duì)數(shù)據(jù)的更新,而這種行為單靠簡單的數(shù)據(jù)加密是無法發(fā)現(xiàn)的。同時(shí)一個(gè)好的存儲(chǔ)協(xié)議還需要支持多用戶并發(fā)修改。2010年,MAHAJAN P等人提出了Depot/Teapot[4],能夠在非可信云存儲(chǔ)環(huán)境下(如Amazon S3)保證分支匯聚因果一致性(Fork-Join-Causal-Consistency,能夠推出最終一致性Eventual Consistency),能夠有效抵抗丟棄、篡改等攻擊,并支持在其上實(shí)現(xiàn)其他的安全保護(hù)。同年,F(xiàn)ELDMAN A等提出了SPORC[4],可以借助非可信云環(huán)境實(shí)現(xiàn)多用戶間安全可靠的實(shí)時(shí)交互和協(xié)作,非可信的云服務(wù)器只能看見加密的數(shù)據(jù)流。但一般而言,這些可靠存儲(chǔ)協(xié)議支持的操作類型是受限的,大部分計(jì)算都只能發(fā)生在客戶端。
1.2 同態(tài)加密
同態(tài)加密是一種特殊的加密體系,由RIVEST R等在1978年提出[5],使得對(duì)密文進(jìn)行代數(shù)運(yùn)算得到的結(jié)果,與對(duì)明文進(jìn)行等價(jià)的運(yùn)算再將結(jié)果加密一樣,而且整個(gè)過程中無需對(duì)數(shù)據(jù)進(jìn)行解密。該技術(shù)如果實(shí)現(xiàn),將很好地解決把數(shù)據(jù)及其操作委托給云服務(wù)時(shí)的數(shù)據(jù)機(jī)密性問題。
2009年GENTRY C首次提出了“全同態(tài)加密”方法[6],即可以在不解密的條件下對(duì)加密數(shù)據(jù)進(jìn)行任何可以在明文上進(jìn)行的運(yùn)算,使這項(xiàng)技術(shù)取得了重大突破。然而,該加密體系涉及非常復(fù)雜的計(jì)算,使得計(jì)算和存儲(chǔ)的代價(jià)都非常高,從而還無法實(shí)用。研究者們還在進(jìn)一步研究力圖發(fā)現(xiàn)更加實(shí)用的全同態(tài)算法。
1.3 加密檢索與加密數(shù)據(jù)庫
由于全同態(tài)算法的效率低下,研究人員轉(zhuǎn)而降低目標(biāo),研究受限的同態(tài)算法在云環(huán)境下的應(yīng)用。一個(gè)基本的操作是加密狀態(tài)下的檢索,KAMARA S等提出了相關(guān)的高層概念;WANG C等則提出了在加密云端存儲(chǔ)上支持排名的搜索機(jī)制[8];而KARAME G O等則指出,在這種場(chǎng)景下不合適的加密算法可能會(huì)導(dǎo)致信息泄漏[9]。另外一個(gè)更通用的研究是針對(duì)關(guān)系型數(shù)據(jù)庫的同態(tài)算法。POPA R等人在2011年提出了CryptDB[10],可以在非可信的云端部署關(guān)系型數(shù)據(jù)庫及應(yīng)用服務(wù)器,而且所有SQL運(yùn)算都直接作用于加密數(shù)據(jù),以MySQL為基準(zhǔn)額外性能開銷低于30%,因此可以有效保護(hù)數(shù)據(jù)的機(jī)密性不會(huì)因?yàn)樵贫说臐撛谕{而遭到破壞。
1.4 確認(rèn)刪除
確認(rèn)刪除,即用戶刪除后能確保存儲(chǔ)上不能恢復(fù)該數(shù)據(jù)[11]。該問題在云存儲(chǔ)環(huán)境中尤其嚴(yán)重,因?yàn)樵拼鎯?chǔ)一般將數(shù)據(jù)備份超過3份以上,不少服務(wù)商甚至進(jìn)行7份復(fù)制。因此要將備份一一刪除并清洗以確保不可恢復(fù)對(duì)于用戶來說是一件難以確認(rèn)的事情。TANG Y等人介紹的FADE系統(tǒng)[12],在EPHEMERIZER[11]等技術(shù)的基礎(chǔ)上,將存儲(chǔ)到云上的數(shù)據(jù)先行加密,并采用支持策略組合的密碼機(jī)制對(duì)密鑰加密并獨(dú)立存儲(chǔ)。這樣,用戶在刪除云上的數(shù)據(jù)時(shí),只需簡單地撤銷對(duì)某個(gè)指定策略的授權(quán)即可。
2 數(shù)據(jù)可用性與遠(yuǎn)程驗(yàn)證
數(shù)據(jù)可用性,指云端在發(fā)生意外時(shí)(如硬盤損壞、IDC失火、網(wǎng)絡(luò)故障等),用戶的數(shù)據(jù)能夠在何種程度上可用;遠(yuǎn)程驗(yàn)證則指用戶如何通過技術(shù)手段驗(yàn)證,而不只是靠云服務(wù)方的商業(yè)信用保證。
2.1 硬盤存儲(chǔ)可靠性
硬盤是目前絕大多數(shù)云存儲(chǔ)的介質(zhì),其可靠性構(gòu)成了云存儲(chǔ)可靠性的基礎(chǔ)。Google公司的PINHEIRO E等人在大量實(shí)際數(shù)據(jù)的統(tǒng)計(jì)基礎(chǔ)上,對(duì)硬盤發(fā)生錯(cuò)誤的趨勢(shì)進(jìn)行了研究[13],發(fā)現(xiàn)硬盤的錯(cuò)誤和溫度及使用頻度的關(guān)聯(lián)并不大,但有很強(qiáng)的聚集特性,現(xiàn)有的SMART機(jī)制并不能很好地對(duì)硬盤錯(cuò)誤進(jìn)行預(yù)測(cè)。日立公司的TSAI T等在大量使用統(tǒng)計(jì)的基礎(chǔ)上對(duì)硬盤的軟錯(cuò)誤(Soft Error)進(jìn)行了分析,同樣指出軟錯(cuò)誤并不能很好地對(duì)硬錯(cuò)誤(Hard Error)做出預(yù)測(cè),只有約1/3的硬錯(cuò)誤在軟錯(cuò)誤之后發(fā)生;但對(duì)于成功預(yù)測(cè)的場(chǎng)合,該技術(shù)則一般提供了若干小時(shí)的響應(yīng)時(shí)間[14]。
2.2 完整性遠(yuǎn)程驗(yàn)證
2009年,BOWERS K D等提出了支持可提取證據(jù)POR(Proofs of Retrievability)的理論框架[15],提出通過將糾錯(cuò)碼和采樣檢查(Spot-checking)結(jié)合起來的方法,以提供一種可靠的遠(yuǎn)程驗(yàn)證目標(biāo)數(shù)據(jù)是否被正確存儲(chǔ)的方法。BOWERS K D在POR的基礎(chǔ)上提出了HAIL系統(tǒng)[16],可以利用POR機(jī)制檢查一份數(shù)據(jù)在多個(gè)云存儲(chǔ)環(huán)境上的存儲(chǔ)情況,并實(shí)現(xiàn)相互間的冗余備份,同時(shí)提供了可用性和完整性的保護(hù)。而SCHIFFMAN J等人則提出了基于TPM的遠(yuǎn)程驗(yàn)證[17],利用TPM的遠(yuǎn)程驗(yàn)證機(jī)制來進(jìn)行云范圍的數(shù)據(jù)完整性驗(yàn)證工作。
2.3 位置確認(rèn)
云存儲(chǔ)服務(wù)往往向用戶提供透明的存儲(chǔ)服務(wù),在降低了服務(wù)復(fù)雜度的同時(shí),也降低了用戶對(duì)存儲(chǔ)的控制能力。而不同備份的存儲(chǔ)位置對(duì)于容災(zāi)等任務(wù)而言異常重要。為此,BENSON K等提出了針對(duì)地理位置證據(jù)(Proofs of Geographic Replication)的研究[18],并成功地對(duì)Amazon云服務(wù)上數(shù)據(jù)進(jìn)行了定位。
3 訪問隱私性
通過加密等手段,可以防止攻擊者直接知道在云端存儲(chǔ)的數(shù)據(jù)。但攻擊者仍然可以通過側(cè)信道(Side Channel),比如讀寫模式和后繼行為來推測(cè)使用者的秘密信息,這將嚴(yán)重地破壞用戶的隱私[19]。為此,研究者們把注意力轉(zhuǎn)移到ORAM(Oblivious RAM)上。ORAM通過訪問多份數(shù)據(jù),從而隱藏真實(shí)的訪問目標(biāo)。該技術(shù)在1979年被提出,后來用于軟件保護(hù),現(xiàn)在發(fā)現(xiàn)是保護(hù)云存儲(chǔ)訪問隱私性的最有潛力的方法。但ORAM有著嚴(yán)重的額外性能開銷,目前最好的結(jié)果是STEFANOV E等在NDSS′12上提出的ORAM算法[20],耗時(shí)是直接訪問的20~35倍,但已經(jīng)比之前最好的算法要快63倍以上??梢灶A(yù)見,這個(gè)安全隱患在實(shí)際環(huán)境中仍然將長時(shí)間存在,這個(gè)領(lǐng)域的研究還將繼續(xù)。
4 服務(wù)濫用與服務(wù)效能
服務(wù)濫用是指攻擊者通過濫用云服務(wù)從而獲得超出合約的額外資源或者破壞合法用戶的利益。目前研究者已經(jīng)發(fā)現(xiàn)多種通過濫用云存儲(chǔ)服務(wù)的攻擊方法。
4.1 數(shù)據(jù)去重攻擊
數(shù)據(jù)去重(Deduplication)是目前云存儲(chǔ)系統(tǒng)普遍采取的技術(shù)手段[21],通過將不同用戶的相同文件只保存一份副本,從而大大降低實(shí)際的存儲(chǔ)空間的需求。在2011年,MULAZZANI M等與HALEVI S等人分別獨(dú)立發(fā)現(xiàn)用戶只需要知道文件的hash值[22],就可以通過Dropbox數(shù)據(jù)去重技術(shù)中的漏洞宣稱擁有該文件,從而可以無限擴(kuò)張自己在云端的存儲(chǔ)空間,破壞與服務(wù)商的協(xié)約,該方法也造成敏感信息的泄漏。為此,研究者提出了擁有者證據(jù)(Proofs of Ownership)等方法對(duì)客戶端進(jìn)行驗(yàn)證,以避免這種類型的攻擊。
4.2 欺詐資源消費(fèi)攻擊
欺詐資源消費(fèi)攻擊(Fraudulent Resource Consumption)是一種利用云服務(wù)收費(fèi)模式的攻擊方法[23]。由于云服務(wù)的客戶需要對(duì)云服務(wù)的資源耗費(fèi)進(jìn)行付費(fèi),因此攻擊者可以通過加大特定目標(biāo)的資源耗費(fèi)來使得該客戶產(chǎn)生大量額外的費(fèi)用。面向公眾的網(wǎng)絡(luò)服務(wù)特別容易遭受這種類型的攻擊。這種攻擊與DDoS等網(wǎng)絡(luò)攻擊相比非常隱蔽,但同樣給合法客戶造成了大量損失。IDZIOREK J等人提出了該問題,并對(duì)其檢測(cè)和識(shí)別方法進(jìn)行了研究。
4.3 服務(wù)效能
云計(jì)算和云存儲(chǔ)一般都是能耗和資源密集型的服務(wù),降低能耗和資源需求則能為運(yùn)營商顯著降低成本,同時(shí)降低對(duì)環(huán)境溫度的要求,提升存儲(chǔ)安全性。LEVERICH J等指出MapReduce等常用的云計(jì)算模式在能耗上是低效率的[24],通過調(diào)整存儲(chǔ)策略,降低活躍節(jié)點(diǎn)規(guī)模,hadoop能耗會(huì)降低9%~50%。HAMILTON J等提出了資源消耗整形技術(shù)(Resource Consumption Shaping)[25],指出通過合理的安排和調(diào)整應(yīng)用,能夠顯著地降低資源消耗從而降低成本。AMUR H等提出了Rabbit存儲(chǔ)系統(tǒng)[26],能夠?qū)崿F(xiàn)能耗等比例特性,即所消耗的能源與完成的工作量成正比。然而Rabbit系統(tǒng)通過關(guān)閉節(jié)點(diǎn)來節(jié)能會(huì)導(dǎo)致靈活性和通用性的嚴(yán)重降低,為此AMUR H又提出了一個(gè)基于硬件的方案[27],即如果硬件能支持io-server的特殊低功耗模式,則不必采用特殊定制的分布式文件系統(tǒng)來實(shí)現(xiàn)能耗等比例特性。
云存儲(chǔ)是近年來工業(yè)界和學(xué)術(shù)界研究的熱點(diǎn),其中的安全問題受到了多方矚目。本文將云存儲(chǔ)相關(guān)的安全技術(shù)問題歸結(jié)為5類(用戶需求3類,服務(wù)商需求2類),并結(jié)合最新學(xué)術(shù)研究成果進(jìn)行了逐一闡述。這些分析也表明云存儲(chǔ)安全技術(shù)涉及面廣,風(fēng)險(xiǎn)高。相關(guān)技術(shù)發(fā)展到今天,產(chǎn)生了一些很好的成果,但也仍然有很多問題尚未解決,需要進(jìn)一步深入研究。
參考文獻(xiàn)
[1] ARMBRUST M, STOICA I, ZAHARIA M, et al. A view of cloud computing[C]. Communications of the ACM, 2010,53(4):50.
[2] MELL P, GRANCE T. NIST Special Publication 800-145: The NIST Definition of Cloud Computing[J]. National Institute of Standards and Technology, 2011.
[3] SION R. TUTORIAL: Secure Data Outsourcing[J]. The 13th International Conference on Management of Data (COMAD 2006), 2006.
[4] FELDMAN A J, ZELLER W P, FREEDMAN M J, et al.SPORC: Group collaboration using untrusted cloud resources[C]. Proceedings of the 9th Symposium on Operating Systems Design and Implementation (OSDI′10), 2010.
[5] RIVEST R L, ADLEMAN L, DERTOUZOS M L. On data banks and privacy homomorphisms[J]. Foundations of Secure Computation, 1978:169-180.
[6] GENTRY C. Fully homomorphic encryption using ideal lattices[J]. Proceedings of the 41st annual ACM symposium on Symposium on theory of computing - STOC′09, 2009:169.
[7] KAMARA S, LAUTER K. Cryptographic Cloud Storage[C].Financial cryptography and data security,2010.
[8] WANG C, CAO N, LI J, et al. Secure Ranked Keyword Search over Encrypted Cloud Data[J]. IEEE 30th International Conference on Distributed Computing Systems(ICDCS′10), 2010: 253-262.
[9] KARAME G O, CAPKUN S, MAURER U. Privacy-preserving outsourcing of brute-force key searches[J].
Proceedings of the 3rd ACM workshop on Cloud computing security workshop (CCSW′11), 2011:101.
[10] POPA R A, REDFIELD C M S, ZELDOVICH N, et al. CryptDB: protecting confidentiality with encrypted query processing[J]. Proceedings of the Twenty-Third ACM
Symposium on Operating Systems Principles-SOSP′11, 2011:85.
[11] PERLMAN R. File System Design with Assured Delete[J].Network and Distributed System Security Symposium Proceedings (NDSS′07), 2007.
[12] TANG Y, LEE P P C, LUI J C S, et al. FADE: Secure Overlay Cloud Storage with File Assured Deletion[J].
SECURITY AND PRIVACY IN COMMUNICATION NETWORKS (SecureComm′10), 2010.
[13] PINHEIRO E, WEBER W D, BARROSO L A. Failure Trends in a Large Disk Drive Population[J]. Proceedings of the 5th USENIX Conference on File and Storage Technologies (FAST′07), 2007.
[14] TSAI T, THEERA-AMPORNPUNT N, BAGCHI S. A study of soft error consequences in hard disk drives[J].IEEE/IFIP International Conference on Dependable Systems and Networks (DSN 2012), 2012:1-8.
[15] BOWERS K D, JUELS A, OPREA A. Proofs of retrievability: theory and implementation[J]. Proceedings of the 2009 ACM workshop on Cloud computing security (CCSW′09), 2009:43.
[16] BOWERS K D, JUELS A, OPREA A. HAIL: A High-Availability and Integrity Layer for Cloud Storage[J].
Proceedings of the 16th ACM conference on Computer and communications security-CCS′09, 2009:187.
[17] SCHIFFMAN J, MOYER T, VIJAYAKUMAR H, et al.Seeding clouds with trust anchors[J]. Proceedings of the
2010 ACM workshop on Cloud computing security workshop (CCSW′10), 2010:43.
[18] BENSON K, DOWSLEY R, SHACHAM H. Do you know where your cloud[J]. Proceedings of the 3rd ACM workshop on Cloud computing security workshop (CCSW′11), 2011:73.
[19] PINKAS B, REINMAN T. Oblivious Ram Revisited[D].CRYPTO 2010, 2010.
[20] STEFANOV E, SHI E, SONG D. Towards Practical Oblivious RAM[J]. Network and Distributed System Security
Symposium (NDSS′12), 2012.
[21] MULAZZANI M, SCHRITTWIESER S, LEITHNER M, et al. Dark Clouds on the Horizon: Using Cloud Storage as Attack Vector and Online Slack Space[J]. 20th USENIX
Security Symposium, 2011.
[22] HALEVI S, HARNIK D, PINKAS B, et al. Proofs of ownership in remote storage systems[J]. Proceedings of the 18th ACM conference on Computer and communications security (CCS′11), 2011: 491.
[23] IDZIOREK J, TANNIAN M, JACOBSON D. Attribution of Fraudulent Resource Consumption in the Cloud[J]. 2012
IEEE Fifth International Conference on Cloud Computing, 2012:99-106.
[24] LEVERICH J, KOZYRAKIS C. On the energy (in)efficiency of Hadoop clusters[J]. ACM SIGOPS Operating
Systems Review, 2010,44(1):61.
[25] HAMILTON J, TREADWELL D. Resource Consumption Shaping[C]. 2008.
[26] AMUR H, CIPAR J, GUPTA V, et al. Robust and flexible power-proportional storage[J]. Proceedings of the 1st ACM symposium on Cloud computing - SoCC′10, 2010:217.
[27] AMUR H, SCHWAN K. Achieving Power-Efficiency in Clusters without Distributed File System Complexity[J].
Workshop on Energy-Efficient Design (WEED′10), 2010.