谷歌數(shù)據(jù)中心的安全基礎(chǔ)設(shè)施什么樣?
近期,谷歌分享了保護數(shù)據(jù)中心的安全架構(gòu)細節(jié),該中心所存儲的數(shù)據(jù)涵蓋谷歌現(xiàn)有的各種服務(wù)及日益增長的谷歌云平臺(GCP)。
許多企業(yè)對信息公開持保守態(tài)度,擔(dān)心這會給攻擊者可乘之機。然而,谷歌不在此列,原因有兩點:其一,是通過展示數(shù)據(jù)中心的安全水平來發(fā)展有潛力的云平臺用戶;其二,谷歌對自身的安全水平很有信心。
在最近發(fā)布的公告里,谷歌將其基礎(chǔ)設(shè)施安全架構(gòu)劃分了六層——硬件架構(gòu)層(包括物理基礎(chǔ)安全)、服務(wù)調(diào)度層、用戶識別層、存儲服務(wù)層、網(wǎng)絡(luò)通信層和安全運營層。
谷歌顯然很注重細節(jié)。在大部分業(yè)務(wù)中,谷歌都建設(shè)和運營自有的數(shù)據(jù)中心,這包括“生物識別、金屬檢測、攝像、路障和激光掃描系統(tǒng)”。即使使用第三方數(shù)據(jù)中心作為服務(wù)器,谷歌也為服務(wù)器附加了自己的安全措施(如谷歌控制的獨立生物識別系統(tǒng)、相機或金屬探測器)。
數(shù)據(jù)中心的數(shù)千臺服務(wù)器所使用的主板也都是谷歌特別定制的。
我們也定制了芯片,比如目前用于服務(wù)器和外圍設(shè)備的硬件安全芯片。這些芯片允許我們在硬件層面上安全地識別和驗證谷歌設(shè)備的合法性。 |
谷歌獨有的硬件安全芯片
各數(shù)據(jù)中心所覆蓋的所有谷歌服務(wù)間都不存在預(yù)設(shè)的信任。任何必要的服務(wù)間通信都在應(yīng)用層被加密驗證和授權(quán)機制所控制。該機制同時適用于谷歌服務(wù)和用戶為谷歌產(chǎn)品(如谷歌應(yīng)用商店或谷歌計算引擎)提供的代碼。而那些特別敏感的服務(wù)(如集群編排和密鑰管理服務(wù))則在專用服務(wù)器上運行。
當需要進行和授權(quán)服務(wù)間通信時,該架構(gòu)為網(wǎng)際的RPC(遠程過程調(diào)用協(xié)議)數(shù)據(jù)提供了加密的隱私和完整性。所有數(shù)據(jù)中心間的WAN通信都使用了自動加密。隨著數(shù)據(jù)中心的硬件加密加速器的部署,這種自動加密正擴散到所有內(nèi)部通信中。
谷歌服務(wù)的身份識別和訪問控制
而當終端用戶發(fā)起服務(wù)間通信時(例如,Gmail需要加載聯(lián)系人列表),一個短期許可票據(jù)會生成,以確保Gmail帳戶只能加載這個用戶的聯(lián)系人信息。
就存儲數(shù)據(jù)而言,該架構(gòu)使用了中央密鑰管理服務(wù)。存儲的數(shù)據(jù)在寫入物理存儲之前,就會被密鑰管理服務(wù)配備密鑰。應(yīng)用層的加密將使得此架構(gòu)隔離開低水平的潛在存儲威脅,如惡意磁盤固件。
所有需要接入網(wǎng)絡(luò)的服務(wù)都通過谷歌前端(GFE)實現(xiàn)。這確保了所有的TLS連接使用正確的證書并支持完美的前向保密性。谷歌解釋說:“實際上,任何選擇對外通信的內(nèi)部服務(wù)都使用GFE作為智能的反向代理前端。這個前端為公共DNS域名、拒絕服務(wù)(DoS)防御和TLS終端提供了公用的主機IP。”
DoS防御的實現(xiàn)則有賴于數(shù)層可以對DoS攻擊進行告警的服務(wù)的硬/軟件負載均衡器。當DoS攻擊被檢測到時,該機制將指引負載均衡器約束甚至阻斷相關(guān)流量。谷歌前端(GFE)也應(yīng)用了類似的原理,卻擁有負載均衡所不能監(jiān)控的應(yīng)用層信息。
用戶身份驗證則在用戶名和口令外更進一步,還將校驗基于一系列風(fēng)險因素而設(shè)立的附加信息。雙因子驗證(2FA)已啟用,此外,谷歌正與FIDO聯(lián)盟合作,開發(fā)通用雙因子(U2F)開放標準。
為了確保自有安全軟件的進展,谷歌使用庫和框架來消除XSS漏洞,用自動化工具來檢測錯誤,并執(zhí)行手動安全審查。此外,谷歌還斥資數(shù)百萬美元建立公開漏洞懸賞方案來推進這一進程;同時,谷歌所投入的種種努力使其在它所使用的開源軟件的漏洞定位上的成功,也讓其廣受贊譽。“例如,OpenSSL的心臟出血漏洞就是谷歌發(fā)現(xiàn)的,我們在通用漏洞披露(CVEs)和Linux KVM虛擬機監(jiān)控程序的漏洞修復(fù)領(lǐng)域都是業(yè)界最具建樹的。”
來消除內(nèi)部風(fēng)險的主要方法之一是“主動限制和積極監(jiān)控”管理員訪問。具體策略包括對于一些管理活動的自動化、特定行動的雙重許可要求,以及限定API接口以實現(xiàn)不暴露敏感信息的調(diào)試。
入侵檢測及響應(yīng)則越來越多的使用機器學(xué)習(xí),“規(guī)則和機器智能⋯⋯能警告運營安全工程師可能發(fā)生的事件。”Red Team訓(xùn)練被用來測量和改進規(guī)則的有效性。
報告的主要目的可能在于最后一節(jié)——對谷歌云平臺的討論。由于使用了同一架構(gòu),但隨著特定服務(wù)的升級,它也會從同樣的安全流程中受益。這份報告也使用谷歌計算引擎云服務(wù)為例。
谷歌計算引擎(GCE)通過公開外部API接口的谷歌前端(GFE),從而獲得所有其他服務(wù)一樣的安全特性,包括DoS防御和集中管理的SSL / TLS支持。終端用戶的身份驗證則通過谷歌的集中式身份識別系統(tǒng)完成,而這提供了劫持檢測等額外功能。
谷歌計算引擎的管控系統(tǒng)影響了虛擬機的創(chuàng)建。任何從數(shù)據(jù)中心間的通信都被自動加密,而在同一個數(shù)據(jù)中心內(nèi)的虛擬機間的通信也正逐步被架構(gòu)中其他部分的相同硬件加速器所加密。虛擬機隔離是基于開源的KVM堆棧,并經(jīng)谷歌進一步強化。
上述的運營安全控制被用來確保谷歌的云計劃的穩(wěn)步推進。“也就是說,除非服務(wù)客戶所必需,谷歌無法訪問或使用客戶數(shù)據(jù)。”
2016年見證了谷歌云業(yè)務(wù)在Alphabet(谷歌重組后的“傘形公司”)的現(xiàn)有整體收入上真正產(chǎn)生效應(yīng)的過程。在2016年第三季度,云業(yè)務(wù)和谷歌游戲的數(shù)字產(chǎn)品銷售共同創(chuàng)下了24億美元的收入記錄,占谷歌總收入(223億美元)約10%。
谷歌基礎(chǔ)設(shè)施安全設(shè)計概覽(pdf)下載地址:
https://cloud.google.com/security/security-design/resources/google_infrastructure_whitepaper_fa.pdf
【本文是51CTO專欄作者李少鵬的原創(chuàng)文章,轉(zhuǎn)載請通過安全牛(微信公眾號id:gooann-sectv)獲取授權(quán)】