縱論數據庫安全審計產品的三代演進

當前,數據庫審計產品無疑已成爲政企事業單位在信息安全方面的新寵,信息安全建設的標配,幾乎所有的安全集成中都有它的身影。在市面上存在着幾十種數據庫安全審計產品,這些產品集中起來大約可分四種類型:

1、在網絡審計產品的基礎上經過簡單包裝推出數據庫審計產品

2、針對數據庫通訊協議的特點開發出專門的數據庫審計產品

3、國外的數據庫審計產品,比如Imperva、Guardium等;

4、OEM第三方的數據庫審計產品,OEM對象可能來自國內,也可能來自國外,比如Imperva或韓國的DBInsight。

追溯淵源,我們可以把數據庫安全審計產品劃爲三代:

第一代是入門級數據庫安全審計,這代產品解決的是有和無的問題;

第二代是專業型數據庫安全審計,這代產品解決的是準確性和易用性問題;

第三代是業務型數據庫安全審計,這代產品解決的是數據價值問題。

一代入門級數據庫安全審計產品

我們將一代定義成入門級,這是在數據庫安全審計產品在國外取得成功、外商進入中國推行這個概念之後,一些傳統網絡安全企業迅速跟進,基於傳統的網絡審計產品簡單改造或產品都未經改造只是概念包裝後就推向市場的產品。

這一代產品的典型特徵爲“三不管”:

(1) 不管審的準不準,先審下來再說

(2) 不管審的全不全,先有了再說

(3) 不管好不好理解,有數據再說

這一代產品本質就是使用傳統的網絡審計能力,再加上一些正則匹配能力,一些簡單的特徵追蹤,基本上數據庫安全審計的管理就是融入到原有的網絡管理界面中。這一代產品的主要缺陷,簡單列出如下:

(1)長SQL語句漏審

(2)多語句無法有效分割

(3)複雜語句對象解析錯誤

(4)參數值與SQL語句匹配錯誤

(5)錯誤的應答結果,特別是影響行數解析不正確

(6)充滿失真率的應用用戶關聯

(7)未專業化的審計界面

(8)過度冗餘的審計信息存儲

其中,以上缺陷的前六條都與準確性和全面性有關,用戶很難進行驗證;要判斷是否屬於這種產品,一般可以通過兩個簡單的方式進行判定:一個方法就是界面。如果在界面上有很多種協議,數據庫只是其中一種,往往就是網絡審計改換的產品;另一個方法就是招標參數。現在一個很奇怪的現象就是,招標數據庫安全審計產品,結果列出一堆網絡審計產品要求。以下是一個典型招標案例:

 縱論數據庫安全審計產品的三代演進

與數據庫審計產品不相干的參數

二代專業型數據庫安全審計產品

二代數據庫安全審計產品主要是由新興安全廠商研發,在研發過程中多少會參考一些國外數據庫安全產品的設計理念、產品界面,再加上自己的創新,生產出一款純粹的數據庫安全審計產品。這一代產品的典型特徵有三個:

(1)產品概念高度聚焦

產品替除傳統網絡審計的概念,不會出現類似於MAIL、FTP、Telnet等協議,用戶很容易地找到數據庫審計信息。

(2)數據庫包深度解析和SQL語法解析

二代數據庫安全審計產品的基本功在於對數據庫的包能夠進行精確分析,並且根據上下文語境進行追蹤(這需要模擬數據庫的行爲)。

(3)數據庫化的界面組織清晰

完全採用了面向數據庫化的界面組織,比如:數據庫、會話、語句、表、存儲過程等;這樣的產品概念,對於數據庫審計產品的直接使用者,一般是運維人員和安全管理人員,就很清晰,對問題的定位的線索組織也非常清晰。下面是兩代數據庫審計產品的一個對比:

 縱論數據庫安全審計產品的三代演進

一代數據庫審計產品典型界面示例1

 縱論數據庫安全審計產品的三代演進

一代數據庫審計產品典型界面示例2

由圖不難看出,界面菜單組織結構中,很難找到數據庫的信息,在審計記錄中也很難看到數據庫的SQL語句、數據庫用戶、數據庫會話等信息。

 縱論數據庫安全審計產品的三代演進

二代數據庫審計的典型界面組織

對比得出,二代數據庫安全審計產品界面,具有強烈的數據庫元素;以“數據庫”爲最基本信息組織單元,以“會話”、“語句”等數據庫中的基本元素爲線索;在審計記錄中,直觀的SQL語句、數據庫用戶、會話信息等,立刻將單調的網絡協議還原爲數據庫信息。

在第二代代產品中也有高下之分,主要體現在三個方面:

(1) DDPI技術的精準度

由於數據庫通訊包的複雜度,即使按照一種深度包解析思路也不能保證解析的完全精準,能否對通訊包作到高精度高兼容性,這就要看各個廠商的功力了。解析不準,要麼丟數據,要麼審計錯誤。

(2)協議識別的智能化

