• 沒有找到結果。

雲端儲存空間(Cloud storage)是一種透過網際網路的線上儲存服務,使用者的 資料都儲存在服務提供者利用虛擬機器所創建的虛擬儲存環境中,服務提供者創 建大型的資料中心,讓使用者可以在這些大型的資料中心存放資料,使用者可以 依照各自的需求向服務提供者購買或是租賃儲存空間,雲端儲存服務可以藉由應 用程式介面或是網頁基底的使用者介面來使用服務,一些常見的雲端儲存系統包 含Google Drive [1]、Dropbox[2]、SugarSync [3]、SkyDrive [4]、and Box[5]。

第一節 雲端儲存的安全性議題

然而儲存重要資料在雲端儲存空間中可能會有許多嚴重的安全性問題,服務 提供者可能會洩漏具保密性的資料、擅自修改使用者的資料,回傳不正確的資料 給使用者。導致出現這幾個問題的原因,有可能是伺服器端的程式有錯誤、伺服 器損毀、運算出錯,或是系統不正常的設定。除此之外,來自競爭對手惡意的安 全性攻擊可能更難抵禦而且比上述這些意外的因子還要危險,外部的攻擊者可能 非法的存取服務提供者儲存的使用者資料,或是服務提供者內部的員工不小心允 許了來自外部的攻擊,即使服務提供者建置了非常完善的安全環境,這些跳板還 是有可能導致安全性問題。

現行沒有任何雲端儲存服務在他們的服務層級協定(service level agreement) 中保證安全性無虞,就如同Amazon s3[6]和Microsoft Azure[7]只保證可用性,他

們的服務層級協定訂定了,可用性(availability)低於99.9%,服務提供者必須 向使用者賠償一些金錢。基本的安全功能包含身分驗證(authentication)、保密性

(confidentiality)、資料的完整性(data integrity)以及不可否認性(non-repudiation),

然而在加密的雲端儲存空間(cryptographic cloud storage) [8]中,身分驗證、保密性、

資料的完整性這三個功能可以很容易地達成。

在加密的雲端儲存服務文中所示,服務提供者是完全不可信任的,而且服務 的核心性質是(1)使用者自己掌控並維護自己的資料(2)安全性質來自加密演算法 而不是系統的規範、實體的安全部屬(防火牆)或是存取控制。加密的雲端儲存服 務利用加密演算法提供了資料的保密性,每一筆儲存在雲端上的資料,都被使用 者的私密金鑰簽署過,以保證資料的完整性。然而,使用者仍然無法確保他們的 資料是否會遺漏,又或是當從雲端上檢索資料時,是否是最後修改過的資料。考 慮一種情況,由於某些內部的系統錯誤或是惡意的安全性攻擊,某些使用者儲存 在雲端儲存系統上的資料會毀壞或是被整個銷毀,服務提供者有可能利用以前備 份的資料回復,包含使用者所簽屬的電子簽章,而且可以否認使用者最後一個版 本的資料遺失,這樣的攻擊稱為回復式攻擊(roll-back attack)[9],或是重送攻擊

(replay attack)[10]。

第二節 商業上的安全性議題-雙向的不可否認性

一個常見的問題就是使用者跟服務提供者之間的不可否認性是沒有辦法保 證的。我們需要一個架構能讓服務提供者保證,當使用者資料有問題時能證明服

務提供者是無辜的,是使用者自己管理不當,又或者是當雲端儲存的伺服器發生 系統錯誤,導致使用者資料損毀或遺失,根據這樣的情況,讓使用者證明是服務 提供者出問題,這樣的證明稱之稽核(Auditing)[11]。一旦建立了雙向的不可否認 性,使用者和服務提供者便可以根據使用者需要的安全性以及預算,來簽訂適當 的商業合約,當證明是服務提供者發生了資料安全性問題,或是惡意竄改使用者 資料,服務提供者必須保證支付補償金。

這篇文章指出了設計雲端儲存系統的問題,商業上的雲端儲存服務必須能夠 偵測儲存的資料是否會違反安全性性質,Popa提出了一個系統稱為CloudProof,

這個系統包含了偵測以及驗證四個安全性性質的協定,包含保密性

(confidentiality)、完整性(integrity)、寫入的循序性(write serializability)以及讀取的 最新性(read freshness),這裡簡稱為CIWF[11]。使用者可以偵測雲端儲存空間上 的資料是否有違反上述四個性質,若是違反則可以向服務提供者索取賠償。反之,

也可以讓服務提供者確認使用者是否故意假造系統錯誤並向提供者敲詐,因此我 們可以說CloudProof這個系統的架構是能夠確保雙方的不可否認性,這樣的保證 源自於儲存的證據,透過簽章過的證據可以讓使用者了解儲存在雲端上資料的狀 態。使用者和服務提供者在每一次的請求都交換證據,這些證據都利用鏈結雜湊 的方式記錄下來,所以每一個使用者的裝置都必須儲存最後一個擁有鏈結雜湊的 證據。此外,服務提供者必須儲存所有請求的證據以便未來使用者稽核時驗證。

當使用雲端儲存服務時,這個協定在CloudProof中能夠維持雙方的不可否認性。

