近年來,作為高效而直接的數(shù)據(jù)庫防御工事,數(shù)據(jù)庫防火墻已被越來越多的用戶關(guān)注,應(yīng)用在關(guān)鍵系統(tǒng)的數(shù)據(jù)庫安全防護中,以保護核心數(shù)據(jù)資產(chǎn)安全。實現(xiàn)危險行為過濾,數(shù)據(jù)庫防火墻必需串聯(lián)部署,才能形成數(shù)據(jù)庫的安全屏障。這要求其既要發(fā)揮抵御威脅行為的功能,同時又不能影響正常的應(yīng)用訪問,造成業(yè)務(wù)中斷。
有人說:數(shù)據(jù)庫防火墻風險大,一不小心你的應(yīng)用就癱瘓了!真是這樣嗎?
事實上,滿足如此嚴苛要求的關(guān)鍵在于如何實現(xiàn)精準的應(yīng)用關(guān)聯(lián)防護,能夠在不中斷業(yè)務(wù)訪問的基礎(chǔ)上,精準定位威脅行為并攔截,從而達到精確而無副作用的防護效果,這也成為一款數(shù)據(jù)庫防火墻產(chǎn)品是否成熟可用的必要條件。
語句攔截—奠定應(yīng)用防護的基礎(chǔ)
通常來講,數(shù)據(jù)庫防火墻可以通過兩種方式實現(xiàn)威脅防御:中斷會話和語句攔截。
中斷會話
直接切斷應(yīng)用與數(shù)據(jù)庫的會話連接,這種方式粗暴簡單,也最易實現(xiàn)。這種防護方式也是很多不成熟的數(shù)據(jù)庫防火墻產(chǎn)品所提供的解決方案。我們知道數(shù)據(jù)庫的訪問行為,來自DBA等運維人員及應(yīng)用系統(tǒng)的訪問調(diào)用,這其中應(yīng)用系統(tǒng)的訪問更為頻繁,對于業(yè)務(wù)連續(xù)性的要求也最高,中斷會話等于業(yè)務(wù)癱瘓,顯然不可取。
語句攔截
攔截語句的方式是指在保持原有會話暢通的基礎(chǔ)上,精準攔截威脅語句。既不破壞業(yè)務(wù)連續(xù)性,又能將風險語句過濾下來。這考驗數(shù)據(jù)庫防火墻對SQL語句的精準解析、風險策略的靈活和適用性,也是實現(xiàn)數(shù)據(jù)庫應(yīng)用關(guān)聯(lián)防護的基礎(chǔ)所在。
應(yīng)用關(guān)聯(lián)審計——準確定位應(yīng)用訪問信息
接觸過數(shù)據(jù)庫審計產(chǎn)品的朋友應(yīng)該知道,“三層關(guān)聯(lián)審計”功能在不少數(shù)據(jù)庫審計產(chǎn)品中已經(jīng)實現(xiàn),即通過“時間戳”等方式從數(shù)據(jù)庫訪問信息中捕獲應(yīng)用賬號、IP等應(yīng)用關(guān)聯(lián)信息,但眾所周知,“時間戳”的方式在功能上具有極大的缺陷——關(guān)聯(lián)審計信息并不準確,即使是在旁路審計上應(yīng)用,也已經(jīng)廣受詬病,更何況串接部署的數(shù)據(jù)庫防火墻。一旦解析錯誤,將造成正常語句被攔截, 嚴重影響業(yè)務(wù)運轉(zhuǎn)。
因此,安華金和在國內(nèi)首先提出基于“應(yīng)用插件”實現(xiàn)“應(yīng)用關(guān)聯(lián)審計”的理念,目前也在行業(yè)內(nèi)得到更廣泛的應(yīng)用。這種解析方式,是以一個簡易的jar包集成到應(yīng)用系統(tǒng),從而完成部署,在并發(fā)達到上千級別的連接是,仍然能實現(xiàn)100%準確關(guān)聯(lián),以精確的方式捕獲到應(yīng)用端相關(guān)信息。同時,這種解析能力需要具備高適用性,除了適用于Weblogic、tomcat、Websphere、Jboss等主流的應(yīng)用服務(wù)器,也能支持F5等負載均衡模式下針對代理IP的關(guān)聯(lián)審計挖掘,準確定位應(yīng)用訪問信息。
具備保持會話前提下的語句攔截功能,并能提供精準應(yīng)用關(guān)聯(lián)能力,如此看來,實現(xiàn)數(shù)據(jù)庫的應(yīng)用關(guān)聯(lián)防護已經(jīng)具備非常堅實的基礎(chǔ)。最后一步,基于多維度匹配靈活的安全策略,是實現(xiàn)應(yīng)用關(guān)聯(lián)防護的最后一錘。
多樣性的策略——實現(xiàn)細粒度行為控制
學習、建立數(shù)據(jù)庫行為模型
應(yīng)用系統(tǒng)的訪問特點是基于固定的業(yè)務(wù)模型執(zhí)行批量的SQl語句,學習應(yīng)用的訪問行為是判斷異常風險語句的關(guān)鍵。數(shù)據(jù)庫防火墻在正式投入串接使用之前,需要旁路部署經(jīng)過一段學習期,大量學習應(yīng)用側(cè)的訪問行為,涵蓋:
客戶端信息(客戶端IP、客戶端工具、主機名、操作系統(tǒng)、登錄的數(shù)據(jù)庫用戶等)
應(yīng)用信息(應(yīng)用賬號、應(yīng)用IP等)
訪問對象信息(數(shù)據(jù)庫實例、表、字段等)
從而建立數(shù)據(jù)庫行為模型,進一步制定全面靈活的安全策略。
高細粒度的安全策略設(shè)定
精細化的安全策略需要具備高細粒度,能夠基于單條策略進行多層次設(shè)定,將應(yīng)用賬號、客戶端IP、SQL語句等進行綁定,實現(xiàn)對應(yīng)用用戶進行訪問行為控制。譬如,客服人員(應(yīng)用賬號)只能基于指定的IP或IP端進行數(shù)據(jù)庫訪問,并且其執(zhí)行的語句僅限于指定的若干語句模板,否則視為風險訪問、違規(guī)操作,會直接被阻斷或被攔截。
數(shù)據(jù)庫防火墻可以針對指定的訪問對象進行行為控制,即針對某一數(shù)據(jù)庫的某表、某字段進行增、刪、改、查的控制。例如,壽險賬單的用戶電話號碼就是以數(shù)據(jù)庫的表字段進行存儲。那么,應(yīng)用關(guān)聯(lián)防護在實現(xiàn)上,可以限制僅某些賬戶(如:業(yè)務(wù)主管)可以進行上述數(shù)據(jù)庫字段的查詢;某些賬戶(如:業(yè)務(wù)經(jīng)理)可以進行上述數(shù)據(jù)的修改。
如果防火墻的防護粒度僅限于“數(shù)據(jù)庫字段”,那么應(yīng)用業(yè)務(wù)中更為深入的控制是否能滿足呢?譬如,業(yè)務(wù)經(jīng)理僅能查詢和自己有關(guān)的用戶電話號碼,即數(shù)據(jù)庫“電話號碼字段”中的部分信息。在數(shù)據(jù)庫防火墻中,組成一條規(guī)則的元素中包括“報文關(guān)鍵字”這一特性,即可以通過配置“正則表達式”匹配SQL語句中的關(guān)鍵字,如果命中即視為風險。例如:select 賬戶,電話號碼 from 業(yè)務(wù)表 where 賬戶=”張三”;防火墻可以作出如下限定:如果關(guān)聯(lián)發(fā)現(xiàn)執(zhí)行該語句的賬戶不是“張三”,那么執(zhí)行該語句時即視為風險語句進行攔截。
同理,數(shù)據(jù)庫防火墻將行為建模中捕獲到的諸多元素,通過多維度的設(shè)置、排列組合即可實現(xiàn)多樣性的防護規(guī)則,適用不同的訪問場景,這如同在數(shù)據(jù)庫前端織就了一張牢不可破的網(wǎng)。
至此,在實現(xiàn)精確語句攔截、應(yīng)用關(guān)聯(lián)審計的前提下,賦予靈活多樣的安全策略,這才造就了一個有深度有內(nèi)涵的數(shù)據(jù)庫防火墻產(chǎn)品。作為安華金和的拳頭產(chǎn)品,它已成熟應(yīng)用于國內(nèi)多個大型數(shù)據(jù)庫安全防護項目中,這些項目的積累也在不斷打磨產(chǎn)品,使其能夠為用戶提供更精細、更具參考性的策略和規(guī)則,實現(xiàn)更準確、高效的數(shù)據(jù)庫安全防護價值。
來源:中國IDC圈
石家莊服務(wù)器托管 石家莊服務(wù)器租用 石家莊機柜租用 石家莊機房