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