黑客越來(lái)越精于利用暴露明文數(shù)據(jù)的加密漏洞,但新的硬件及軟件運(yùn)行時(shí)加密解決方案也應(yīng)運(yùn)而生,目的就是要堵住這些漏洞。
云應(yīng)用時(shí)代產(chǎn)生了新的加密漏洞。很多公司至今仍忽視存儲(chǔ)數(shù)據(jù)加密工作,但存儲(chǔ)數(shù)據(jù)的加密確實(shí)很直觀易行。傳輸中數(shù)據(jù)的加密也是如此。那么正在使用中的數(shù)據(jù)又該怎么加密呢?
云應(yīng)用總得看得到明文形式的數(shù)據(jù)才可以進(jìn)行數(shù)據(jù)處理。這就意味著,握有該應(yīng)用環(huán)境訪問(wèn)權(quán)的攻擊者或內(nèi)部人可以偷看到這些數(shù)據(jù)。幽靈和熔斷惡意軟件利用的就是此類安全漏洞。
此前,公司企業(yè)避免此類漏洞的唯一方法,是在客戶端運(yùn)行應(yīng)用,而云端僅用作存儲(chǔ)。如今則涌現(xiàn)出了幾個(gè)從硬件和軟件層面解決該問(wèn)題的技術(shù)。谷歌。微軟和IBM都已經(jīng)部署或正在使用此類解決方案。還有幾家初創(chuàng)公司正在研究解決這方面的特定用例。
這是一個(gè)真正新興的領(lǐng)域,以至于都還沒(méi)出現(xiàn)任何對(duì)市場(chǎng)規(guī)模的評(píng)估。前景看好,但市場(chǎng)尚未成熟。
芯片上的安全飛地
手機(jī)上早已廣為應(yīng)用安全飛地來(lái)存儲(chǔ)關(guān)鍵身份驗(yàn)證及支付信息。安全飛地的理念是,加密數(shù)據(jù)進(jìn)入到受保護(hù)的飛地進(jìn)行解密和處理,完工后再加上密才出飛地。因?yàn)槭怯布用埽俣群涂煽啃远加斜U稀?/p>
支持云計(jì)算的芯片也有類似技術(shù),英特爾、ARM和AMD都有,名為可信執(zhí)行環(huán)境。AMD有其安全執(zhí)行環(huán)境(SEE),ARM的是可信區(qū)域(TrustZone),英特爾是軟件保護(hù)擴(kuò)展(SGX)。
操作系統(tǒng)動(dòng)不了飛地。即便操作系統(tǒng)中存在零日漏洞,飛地也是安全的。即便惡意內(nèi)部人能訪問(wèn)系統(tǒng),飛地還是安全的。即便物理攻擊者掌握了所有內(nèi)存,運(yùn)行時(shí)加密依然牢不可破——因?yàn)轱w地是嵌入到CPU中的。
安全公司Fortanix的平臺(tái)可以讓現(xiàn)有應(yīng)用訪問(wèn)安全飛地。應(yīng)用需要數(shù)據(jù)的時(shí)候,數(shù)據(jù)會(huì)被成塊解密出來(lái)。在應(yīng)用看來(lái)就是在明文數(shù)據(jù)上操作——當(dāng)程序需要使用數(shù)據(jù)時(shí)數(shù)據(jù)總是很神奇地即時(shí)可用。
除了通用應(yīng)用框架,F(xiàn)ortanix還提供預(yù)構(gòu)建的解決方案,包括一個(gè)密鑰管理設(shè)備和一個(gè)數(shù)據(jù)庫(kù)產(chǎn)品。2018年6月20日,該公司推出了一款支持Python和R語(yǔ)言應(yīng)用程序的分析產(chǎn)品,讓以Python和R語(yǔ)言為主的人工智能及機(jī)器學(xué)習(xí)應(yīng)用在云端訓(xùn)練時(shí)無(wú)懼底層數(shù)據(jù)安全破壞風(fēng)險(xiǎn),有助于解決AI工作負(fù)載的數(shù)據(jù)隱私難題。
GeneTank公司之前使用基于軟件的運(yùn)行時(shí)安全——同態(tài)加密,現(xiàn)在便可利用Fortanix的運(yùn)行時(shí)加密( Runtime Encryption )來(lái)為基因醫(yī)療算法和AI服務(wù)提供安全透明的環(huán)境了。
Fortanix的另一早期采納者是iExec,這是家以基于區(qū)塊鏈的云計(jì)算來(lái)提升AI效率的公司。這家公司將使用Fortanix的運(yùn)行時(shí)加密技術(shù)來(lái)保護(hù)其平臺(tái)上的App。
Fortanix可以支持其他芯片集,但目前主要落腳在 Intel SGX 上,因?yàn)?Intel SGX 是該領(lǐng)域中的領(lǐng)頭羊,且擁有最廣泛的供應(yīng)商支持。IBM則在去年12月宣布其 Data Guard 服務(wù)與Fortanix達(dá)成協(xié)作,如今已開(kāi)始接受早期注冊(cè)。
IBM計(jì)劃為MySQL、Nginx、 Forgerock OpenDJ、OpenStack Barbican 和軟件密鑰管理器提供初步支持,Docker注冊(cè)已備好。另外,公司企業(yè)還可運(yùn)用Fortanix的工具包來(lái)轉(zhuǎn)換自有應(yīng)用。
微軟的Azure機(jī)密計(jì)算也采用 Intel SGX 技術(shù)。上個(gè)月,微軟宣布其Azure美國(guó)東區(qū)可以使用帶SGX的 Intel Xeon 處理器了。微軟目前還在研發(fā)軟件開(kāi)發(fā)工具和API以方便開(kāi)發(fā)人員使用 Intel SGX 硬件。
同樣是在上月,谷歌攜開(kāi)源安全應(yīng)用開(kāi)發(fā)框架Asylo加入競(jìng)爭(zhēng),其開(kāi)發(fā)出的應(yīng)用采用 Intel SGX 之類可信執(zhí)行環(huán)境。安全供應(yīng)商Gemalto已開(kāi)始打造利用該新技術(shù)的工具——SafeNet,一款基于云的密鑰管理服務(wù)。
以服務(wù)形式提供密鑰管理的另一家公司是Equinix。與IBM類似,Equinix將Fortanix作為基礎(chǔ)技術(shù),且其服務(wù)在去年秋天發(fā)布時(shí)是市場(chǎng)上首款基于 Intel SGX 的主流產(chǎn)品。
如今,約60%的公司企業(yè)在嘗試Equinix的服務(wù),用例各種各樣,有用來(lái)加密信用卡信息的,有用來(lái)做數(shù)據(jù)庫(kù)密鑰加密的。
亞馬遜方面尚未傳來(lái)任何有關(guān) Intel SGX 使用的消息,但目前下定論還為時(shí)過(guò)早。Intel SGX 正被越來(lái)越多的公司企業(yè)采納,運(yùn)行時(shí)加密在不遠(yuǎn)的將來(lái)將成為行業(yè)標(biāo)準(zhǔn)。
安全飛地的弱點(diǎn)
基于硬件的安全飛地在數(shù)據(jù)容量上有限制,可能會(huì)增加處理延時(shí)。更重要的是,在云端運(yùn)行應(yīng)用的客戶通常不知道云平臺(tái)提供商到底用的是哪種硬件。云提供商若能提供可自動(dòng)適應(yīng)硬件的應(yīng)用環(huán)境,那這個(gè)問(wèn)題就能得到解決。
安全飛地還不能防護(hù)應(yīng)用本身受到入侵。舉個(gè)例子,如果黑客搞到了合法憑證或發(fā)現(xiàn)了代碼漏洞,就能通過(guò)應(yīng)用觸及數(shù)據(jù)。代碼本身若不健壯,任何軟件解決方案都擋不住攻擊襲來(lái)。
另外,安全飛地本身的完整性也存有問(wèn)題。俄亥俄州的研究人員最近演示了名為的SgXSpectre的 Intel SGX 漏洞。該漏洞類似幽靈,當(dāng)飛地代碼的分支預(yù)測(cè)可被飛地之外的程序影響,該飛地程序的控制流就會(huì)被短時(shí)切換去執(zhí)行可致緩存狀態(tài)變化可見(jiàn)的指令。換句話說(shuō),該漏洞能令攻擊者讀取飛地中的未加密數(shù)據(jù)。
基于軟件的云計(jì)算安全方法
基于軟件的方法主要是盡量將工作移到云端進(jìn)行而不解密數(shù)據(jù),主要有兩種實(shí)現(xiàn)方式:同態(tài)加密和多方計(jì)算。
同態(tài)加密可以不需要先解密數(shù)據(jù)就執(zhí)行計(jì)算或搜索,但執(zhí)行速度會(huì)特別慢。
多方計(jì)算是把計(jì)算任務(wù)分解成多份,在不同服務(wù)器上分別執(zhí)行,任何一臺(tái)服務(wù)器都拿不全未加密數(shù)據(jù)。這種方式比同態(tài)加密執(zhí)行更快,但仍慢于基于硬件的安全方法。延時(shí)主要是由額外的通信負(fù)擔(dān)增加的。
Inpher公司同時(shí)涉獵多方計(jì)算和同態(tài)加密兩種方法,其商業(yè)商品Xor使用多方計(jì)算處理基于云的安全分析,并另有一個(gè)開(kāi)源同態(tài)加密庫(kù)。
同態(tài)加密方法的速度太慢,所以該公司的商業(yè)產(chǎn)品還是采用了多方計(jì)算方法。
Inpher為常見(jiàn)分析平臺(tái)及語(yǔ)言(如 Tensor Flow、Python和R)提供了一套連接器;Hadoop集群、SQL數(shù)據(jù)庫(kù),甚至文本文件之類常見(jiàn)數(shù)據(jù)存儲(chǔ)方法也有相應(yīng)的連接器可用。對(duì)Inpher的產(chǎn)品而言,數(shù)據(jù)存儲(chǔ)方式無(wú)關(guān)緊要,其產(chǎn)品全權(quán)托管了數(shù)據(jù)處理方式的重構(gòu),終端用戶無(wú)需操心所用加密的復(fù)雜性。
Inpher客戶包括荷蘭國(guó)際集團(tuán)比利時(shí)銀行( ING Belgium )和法國(guó)國(guó)防承包商Thales。后者在4月宣布了與Inpher的合作伙伴關(guān)系,將使用其安全分析進(jìn)行預(yù)測(cè)性維護(hù)。目前很難找出公開(kāi)宣稱使用運(yùn)行時(shí)加密的公司,不僅僅是因?yàn)樵摷夹g(shù)還非常新,也在于其實(shí)現(xiàn)會(huì)很困難。
無(wú)論是同態(tài)加密還是多方計(jì)算,都要求有新的應(yīng)用邏輯,但不是所有的程序都可以轉(zhuǎn)向此類計(jì)算。
因此,大多數(shù)供應(yīng)商當(dāng)前提供的是非常特定的解決方案。比如說(shuō),Galois公司的道德安全信息披露框架(FIDES)能讓研究人員在看不到原始數(shù)據(jù)的情況下訪問(wèn)加密數(shù)據(jù)集,但卻只有使用被禁的查詢參數(shù)才能得到結(jié)果。
Galois正與美國(guó)國(guó)土安全部(DHS)合作,嘗試對(duì)數(shù)據(jù)施以訪問(wèn)控制,令數(shù)據(jù)在使用過(guò)程中也保持加密狀態(tài)。美國(guó)國(guó)防部也與Galois有類似合作。
另一家供應(yīng)商,曾名為 Dyadic Security 的 Unbound Tech,提供基于軟件的安全密鑰管理器,作為硬件安全模塊的替代。該管理器使用多方計(jì)算,密鑰既不存于內(nèi)存,也不保存在同一個(gè)地方,而是放到多個(gè)位置上分別對(duì)數(shù)據(jù)進(jìn)行計(jì)算。
Unbound Tech 專注于非常具體的應(yīng)用,讓客戶無(wú)需重寫其應(yīng)用程序。這就是個(gè)即插即用的安全方案。試用過(guò)該公司產(chǎn)品的企業(yè)表達(dá)了訂購(gòu)意愿。
Unbound還計(jì)劃提供安全數(shù)據(jù)庫(kù)訪問(wèn),這也是基于軟件的運(yùn)行時(shí)加密的又一常見(jiàn)用例。通常來(lái)講,該領(lǐng)域的供應(yīng)商提供的產(chǎn)品位于客戶自身應(yīng)用和標(biāo)準(zhǔn)數(shù)據(jù)庫(kù)(如SQL)之間。
如果客戶的應(yīng)用程序完全依賴數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)檢索和處理,那么客戶就可利用現(xiàn)成的運(yùn)行時(shí)加密而無(wú)需任何重構(gòu)。如果客戶應(yīng)用從數(shù)據(jù)庫(kù)取出數(shù)據(jù)再以自身內(nèi)部邏輯進(jìn)行處理,那再轉(zhuǎn)換為同態(tài)加密或多方計(jì)算就難得多了。世界上所有產(chǎn)品都不會(huì)直接接受一個(gè)C程序,總要轉(zhuǎn)換加密協(xié)議的。
Baffle公司已經(jīng)推出了使用多方計(jì)算的數(shù)據(jù)庫(kù)安全訪問(wèn)產(chǎn)品。他們?cè)趹?yīng)用和數(shù)據(jù)庫(kù)之間插入了一層,并沒(méi)有對(duì)應(yīng)用做出任何改動(dòng)。
用基于軟件的運(yùn)行時(shí)加密替代 Intel SGX 這樣的硬件方法,其好處是不依賴于特定硬件。但隨著 Intel SGX 應(yīng)用的推廣,Baffle可能也會(huì)運(yùn)用SGX。
與該領(lǐng)域其他供應(yīng)商類似,Baffle也是相對(duì)較年輕的公司。該公司去年才宣布支持SQL,去年秋天宣布支持AWS和Azure,并在6月4日宣稱支持通配符搜索功能。Baffle擁有約12家金融服務(wù)和醫(yī)療保健行業(yè)的客戶,產(chǎn)品部署分處不同階段。
Baffle的主要競(jìng)爭(zhēng)對(duì)手之一是Enveil——一家國(guó)防工業(yè)出身的公司。Enveil成立于2016年,宣稱發(fā)現(xiàn)了能讓同態(tài)加密足夠快的秘密方法。其CEO稱:“我們?cè)诼?lián)邦政府做出了重大突破,被認(rèn)證為國(guó)家級(jí)應(yīng)用。我們將同態(tài)加密帶入了實(shí)用,可以非常容易地接入任何類型的應(yīng)用程序,客戶無(wú)需改變用戶體驗(yàn),也無(wú)需切換數(shù)據(jù)存儲(chǔ)方式,甚至數(shù)據(jù)加密方法都不用變。”
Enveil基于具體案例分析為客戶提供基準(zhǔn)數(shù)據(jù),但并不公開(kāi)這一基準(zhǔn)。Enveil的技術(shù)可用于多種類型的應(yīng)用程序,但大多數(shù)人都用于搜索和分析。
基于軟件的運(yùn)行時(shí)加密供應(yīng)商
提供基于軟件的運(yùn)行時(shí)加密產(chǎn)品的供應(yīng)商一直在增加,比如下面幾個(gè):
運(yùn)行時(shí)加密會(huì)成為一項(xiàng)產(chǎn)業(yè)還是僅僅是一個(gè)功能呢?
不是每家公司都想采用運(yùn)行時(shí)加密,其中還有些取舍平衡問(wèn)題,比如會(huì)割裂應(yīng)用,會(huì)離散功能等等。
不過(guò),對(duì)SaaS供應(yīng)商來(lái)說(shuō),運(yùn)行時(shí)加密可作為一項(xiàng)非常有用的功能提供給特別注重安全的客戶。運(yùn)行時(shí)加密就是種功能,不是一項(xiàng)產(chǎn)業(yè)。
運(yùn)行時(shí)加密作為由大型云平臺(tái)或網(wǎng)絡(luò)安全供應(yīng)商提供的功能可能更有意義。網(wǎng)絡(luò)安全巨頭Gemalto和Thales的并購(gòu)一旦完成,該領(lǐng)域可能還會(huì)見(jiàn)證更多并購(gòu)。
同時(shí),在邁向運(yùn)行時(shí)加密之前,公司企業(yè)還有很多其他安全問(wèn)題需要處理。終端用戶一側(cè)并沒(méi)有對(duì)運(yùn)行時(shí)加密投以太多關(guān)注。