然而,這樣的協定在多個裝置利用單一個帳戶時,裝置交互的使用會沒有辦法保 證,某個裝置可以取得最新的證據,除非有一種方法可以確保所有客戶端的裝置 都可以得到最新的證據,否則將有可能被服務提供者發動回復式攻擊。

第三節 情境說明與應用

透過網際網路,我們可以很便利的使用一些服務,像是雲端儲存服務、網路 銀行,或是其他的網路服務,但是在這便利之下衍生了一些問題,如圖 一-1 所 示,把 Resource Pool 當作一個服務提供者,好比說使用雲端儲存服務,三個使用 者可以共享一份文件,假設使用者 A 寫入一份文件,而且使用者 B 想要讀取使用 者 A 做的變更,接者使用者 C 也對文件內容作更變,然而網路延遲或是服務提供 者伺服器發生錯誤造成使用者 C 更變文件後,使用者 B 才讀取到,會導致使用者 B 讀取到錯的文件,因此寫入的順序沒有有效的管理,使用者們最後得到的資料 會不一致。

R R

R R R

R Resource Pool

User-A User-B User-C

圖 一-1 單一個資源被多個參與者使用

第一項情境

根據上一個小節的情境讓我們了解到多個參與者並行的使用相同資源的問 題,會造成結果不一致,導致使用者取得不正確的結果。在解決此問題之前,我 們先透過幾個真實的例子來更深刻的了解。

情境一

Dropbox 雲端儲存服務供應商可以讓使用者透過行動裝置上傳文件,而且還 可以將上傳文件分享給其他使用者。假設現在使用者 A 是一個律師,他和公司主 管去國外簽商業合約並利用 Dropbox 的服務,將他負責的公司商業合約上傳並分 享給公司老闆。此時 dropbox 內部發生損毀或是遭受攻擊導致使用者 A 的資料毀 壞,Dropbox 為了避免賠償問題,可能以錯誤的資料造假,讓使用者渾然不覺。

情境二

假設某個使用者向銀行註冊了帳戶,透過雙方共同協議,允許帳戶可以透支,

即變成信用借貸,因此每一個交易都必須要有明確的先後關係,否則雙方會存在 爭議點。用一個例子如圖 一-2,假設現在使用者 A 開了帳號並存了 b 元進去,

接者有合作關係的銀行匯了 X 元近來,此時帳戶的擁有人想提 Y 元,且 Y>b,

由於是兩個獨立的交易,雙方都不知道他們是否都完成交易,因此在 S1 的情況 下,銀行想敲詐使用者賺取利息,故意將交易的順序更改,使的使用者必須付利 息給銀行,因此造成使用者的損失。當匯款或是轉帳的機構大於兩個,各個機構 的交易明細都是機密,雙方不可能交換他們的紀錄,因此得知交易順序的只有銀 行,若是銀行真的有意從新排序交易順序,使用者將會無法得知錯誤。

Bank Bank

A=b$ A=b-Y+X$

Initial account

Bank

A=b+X-Y$

Deposit (A,X$) Withdraw(A,Y$)

Withdraw(A,Y$) Deposit (A,X$)

S0 S1

overdraft

圖 一-2 銀行服務的情境

情境三

免費軟體專案通常都是由來自世界各地的開發者開發,並將開發結果上傳到 第三方原始碼管理中心。以 sourceforge.net 來說,他們管理超過兩萬個軟體包 (source code package),而且這些原始碼撰寫的環境可以來自各種不同的系統,因 此沒有一種方法可以有效的驗證這些原始碼的正確性,當存放原始碼的伺服器被 惡意攻擊或是伺服器內部毀壞,開發人員的原始碼可能會被竄改或是消失,最嚴 重的情形是被惡意竄改,加上了後門程式的原始碼,下一個下載這份原始碼的人,

很有可能就被惡意攻擊,根據這個問題,最大的癥結點在於沒有方法可以有效的 管理檔案寫入的順序性以及完整性,讓開發人員能偵測出原始碼更動過。

第四節 論文組織與結構

在本篇論文中,我們首先論證,在單一帳戶下用不同的裝置使用雲端儲存服 務時,除非存在一個方法可以將最後一個請求的證據,廣播給其他的客戶端裝置,

否則基本的鏈結雜湊是不足以抵擋,服務提供者利用已儲存的證據發動的回復式

攻擊。我們提出了一個新的架構能夠維持雙向的不可否認性,在這個架構下,每 一個客戶端的裝置進行資料請求時,都不需要交換證據,而且每個裝置只需要保 有他們最後一個請求的證據。當請求不斷增加時,累積過多的證據會造成伺服器 的負擔,因此我們提出利用雜湊樹來清除累積的證據,並且滿足CIWF性質,在 最後我們也做了許多的實驗,並且分析在我們提出的架構下,會有那些額外的負 擔,實驗的結果證明了我們的架構是可行的。

本篇論文的組織如下:第二章說明了為什麼原始的鏈結雜湊是不足夠的,第三章 提出了在單一帳戶下不同的裝置交錯的使用之解決方案,第四章描述如何利用雜 湊樹清除累積的證據,第五章提出了實作的細節以及實驗的結果,第六章描述相 關的研究,在第七章對我們研究做了總結。

相關文件