深度解析數(shù)據(jù)庫透明加密(二)

前文我們詳細介紹了數(shù)據(jù)庫加密的概念、數(shù)據(jù)庫加密的原因以及數(shù)據(jù)庫加密有哪些實現(xiàn)方式及特性。今天我們著重講一下數(shù)據(jù)庫透明加密在實際生活中的應(yīng)用。

一、數(shù)據(jù)庫透明加密可以解決哪些問題

數(shù)據(jù)庫加密能夠通過有效的解決如下問題,來提升數(shù)據(jù)庫的安全性:

1) 防止數(shù)據(jù)庫文件被下載或者復制、以及直接分析數(shù)據(jù)文件導致的數(shù)據(jù)泄漏和破壞。由于敏感數(shù)據(jù)被加密,任何直接對數(shù)據(jù)庫文件進行分析的攻擊方式,都只能看到密文。

2) 防止DBA或高權(quán)限帳號密碼泄露導致的數(shù)據(jù)泄漏和破壞。DBA或者高權(quán)限賬號被攻擊者獲取后,雖然攻擊者能夠得到數(shù)據(jù)庫中的全部數(shù)據(jù),但是由于敏感數(shù)據(jù)是被加密的,所以仍然不能獲得明文。或者攻擊者試圖修改授權(quán)用戶的訪問密碼進行身份偽造攻擊,但是加密系統(tǒng)額外的身份認證機制能夠?qū)@種偽造身份進行識別,致使攻擊者仍然無法獲取真實數(shù)據(jù)。

3) 部分的防止SQL注入方式拖庫泄漏全庫數(shù)據(jù)和數(shù)據(jù)破壞。SQL注入攻擊者通過拖庫獲取全部數(shù)據(jù)庫內(nèi)容,但是只能獲取到攻擊時所使用的用戶所對應(yīng)的明文權(quán)限,對于該用戶不具有權(quán)限的敏感數(shù)據(jù),攻擊者仍然不能訪問。

4) 實現(xiàn)多因子身份認證和授權(quán),彌補僅由口令驗證方式安全性不足的缺陷??梢栽黾訉?yīng)用系統(tǒng)、時間、IP地址、用戶名等多種因子的身份認證和授權(quán)管理。

二、數(shù)據(jù)庫透明加密現(xiàn)階段存在的缺陷

雖然數(shù)據(jù)庫透明加密能夠顯著的提升數(shù)據(jù)庫的安全性,但是并不能解決所有的數(shù)據(jù)庫安全問題:

1) 不能完全阻止SQL注入攻擊。SQL注入攻擊者如果使用應(yīng)用系統(tǒng)訪問數(shù)據(jù)庫的授權(quán)用戶對數(shù)據(jù)庫發(fā)起攻擊,則能夠獲得加密系統(tǒng)對該用戶的相應(yīng)授權(quán),能夠訪問到該授權(quán)項下的敏感數(shù)據(jù)。

2) 不能完全阻止攻擊者偽造身份對數(shù)據(jù)庫的攻擊。當攻擊者通過社交工程,完全竊取并偽造了具有對敏感數(shù)據(jù)合法訪問權(quán)限的用戶的帳號、密碼、以及應(yīng)用系統(tǒng)、IP信息時,數(shù)據(jù)庫加密將不能對其訪問進行限制。

3) 不能完全阻止授權(quán)應(yīng)用系統(tǒng)后門程序?qū)?shù)據(jù)庫的違規(guī)訪問。當應(yīng)用系統(tǒng)被授權(quán)訪問敏感數(shù)據(jù),但是被開發(fā)者留有后門時,數(shù)據(jù)庫加密系統(tǒng)并不能識別這種后門并加以阻止。

三、如何彌補數(shù)據(jù)庫加密系統(tǒng)對數(shù)據(jù)庫保護的不足?

深度解析數(shù)據(jù)庫透明加密(二)

通過配套使用數(shù)據(jù)庫審計、數(shù)據(jù)庫防火墻、數(shù)據(jù)庫脫敏等系統(tǒng),設(shè)置安全規(guī)則,限制敏感數(shù)據(jù)被訪問的記錄數(shù)量、被訪問的語句類型等多個方面,防止SQL注入、防止拖庫、防止后門程序等攻擊形式,從而形成對數(shù)據(jù)庫的全方位保護,彌補數(shù)據(jù)庫加密對數(shù)據(jù)庫保護的不足。