正是由於這種包解析技術的複雜性,爲了能準確識別協議類型,一些產品往往需要人工進行一些輔助,幫助輸入說明數據庫的版本、操作系統的類型、編碼方式等。二代產品中,哪家廠商能夠實現對數據庫協議的智能化識別,將是產品易用性的另一個重要考量指標。

(3) 三層關聯的準確度

從審計的角度,由於一個業務系統往往公用一個數據庫用戶,因此無法區分哪個業務人員觸發了哪些數據庫操作,因此不能真正地滿足追查的需要。爲了滿足這個需要,啓明星辰最早註冊了通過http協議與數據庫協議進行關聯的專利;後來安恆也實現了類似的技術。但是由於鏈接池的存在,在高併發的情況下,這種技術的正確率不超過50%,作爲審計這是無法忍受的。新興數據庫安全廠商安華金和,在國內率先推出了基於在web上安裝插件的方式,利用這種方式實現100%審計的準確性

(4) 數據的關聯分析

第二代數據庫安全審計產品中,很多依然是單個數據庫訪問信息的展示風格, 但是在實際的使用中,用戶往往需要了解發現某類高危的風險,需要知道IP來源,什麼用戶登錄,登錄後在整個會話中都執行了什麼語句。發現一個峯值性能瓶頸的時候,能同時知道當時的會話量,語句量,對於這些會話都來自於什麼IP,主要是什麼語句的性能消耗佔比最高,在這些消耗佔比最高的語句使用的是什麼樣的參數。

綜上,二代數據庫安全審計產品具有這樣的特點:

(1) 以數據庫原生概念組織軟件的界面框架和界面元素,大幅提升“數據庫”的專業性;

(2) 通過 ‘會話’、‘語句’、‘風險’之間的內在聯繫實現界面交互和線索關聯,大幅提升“審計追蹤”的能力和便利性;

(3) 通過對數據庫訪問的IP、用戶、語句(操作)、對象、響應等不同維度的統計,完成了數據庫運行狀況的梳理,從而大幅提升對數據庫運行狀況和性能的掌握能力。

當前,考覈數據庫審計產品的好壞,最重點的就是看以上三點。這三點使數據庫審計產品實現了審計功能高度專業化,同時延展了其使用價值,成爲數據庫運維與管理人員進行數據庫狀態監控和性能優化的重要工具。

三代業務型數據庫安全審計產品

二代數據庫審計產品的專業度勿用置疑,但依然是一個技術型產品,是DBA和運維人員的好幫手,但與管理人員、業務人員保持着一定的距離。大量的數據庫審計產品上線以後,無法向管理人員和業務人員闡述清楚產品的價值,這其中一個重要的原因就是數據庫是一個後臺的服務,數據庫的SQL語言是個專業化程度很高的語言,數據庫對象無法與直接的業務發生映射。因此,DBA和運維人員生成的報告,無法讓管理者和業務部門看懂;從而使很多的數據庫審計產品成爲了擺設,或者只發揮了其應有價值的10%。

三代數據庫安全審計產品的關鍵就是,如何通過業務化的語言呈現出對數據庫的訪問行爲;將傳統數據庫中的要素客戶端IP、數據庫用戶、SQL 操作類型、數據庫表名稱、列名稱、過濾條件變成業務人員熟悉的要素:辦公地點、工作人員名稱、業務操作、業務對象、業務元素、某種類別的業務信息。爲了更清楚的說名這個問題,我們對比看看三代演進前後數據庫安全的審計記錄:

 縱論數據庫安全審計產品的三代演進

圖 3.1 三代以前數據庫安全審計記錄

 縱論數據庫安全審計產品的三代演進

 三代數據庫安全審計記錄

三代數據庫安全審計,不僅僅是審計記錄的展現,還包括數據的組織,如何把這些分散的SQL語句,再組織成一個個業務操作,這個時候給業務人員展現的就不是每秒有多少個SQL操作,而是每秒有多少個業務操作。如圖3.3位當前一個會話中的多條審計記錄,組織成一個業務操作後,如圖3.4,不僅僅是審計記錄的展現,同時包括性能、類型統計、成功與失敗、檢索條件、報表都是基於業務操作爲單位。

 縱論數據庫安全審計產品的三代演進

 多條審計記錄

 縱論數據庫安全審計產品的三代演進

 業務操作示例

二代數據庫安全審計產品的統計和追蹤根據SQL語言類型進行劃分,可以看到一些管理人員和業務人員很難懂的SQL語句。三代數據庫安全審計產品統計和追蹤按照業務的行爲和分類來進行信息的組織和展現,而查詢到的語句也是業務化的語言展現。當達到這樣的程度,數據庫安全審計產品對於業務人員和管理人員的價值將大大提升。但要達到這樣的程度,需要依賴很好的數據分析處理,在這一階段能否完成一個好的業務化產品的關鍵在於大數據的分析處理能力,特別是對數據流的處理能力。

當前,至少國內所有的數據庫安全審計產品距離三代數據庫審計產品的目標差距甚遠;只有真正掌握數據庫核心技術能力的安全廠商,真正具有用戶意識的安全廠商,才能生產出三代產品,讓我們拭目以待。

作者:安華金和 劉曉韜國網智研院 詹雄


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章