在大眾眼里,,數(shù)據(jù)庫審計(簡稱“數(shù)審”)系統(tǒng)是數(shù)據(jù)安全領域的入門級產(chǎn)品,,不過,,歷經(jīng)近20年的發(fā)展,,數(shù)據(jù)庫審計技術路線和產(chǎn)品定位不斷革新和演變,如今,,已經(jīng)從入門產(chǎn)品,,發(fā)展為進階產(chǎn)品,甚至在未來有可能成為終極產(chǎn)品之一,。
原因有以下幾點:
首先,,無論是國家級的法律或標準,還是等保以及行業(yè)級的安全標準都對使用數(shù)據(jù)庫審計有明確要求,,是所有網(wǎng)絡運營者必須建設的基礎能力之一,。
其次,數(shù)據(jù)庫作為數(shù)據(jù)資產(chǎn)的存儲載體,,其重要性無需贅述,。如此重要的對象,必須要掌握誰在用,、怎么用,、何時用、何地用,、用了哪些基礎信息,。這些基礎信息幾乎是我們判斷是否出現(xiàn)泄密事件、是否需要調(diào)整安全策略,、是否需要追責定責的唯一支撐,。數(shù)審系統(tǒng)發(fā)揮的作用就是回答以上這些追問??梢哉f,,如果沒有數(shù)據(jù)庫審計,數(shù)據(jù)安全的管理和建設將舉步維艱,、寸步難行。
再次,核心數(shù)據(jù)資產(chǎn)所在的數(shù)據(jù)庫,,必定是惡意人員最頻繁入侵的領地,,它面臨多重威脅,既有外部入侵威脅,,又不得不防范層出不窮的內(nèi)部惡意行為,。身為管理者,一定希望在數(shù)據(jù)庫受到威脅時能夠第一時間獲取風險信息,。如何實現(xiàn),?靠人工24小時監(jiān)控數(shù)據(jù)庫的一切訪問行為幾乎難以實現(xiàn),因此,,借助工具的力量,,引入數(shù)審產(chǎn)品才是成熟的做法。
數(shù)據(jù)庫審計不僅具備識別風險的能力,,而且還可以發(fā)出告警,,方便管理者和運維工程師及時處理風險。建立數(shù)審體系,,無論是外部還是內(nèi)部,,只要出現(xiàn)了針對數(shù)據(jù)庫的惡意操作,數(shù)據(jù)庫審計就能夠第一時間識別并發(fā)出告警,,讓管理者第一時間進行處理,,能夠有效降低甚至避免損失。所以,,數(shù)據(jù)庫審計對于數(shù)據(jù)安全防護來說是必要一環(huán),。
最后,對于已知風險可以通過內(nèi)置規(guī)則和模型,,第一時間進行告警通知,,但對于特別復雜的風險模型或新型安全攻擊方法造成的安全事件,風險預警未必來得及或未必能全部處理,。這時候,,就需要對安全事件進行倒追溯源。溯源的前提一定是建立在完整的數(shù)據(jù)庫訪問日志的基礎上,,全量的,、訪問要素齊全的、準確地記錄所有SQL日志,,讓數(shù)審系統(tǒng)成為數(shù)據(jù)庫溯源小能手,。
當然,幾乎所有優(yōu)秀產(chǎn)品的發(fā)展都是由用戶需求驅(qū)動和技術環(huán)境支撐的,,數(shù)審產(chǎn)品也不例外,。從最初解決有無逐步發(fā)展到智能分析,,數(shù)審產(chǎn)品歷經(jīng)至少四代演進,可以說每一代產(chǎn)品的發(fā)展史就是用戶的需求進化史,。
第一代:解決有無
時間:2003年前后
用戶需求:能夠?qū)iT審計數(shù)據(jù)庫活動
此前的3-5年,,網(wǎng)絡安全在國內(nèi)迅速發(fā)展。除了網(wǎng)絡防火墻,、IPS等邊界防護產(chǎn)品,,在旁路技術領域,網(wǎng)絡審計系統(tǒng)已經(jīng)嶄露頭腳,。用戶此階段的關注點在于:數(shù)據(jù)庫端能不能有一類專門的旁路產(chǎn)品,,能做到在全量訪問行為記錄的同時,還能風險告警,。
眾所周知,,在Oracle、MySQL,、SQLServer等大型數(shù)據(jù)庫產(chǎn)品中,,均自帶了審計服務模塊,具備完整準確記錄SQL日志的能力,。然而,,數(shù)據(jù)庫自身的審計受限于自身的管理體系,DBA用戶可根據(jù)需要隨時停掉審計服務,,干壞事時甚至可以不審計,,或人工刪除日志消除痕跡,不符合安全審計的第三方獨立性原則,;加之自身與數(shù)據(jù)庫服務器本地部署,,往往消耗30%以上性能,因此也需要引入第三方審計產(chǎn)品,。
在此背景下,,2003年左右,國內(nèi)第一代數(shù)審產(chǎn)品誕生,,主要功能設計為針對數(shù)據(jù)庫活動行為的監(jiān)控,,變黑盒為白盒,變未知為已知,,解決用戶的數(shù)據(jù)庫安全管理焦慮,。實際上,這一代的數(shù)審產(chǎn)品是由網(wǎng)絡審計簡單變形而來,,針對數(shù)據(jù)庫的流量包進行基于正則表達式匹配的審計技術,,解決的是有無問題,但無法對數(shù)據(jù)庫操作全量,,進行精準審計,,特別是復雜語句超長語句等等,,更別談執(zhí)行的結(jié)果類要素信息。
對于數(shù)據(jù)庫審計來說,,正則表達式是一種簡易的通用字符串匹配方法,,通常用于簡單場景下對指定字符的匹配,。一旦面對超長,、多層嵌套、多表關聯(lián)等復雜的SQL語句,,使用正則表達式很容易造成誤識別或漏識別,,更無法有效區(qū)別數(shù)據(jù)庫品牌不同導致的差異。
第一代數(shù)審產(chǎn)品給人的總體印象: 具備基本SQL語句的記錄能力,,復雜類的操作往往審不到,。無法做到精準告警,無效告警,、誤報頻頻發(fā)生,。
第一代數(shù)審總體生存狀況:合規(guī)性用戶勉強使用,需求性用戶輕易還不用,。
第一代數(shù)審總體評分:●●○○○
第一代數(shù)審廠商數(shù)量:3家左右,。
正是這樣的局限性,推動了數(shù)審產(chǎn)品的繼續(xù)進化,。
第二代:準確性需求
時間:2009年前后
用戶需求:能否審計得更準一點,、不添亂
第一代數(shù)審產(chǎn)品推向市場并接受檢驗,各種性能問題逐漸暴露,,產(chǎn)品服務提供商修修補補進行完善,,使得產(chǎn)品日漸成熟穩(wěn)定。但產(chǎn)品穩(wěn)定了,,用戶群同時也不斷擴大,,審計日志不準確的問題也逐漸顯露出來,漏審,、誤審,、漏報、誤報現(xiàn)象成了家長便飯,,導致用戶基于審計日志所作的判斷,,常常是錯的,從而誤導了對安全事件的追蹤,、溯源和響應,。
隨著用戶的不斷反饋,產(chǎn)品廠商逐漸意識到第一代數(shù)審產(chǎn)品存在的原理缺陷,,僅靠修修補補無法從根本上解決問題,,產(chǎn)品的設計必須推翻重建,。2009年前后,廠商推出第二代數(shù)審系統(tǒng),,摒棄第一代架構(gòu)重新設計,,采用了基于數(shù)據(jù)庫協(xié)議的語法、語義的解析技術,。此種解析技術采用準確“翻譯”的方式,,不受限于SQL語句的長度或復雜度等因素,能夠精確定義每一條SQL語句,,準確理解其真正的含義,,從而實現(xiàn)精準審計和告警。
讓我們舉例對比兩代數(shù)審系統(tǒng)的差距:
假設用戶設置規(guī)則為對B表進行查詢的SQL操作定義為風險操作,,第一代系統(tǒng)的正則表達式配置規(guī)則思路是:語句中包含select,、b關鍵字;第二代系統(tǒng)基于數(shù)據(jù)庫協(xié)議語法,、語義的解析技術思路是:語句操作最終執(zhí)行意思是查詢(select),,且作用表對象為b表,此時,,數(shù)據(jù)庫接收到一條訪問請求:DELETE FROM a WHERE a.rowid > (SELECT MIN(b.rowid) FROM b WHERE a.sno=b.sno),。
若通過正則表達式匹配SQL后,發(fā)現(xiàn)該語句中包括select和b關鍵字,,誤判其為風險操作——進行告警,;若通過語法、語義解析后,,理解該語句為一個刪除操作(delete),,刪除數(shù)據(jù)的條件是rowid大于某個值,而該值是通過嵌套的sql查詢語句獲得,,因而準確判定其為非風險操作——不予告警,。
從上述例子可以直觀的看出兩代審計產(chǎn)品的差距,第二代數(shù)據(jù)庫審計技術幫助用戶真正掌握了完整且準確的數(shù)據(jù)庫活動,。為數(shù)據(jù)庫層出現(xiàn)的違規(guī),、惡意事件提供準確判斷、溯源和定責的證據(jù)支撐,,避免了誤判,。
隨著第二代數(shù)審系統(tǒng)逐漸成熟,越來越多的用戶開始使用數(shù)審產(chǎn)品,,特別是在等級保護的助推下,,數(shù)審產(chǎn)品掀起了一股小熱潮。這一階段的用戶只是愿意買、敢于買,,并未有人太去關注真正的使用效果如何,,以及出了安全事件能不能快速溯源、能不能快速完成突發(fā)事件的排查等,。因為高端場景并未出現(xiàn),,金融、電信等業(yè)務量較大的企業(yè)用戶仍未登場,。
第二代審計產(chǎn)品給人的總體印象: 復雜類的操作能解析記錄,,準確度大幅提升。但往往是偏向政府類或中小企業(yè)客戶,,這些客戶的等級保護政策要求較高,,性能要求往往不太高。
第二代數(shù)審總體生存狀況:合規(guī)性用戶大幅增加,,需求性用戶基本愿意購買,但高端用戶暫時無人問津,。
第二代數(shù)審總體評分:●●●○○
第二代數(shù)審廠商數(shù)量:10家左右,。
第三代:高質(zhì)量要求開始登場
時間:2014年前后
用戶需求:能否審計得更多、更久一點
隨著用戶數(shù)據(jù)庫訪問規(guī)模的逐步增加,,需要審計系統(tǒng)單位時間內(nèi)執(zhí)行的入庫量迅速增多,,存儲日志量也相應增加,此時,,數(shù)據(jù)庫審計記錄的日志可以用“海量”日志來形容,,在海量日志中高效檢索就成為極大挑戰(zhàn)。此時,,第二代數(shù)審系統(tǒng)開始出現(xiàn)性能瓶頸問題,,已經(jīng)完全無法支撐對大型和超大型業(yè)務系統(tǒng)的審計需求,尤其是高端行業(yè)的審計需求,。
隨著國家和政府對網(wǎng)絡安全的重視,,特別要求金融等關鍵基礎信息行業(yè)在安全領域鼓勵使用國產(chǎn)自主產(chǎn)品,給予國產(chǎn)安全軟件以最大的門檻開放度,。至此,,國產(chǎn)數(shù)審產(chǎn)品拉開了性能上追逐國際大牌的序幕。在突破高性能階段,,擺在國內(nèi)廠商面前的實際挑戰(zhàn)相當大,。高性能意味著高入庫性能、高查詢性能,、高存儲效能,。
直到2017年,才有若干優(yōu)秀廠商,,憑借全文檢索,、列存儲數(shù)據(jù)庫,、多進程并發(fā)等技術,完成了高性能產(chǎn)品的突破,,真正開始在大銀行,、大保險公司的重要業(yè)務系統(tǒng)上應用。
第三代審計產(chǎn)品給人的總體印象: 性能大幅提升,,已經(jīng)可以滿足很多政企,、教育、醫(yī)療等行業(yè)用戶的海量日志檢索性能需求,。不過,,在更高端的場景下,滿足需求的優(yōu)質(zhì)產(chǎn)品仍然鳳毛麟角,、寥寥無幾,。
第三代數(shù)審總體生存狀況:合規(guī)性用戶暴增,需求性用戶也大幅增加,,有的廠商甚至靠一款優(yōu)秀的數(shù)審產(chǎn)品就能解決生存問題,。
第三代數(shù)審總體評分:●●●●○
第三代數(shù)審廠商數(shù)量:30家左右。
第四代:智能化需求
時間:2017年前后
用戶需求:能否有“今日頭條”款的智能數(shù)審產(chǎn)品
如果從單純做“審計”來說,,第三代數(shù)審系統(tǒng)已經(jīng)基本夠用,,但是,隨著數(shù)據(jù)庫審計逐漸成為保障數(shù)據(jù)安全的“剛需”,,其扮演的角色越來越重要,,加之數(shù)據(jù)資產(chǎn)暴增和數(shù)據(jù)安全事件呈幾何級增長,用戶必然對其提出更高要求,。
用戶需求這幾年間進一步升級:管理的數(shù)據(jù)庫品牌類型能否越來越多,;能否自動識別數(shù)據(jù)庫類型,而非人工指定數(shù)據(jù)庫IP和類型,,因為有的用戶動輒幾百個庫,,上千個庫,實在連自己都不清楚臺賬,;數(shù)據(jù)庫的策略能否給出智能的配置建議,,而非全開全關,難以掌握,;能否做到精準指導,,因為用戶有很多數(shù)據(jù)庫,買了很多數(shù)據(jù)庫審計設備,,但審計的核心目標畢竟是敏感數(shù)據(jù)的行為,,所以希望能夠做到不浪費資源,實現(xiàn)精準指導。
此時,,第三代數(shù)審產(chǎn)品的不足表現(xiàn)為:第一,,對數(shù)據(jù)庫類型的支持非常被動,往往被用戶牽著走,;第二,,欠缺自動化識別數(shù)據(jù)庫類型的能力,眾多數(shù)據(jù)庫需要一一指定IP和數(shù)據(jù)庫類型,,非但不準確還易手工出錯,、不是累死客戶就是累死廠商自己;第三,,缺少通過基線學習智能地給用戶推送策略的能力,;第四,沒有真正與敏感數(shù)據(jù)的定位相結(jié)合,。
2017年,,第四代數(shù)審系統(tǒng)逐漸開始研發(fā),主攻“智能發(fā)現(xiàn)”,、“主動推送”等智能技術方向,。第四代數(shù)審產(chǎn)品通過機器自學,聚類訪問來源,、操作行為特征、資產(chǎn)信息,,全面掌握每個數(shù)據(jù)庫被訪問的基礎情況,,有效建立基線,形成高密度可信邊界,。當訪問來源發(fā)生變化或訪問來源的操作行為發(fā)生變化時,,自動伸縮基線,同時輔以通用型的輕量級策略,,輕松建立防護圈,。人工參與極大降低,安全策略可落地,。
核心功能如下:
資產(chǎn)梳理:深入梳理網(wǎng)絡中的數(shù)據(jù)資產(chǎn),,形成數(shù)據(jù)臺賬;
分級打標:導入分級策略,,對梳理出的數(shù)據(jù)進行分級打標,;
主動推送:通過對數(shù)據(jù)位置、數(shù)據(jù)級別及數(shù)據(jù)流動等信息的掌握,,自動分析風險并主動推送防護策略建議,,降低使用難度,提高安全效果;
智能發(fā)現(xiàn):持續(xù)監(jiān)視數(shù)據(jù)庫結(jié)構(gòu)變化,,與安全防護策略形成聯(lián)動調(diào)整,,一旦防護目標出現(xiàn)結(jié)構(gòu)變化,防護策略會跟隨變化,,確保防護的針對性及防護效果始終處于正確基線,。
第四代審計產(chǎn)品給人的總體印象: 聰明、智能,,由原來的體力活,,變成真正高科技。
第四代數(shù)審總體生存狀況:生存體面,,需求性用戶面前贏得尊重,,且量大價高。
第四代數(shù)審總體評分:●●●●,?
第四代數(shù)審廠商數(shù)量:10家左右,。
未來的路
數(shù)據(jù)庫審計或?qū)⒊蔀閿?shù)據(jù)安全的神經(jīng)網(wǎng)絡觸點
技術的發(fā)展是無止境的,對安全的需求也沒有盡頭,。只要威脅在演變,,技術在革新,防御手段就需要不斷進化以至平衡,。近年來,,越來越多的用戶已經(jīng)不僅僅滿足于對執(zhí)行操作的精準審計,還要對結(jié)果集數(shù)據(jù)進行保存用于日后取證追溯等,。
也許不久之后,,第四代數(shù)審產(chǎn)品,除了自身要具備高智能,、高性能的氣質(zhì)之外,,還可能成為數(shù)據(jù)安全集中管控和安全大數(shù)據(jù)分析的神經(jīng)網(wǎng)絡觸點,所有安全防護核心能力交由平臺型產(chǎn)品進行統(tǒng)一調(diào)度,、防御和分析,,而數(shù)據(jù)庫審計作為數(shù)據(jù)和行為的采集端,形成“樹”和“根”的強關聯(lián)結(jié)構(gòu),。
此時審計將不再是獨立系統(tǒng),,不再獨立工作,而是為平臺提供數(shù)據(jù)的輸入,。這樣更能與KAFkA,、FLUME、ELK等先進的大數(shù)據(jù)分析和流式處理等分析技術結(jié)合,,真正解決超大數(shù)據(jù)規(guī)模日志的利用問題,,這可能也是未來數(shù)據(jù)安全的發(fā)展方向之一,,我們拭目以待。