華為云數據庫服務安全白皮書
隨著技術的飛速發展,公有云逐漸成為企業運行 IT 設施的新趨勢,而作為企業最核心的系統數據庫,在上云時代也成為必然選擇。
對企業來說,數據庫可視為其命脈。因此,數據的安全性顯得至關重要。數據庫遷移上云,也就意味著將“命脈”搬到公有云平臺,很有可能因此引發安全隱患。
作為云平臺提供商的華為云數據庫,承載了成千上萬家企業的系統。為讓企業可以安心上云,華為云數據庫在安全性能等方面投入巨大,不斷優化現有技術,支持防火墻、安全連接、安全組、實例隔離、安全刪除和數據加密等基礎安全能力,其自身有著完善而嚴格的安全開發驗證機制,并已獲取十多項安全認證,全方位保障數據的安全。
本文追溯云數據庫服務所面臨的安全挑戰以及相應的解決方法,華為云數據庫在此基礎上進一步優化,將帶給用戶最優質的服務。
云數據庫服務應用場景
1? ???云數據庫服務面臨的安全挑戰
云數據庫服務所面臨的安全挑戰
數據庫從私有機房搬到公有云,從獨占基礎設施,到全國乃至全球范圍內共享,這給數據庫的安全帶來了全新的挑戰。
如上圖所示,數據庫所面臨的安全威脅分為三個維度:
①? 數據庫使用安全
應用程序、程序員和 DBA 如果不能安全地使用數據庫,很有可能會直接對數據庫造成災難性的后果。當然這種安全威脅在傳統模式里也是存在的,然而上云后將更為突出。包括但不限于的風險有:
A.??? 數據明文傳輸:在傳統模式里,客戶端通過企業內網訪問數據庫,在這種情況下,明文傳輸數據幾乎不存在風險。但在云上,連接將經過云基礎設施的共享網絡(物理+虛擬),潛存被窺視的風險。
B.??? SQL注入、緩沖區溢出:這是應用程序訪問數據庫常遇見的問題了,應用程序的代碼一旦沒有處理好SQL語句(如直接用參數拼接SQL),很可能會造成數據庫被刪除、敏感數據泄露的嚴重后果。
C.??? 越權使用、合法權限濫用、權限盜用:數據庫通常都存在缺省配置、高危程序、弱口令、權限分配過高等問題,可以利用這些漏洞發起攻擊,入侵數據庫、竊取、篡改數據。運維人員、 DBA 和 程序開發人員等普遍存在權限過高的問題,隨意對數據庫進行增、刪、改、查、拷貝等操作,企業通常缺乏對此類操作的細粒度管控機制。
D.??? 缺乏詳盡審計日志和分析手段:數據庫被入侵和非授權操作時,攻擊者可以獲取數據庫的高權限賬戶,從而刪除部分或全部審計日志,導致無法準確回溯,阻礙后期取證;考慮到性能影響,數據庫日志通常由于缺省的參數配置而被關閉,依賴單純的數據庫日志進行審計往往存在“短板”,需要與系統中其它事件源進行關聯分析;審計記錄繁雜眾多,粗放的數據庫審計無法從眾多審計記錄中精確定位到操作人,若實現細粒度的審計,意味著巨大的審計成本和服務器性能消耗。
E.???? 數據庫通信協議漏洞:數據庫是個復雜的系統,復雜程度遠超于操作系統,因此常爆出數據庫漏洞,這些漏洞將可能導致數據泄露或被惡意操作。
②? 數據存儲安全
云數據庫與傳統數據庫模式本質區別在于底層存儲機制,這或許也是企業上云最關注同時也是最擔心的問題。由于共享底層基礎設置、數據,因此客觀上存在第三方、黑客或云運營商竊取、篡改、刪除數據的潛在風險。
A.??? 數據被第三方竊取、篡改:通常,云數據庫實例運行在共享的虛擬機、容器或物理機上,共享塊存儲等相關設施。這意味著,在一個機房/機柜/服務器上,可能運行著競爭對手的程序。如果隔離機制不夠健全,被惡意利用可能導致數據被竊取和篡改。
B.??? 數據被云平臺運營商查看:云平臺運營商作為“大管家”,因此需要利用一定技術手段和通道來定位解決問題,不免需要登錄數據庫節點進行修復。無論隔離機制多么完善,這種天然屬性都將帶來讀取租戶數據的風險。
C.??? 數據無法徹底擦除:對數據敏感程度很高的企業,可能會臨時使用云平臺資源來完成復雜的數據操作/分析工作。出于安全考慮會徹底刪除所有數據,以絕后患。雖然操作起來很簡單,但如果云平臺不能徹底擦除痕跡所留下的足跡,可能會面臨泄露敏感數據的風險。
③? 云平臺管理系統自身安全
云平臺通過面向互聯網的管理系統,對所有租戶提供實例服務,這個管理系統本質上也是一個典型的“前臺網站 + 后臺服務 + 運維管理”的互聯網系統,其自身也面臨著相同的安全風險:
A.??? 云平臺管理系統存在漏洞,導致實例被惡意操作:互聯網系統極為復雜,如果云平臺技術實力不夠,很有可能會存在安全漏洞,將導致租戶實例被第三方、黑客惡意操作,從而帶來災難性后果。
B.??? 云平臺管理系統被DDoS攻擊,無法管理實例:互聯網系統經常面臨的安全問題是,遭受DDoS攻擊,導致網站癱瘓無法使用。云平臺管理系統如果不能應對此類攻擊,將影響租戶管理數據庫實例。
C.??? 云平臺內部運維的人為安全事故,導致實例被損壞:大量導致誤刪數據的案例,都是由于在維護服務器時誤執行“rm –rf”命令,從而造成嚴重后果。云平臺的運維安全管理與執行如果不夠規范、成熟,將可能導致租戶數據庫實例受損。
2? ? ??解決方案
現階段,在公有云領域,采用不同的解決方案來針對性的解決以上所有的威脅,具體如圖所:
可能的解決方案
現在,將對以下解決方案進行詳細介紹。
2.1????? 數據庫防火墻
傳統的數據庫,構建權限模型、防暴力破解、密碼強度要求、審計日志等多重安全控制機制;成熟的商業數據庫擬定了一套完整的安全機制,而開源數據庫則顯得相對較弱。
數據庫的安全問題,多來源于應用程序訪問和開發/運維人員/DBA的日常維護,僅依靠數據庫本身的安全機制(尤其是開源軟件)來防止此類風險,實際上遠不夠。
相較于一般的IT基礎設施防火墻,數據庫防火墻專門針對數據庫訪問安全進行防護在技術上,通過采用(設置)應用程序/客戶端與數據庫之間的一種反向代理,攔截所有數據庫訪問,并對返回值進行處理,從而實現多種安全防護:
SQL注入檢測與防攻擊:依據業界經驗預定義或自定義規則,自動檢測識別 SQL注入攻擊,并支持預定義或自定義響應措施,比如Blocking、Return error等。
敏感數據識別與脫敏:根據預定義(如行業規范PCI、HIPPA)或自定義規則,自動掃描全庫表結構和數據,一經發現敏感數據,并可制定SQL查詢返回時的脫敏策略(Masking),從而使得非授權用戶無法獲取敏感數據。
細粒度訪問控制:提供比原生引擎更為細粒度的權限控制,比如可基于表、行、列或事件,進行加上時間維度的控制。
細粒度審計日志:提供比原生引擎更為細粒度的審計日志,如流量日志、入侵日志、異常監控日志、敏感數據讀取日志、事前事后日志等。
細粒度活動實時監控:實時監控數據庫訪問的所有活動,粒度可細化至列級,以及訪問前和后的事件。
業界比較常見的數據庫防火墻,包括以下:Hexatier、Fortinet FortiDB、IBM Guardium、Imperva SecureSphere和Vormetric等。
數據庫防火墻同樣適用于傳統應用場景,但在云場景中使用更為便利的鏡像(軟件市場),同時還支持一鍵式啟用的防火墻服務。企業上云可選用此功能,從進一步加強保障數據庫的安全。
2.2????? 安全連接
傳統應用場景中,客戶端與數據庫間的通常采用內網連接,多采用VPN方式打通外網訪問網絡,因此數據庫訪問的網絡路徑是安全的。
但在云數據庫產品中,客戶端通過云平臺提供的虛擬網絡來訪問數據庫,虛擬網絡雖然提供了一定的隔離機制,但由于基礎設施的共享特性和復雜性,導致數據包存在被監聽的風險。同時,在云上運行的數據庫,DBA出于便利的考慮,很可能直接通過公網訪問來進行日常管理。云平臺通常支持數據庫實例綁定公網IP,此時客戶端與數據庫的通信將直接經過公網,存在巨大的被監聽風險。
幾乎所有主流數據庫都支持基于SSL協議的安全連接,只需下載安裝相關證書即可。安全連接通常意味著性能的損失,根據訪問頻率、數據量和數據庫特性的不同,訪問性能可能損失10~30%。企業上云應優先考慮數據庫的安全問題,結合訪問場景和業務性能的需求選取安全與性能二合一的最佳的解決方案。
2.3????? 安全組/IP白名單
數據庫通常運用特定的應用程序訪問,應用程序安裝在固定的節點上。DBA通常在特定網絡環境和節點(如跳轉機)訪問及維護。鑒于訪問方位最小化的原則,數據庫訪問應該對來源進行限定,降低非法訪問的風險。
有些數據庫引擎支持賬號與IP的綁定,比如MySQL,但大部分數據庫并沒有這種機制。這種引擎內實現的訪問限制,在技術上并不能完全杜絕數據庫的訪問,只有連接上數據庫后才能發現非法訪問。因此,云平臺應該提供安全組或IP白名單的機制,直接在網絡、主機或OS層提供訪問控制。
IP白名單,就是傳統的基于OS的iptables,而安全組則是云平臺基于主機或網絡設備提供的,相比于OS層是更為安全的訪問控制機制。安全組的規則類似于IP白名單,可對進出、IP段進行約束。
云數據庫由于其所處環境為“公共場所”,相較傳統場景而言,更有必須要啟用安全組或IP白名單相。
2.4????? 實例隔離
公有云的基石是資源共享,共享必然帶來隔離風險。競爭對手的數據庫實例可能與你的分布在同一個服器上。當前業界的云數據庫實現各異,但都對實例進行了隔離,由于機制不一,所導致的隔離程度、性能和價格也不一:
獨占物理機:一個數據庫實例獨占一臺物理機,隔離級別安全性最高,同時性能最好,但價格高昂。
獨占虛擬機:一個數據庫實例獨占一臺虛擬機,多臺虛擬機共享物理機。虛擬機間通過底層虛擬化技術進行隔離,很難通過OS漏洞突破隔離。因此,隔離級別安全性比較高,價格便宜,但性能損失最大。獨占虛擬機是公有云領域最為常見的一種供給機制。
容器隔離:一臺物理機安裝一個OS,OS內部署多個數據庫實例,實例間通過容器技術進行隔離。隔離效果略遜于獨占虛擬機,但性能損失小(接近于物理機),性價比最高,因此也是一種較為常見的機制。
引擎進程內隔離:數據庫引擎本身支持多租戶,隔離在數據庫引擎的進程內實現,類似于數據庫用戶權限隔離。這種方式資源最大化共享,性能損失小,性價比高,但隔離效果最差。一旦數據庫本身存在漏洞,將可能直接導致數據泄露,或數據庫的性能容易波動。
企業選擇云平臺和數據庫實例時,應根據自身對安全性、性能和預算的訴求,選擇合適的實例類型。比如安全性要求高,但性能要求不高且預算有限,則可以考慮獨占虛擬機的云平臺和實例。
2.5????? 安全刪除
企業有時候需要刪除存儲有敏感數據的數據庫,比如臨時用于數據分析處理的場景。如果在傳統場景里,簡單刪除,然后機器繼續用作其它用途即可。
然而,在公有云里,底層存儲介質是全局共享的,實例是刪除了,但底層的存儲塊仍然存留數據,可能會被分配給另一個實例,這就有可能導致數據泄露。
安全刪除,指刪除時對底層介質進行低格,徹底抹除數據。安全刪除不僅僅包括數據庫實例所掛的卷,也包括備份數據的存儲空間(通常為廉價的對象存儲系統)。
企業如對無痕退出有嚴格需求,應選擇支持安全刪除的云平臺,并在刪除時選擇強制安全刪除。
2.6????? 數據加密
防止數據泄露,除了采取隔離保護措施外,最有效的當屬加密方式了。云數據庫從網絡傳輸、計算、表數據存儲到備份,都是在公共設施中進行的。網絡傳輸可以通過SSL安全連接進行加密,計算和存儲加密,則需要額外的機制。
2.6.1? ? ??靜態加密
云數據庫的靜態加密指數據靜止存儲到介質上時是加密態的,包括主數據用的塊存儲和備份用的對象存儲。通常此類加密和密鑰管理系統相結合,租戶擁有自己的密鑰,底層的卷和對象存儲服務與之對接,在落盤時用密鑰加密,讀取時則解密。
當底層服務被攻擊時,靜態加密保護數據安全。數據不會泄露,因為拿到的都是密文。但靜態加密不能保護OS層以上的數據竊取攻擊,如云平臺運維人員登錄數據庫實例的OS,打開數據庫文件獲取數據。因為靜態加密是底層加密技術,對存儲驅動層或API層以上是透明的。
如需防止這類攻擊,則需更進一步的加密機制:表空間加密。
2.6.2? ? ??表空間加密
表空間加密,指的是數據庫文件內容加密狀態,只有當讀數據信息存儲并進行計算、返回客戶端時才進行解密。主流商業數據庫均支持此高級特性,如Oracle、DB2和SQL Server。
由于OS上的文件是加密態的,因此云平臺運維人員登錄OS查看文件,是無法獲取信息的。
但并非所有數據庫引擎都支持表空間加密,一旦同時啟用,會對數據庫性能造成顯著的影響。
表空間加密可以保護OS層的文件攻擊,但無法保護把內存dump出來提取數據的攻擊,因為數據庫引擎進行查詢計算時,是需解密的,甚至明文一直留在緩沖區。
如果想要防止這種高級攻擊,則需采用更為高級的加密技術:同態加密。
2.6.3? ? ??同態加密
維基百科中對同態加密的定義:同態加密是一種加密形式,它允許人們對密文進行特定的代數運算得到仍然是加密的結果,將其解密所得到的結果與對明文進行同樣的運算結果一樣。換言之,這項技術令人們可以在加密的數據中進行諸如檢索、比較等操作,得出正確的結果,而在整個處理過程中無需對數據進行解密。
這意味著,數據從客戶端就開始加密,期間的傳輸、運算和存儲都是以密文形式存在,查詢結果也直到返回客戶端后才解密,從而達到“全”加密的效果,保護的效果空前強大。
2009年Craig Gentry的論文《Fully Homomorphic Encryption Using Ideal Lattices》從數學上提出了全同態加密的可行方法,在理論上證明了在不解密的情況下可以對加密數據進行任何運算(可以對明文進行的),從而使得這項早在幾十年前就提出的加密技術取得決定性的突破。近些年,越來越多的學術界人士、公司對其進行研究,甚至有些商業數據庫號稱已經支持同態加密。
同態加密所面臨的最大問題是性能損失,目前尚沒有成熟可用的、性能在理想范圍內的可商用數據庫產品,但估計未來幾年將會出現。
2.7? ? ??云平臺管理系統自身安全
云平臺本身是個復雜的、面向互聯網的管理系統,和所有互聯網系統一樣,面臨著各種各樣的攻擊,防范措施也類似。只不過作為公共設施,其自身安全性比單個企業的系統顯得更為重要而迫切,因為一旦被攻破,可能導致成千上萬的企業遭受損失,后果極其嚴重。
系統的安全防范,需從兩個維度進行:技術和人員。技術是指采用防火墻等軟硬件設施來對系統進行保護,技術是“硬功夫”。人員是指開發、運維等相關人員的安全意識和技能,是“軟功夫”。
對于云平臺管理系統(包括數據庫服務),在技術上可以采用傳統的防火墻、Anti-DDoS、IDS、IPS,以防范典型的網絡攻擊。
但安全是個非常廣泛而復雜的課題,任何一個小小的漏洞或疏忽,都可能導致系統出現嚴重的安全問題,進而被惡意利用造成嚴重后果。僅依靠軟硬件設施,是遠遠不夠的。開發人員一個簡單的編程錯誤,可能導致緩沖區溢出,導致系統崩潰或被執行惡意代碼。
因此,規范、流程和人員技能,遠比安全設施更重要、更有挑戰性。業界有很多安全規范,包括編程語言、數據庫、OS、中間件、運維管理等領域,這些都是“前車之鑒”的經驗積累,云平臺可以直接借鑒應用。系統除了功能和性能等驗證外,應該引入安全測試和驗證流程,比如安全工具掃描、安全規范性驗證、模擬滲透攻擊等。安全意識、知識和技能,應該植入每個相關人,包括架構師、開發、測試和運維人員等,只有人人都被“卷入”,才可能防止“千里之堤,毀于蟻穴”。
最后,即使這些“軟硬功夫”都做到位,企業把數據放到云上也未必就可以“高枕無憂”。因為還需要看云平臺提供商的戰略定位,對于宣布“不碰用戶數據”且其自身業務性質中立的云提供商,顯然更沒有“犯罪動機”。而如果提供商自身的核心利益與用戶數據有關,則不論技術上如何先進,也很難保證不“監守自盜”。
企業上云,從安全性角度,當然優先選擇中立的平臺。
3????????? 華為云數據庫服務安全現狀與未來
華為云數據庫服務在數據庫使用、數據存儲和自身管理系統安全方面,均具備良好的基礎:
直接支持數據庫安全服務,租戶可以配套RDS啟用數據庫防火墻。數據庫安全服務(Database Security Service)是一個智能的數據庫安全防護服務,基于反向代理及機器學習機制,提供敏感數據發現、數據脫敏、數據庫審計和防注入攻擊等功能,保障云上數據庫的安全。
支持所有數據庫引擎的安全連接,租戶只需配置相關證書即可啟用
支持基于主機的安全組,可靈活配置數據庫出入口網絡的訪問規則,以最小化訪問范圍
支持獨占虛擬機的實例
支持安全刪除(即將推出)
支持靜態加密(即將推出)
部分數據庫支持表空間加密
具備防火墻、Anti-DDoS、IDS、IPS等基礎安全設施
內部系統開發有數以千計安全規范和掃描工具,涵蓋編程語言、數據庫、操作系統、運維等領域,以及嚴格的安全驗證流程
華為云已獲得CSA STAR金牌認證、公安部信息安全等級保護三級、網信辦網絡安全審查試點、可信云認證、金牌運維及國際通用準則CC+EAL3+等安全認證
最后,華為的戰略是云、管、端,華為云已宣布“不碰用戶數據”的中立立場,這是企業上云的重要“定心丸”。
4? ? ? ? ?結論
相較于企業自建數據庫的傳統部署方式,云數據庫服務面臨著數據庫使用、數據存儲和自身平臺系統安全等方面的安全挑戰。當前,業界應對這些新威脅的解決方案,包括但不限于數據庫防火墻、安全連接、安全組、實例隔離、安全刪除和數據加密等。同態加密是目前最為前沿的云數據保護措施,云數據庫領域當前仍然處于研究和小范圍應用階段,未來幾年可能出現成熟的商業應用。
華為云數據庫服務支持防火墻、安全連接、安全組、實例隔離、安全刪除和數據加密等基礎安全能力,其自身有著完善而嚴格的安全開發驗證機制,并已獲取十多項安全認證。
華為云堅持“不碰用戶數據”的中立立場。
企業上云應根據自身業務功能需求、性能需求、預算和安全需求,以及云平臺定位,選擇最適合自身的云數據庫服務。
掃描二維碼,體驗華為云數據庫服務
附件: 華為云數據庫服務安全白皮書.pdf 879.29KB 下載次數:25次
數據庫 數據庫 華為云數據庫 數據庫安全服務 DBSS 云數據庫 MySQL
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。