石蒙蒙
【摘要】數(shù)據(jù)庫(kù)防火墻系統(tǒng),是一種基于數(shù)據(jù)庫(kù)協(xié)議分析與控制技術(shù)的數(shù)據(jù)庫(kù)安全防護(hù)系統(tǒng),本文通過(guò)分析歷年的涉及到的數(shù)據(jù)庫(kù)防火墻的專利申請(qǐng)技術(shù),從靜態(tài)防御技術(shù)、動(dòng)態(tài)防御技術(shù)兩個(gè)方面對(duì)數(shù)據(jù)庫(kù)防火墻的專利技術(shù)進(jìn)行統(tǒng)計(jì)分析。
【關(guān)鍵字】DBFirewall 數(shù)據(jù)庫(kù)防火墻 WEB服務(wù)器 SQL注入攻擊
一、引言
數(shù)據(jù)庫(kù)防火墻系統(tǒng),是一種基于數(shù)據(jù)庫(kù)協(xié)議分析與控制技術(shù)的數(shù)據(jù)庫(kù)安全防護(hù)系統(tǒng),其被部署于應(yīng)用服務(wù)器和數(shù)據(jù)庫(kù)之間,是針對(duì)關(guān)系型數(shù)據(jù)庫(kù)保護(hù)需求應(yīng)運(yùn)而生的一種數(shù)據(jù)庫(kù)安全主動(dòng)防御技術(shù),主要應(yīng)用于以數(shù)據(jù)庫(kù)為基礎(chǔ)的經(jīng)濟(jì)、金融、醫(yī)療等領(lǐng)域。
數(shù)據(jù)庫(kù)防火墻本質(zhì)上是一種介于應(yīng)用程序和數(shù)據(jù)庫(kù)之間的代理服務(wù)器,應(yīng)用程序連接到數(shù)據(jù)庫(kù)防火墻并像正常連接到數(shù)據(jù)庫(kù)那樣發(fā)送查詢,數(shù)據(jù)庫(kù)防火墻分析預(yù)期的查詢,如果認(rèn)為是安全的,就將它傳遞給數(shù)據(jù)庫(kù)服務(wù)器加以執(zhí)行,反之,如果認(rèn)為是惡意的,就阻止運(yùn)行該查詢。數(shù)據(jù)庫(kù)防火墻通過(guò)SQL協(xié)議分析,根據(jù)預(yù)定義的禁止和許可策略讓合法的SQL操作通過(guò),阻止非法違規(guī)操作,形成數(shù)據(jù)庫(kù)的外圍防御圈,實(shí)現(xiàn)SQL危險(xiǎn)操作的主動(dòng)預(yù)防、實(shí)時(shí)審計(jì)。
二、數(shù)據(jù)庫(kù)防火墻技術(shù)專利的主要分類與應(yīng)用分析
數(shù)據(jù)庫(kù)防火墻采用網(wǎng)絡(luò)防火墻中的包過(guò)濾技術(shù),主要在過(guò)濾規(guī)則上進(jìn)行改進(jìn)。基于上述規(guī)則策略,數(shù)據(jù)庫(kù)防火墻技術(shù)可以具有以下分支:靜態(tài)防御技術(shù)、動(dòng)態(tài)防御技術(shù),其中對(duì)動(dòng)態(tài)防御技術(shù)進(jìn)行細(xì)分,又主要具有以下分支:基于統(tǒng)計(jì)分析的動(dòng)態(tài)防御技術(shù)、基于語(yǔ)義分析的動(dòng)態(tài)防御技術(shù)。
2.1靜態(tài)防御技術(shù)
數(shù)據(jù)庫(kù)防火墻模型中的簡(jiǎn)單的規(guī)則匹配屬于靜態(tài)防御技術(shù),基于此類規(guī)則的數(shù)據(jù)庫(kù)防火墻模型提供的防護(hù)程度相比網(wǎng)絡(luò)防火墻有所提升,由于靜態(tài)防御技術(shù)屬于數(shù)據(jù)庫(kù)防火墻中的基本防御技術(shù),因此涉及到此方面的專利文獻(xiàn)非常多,例如專利文獻(xiàn)CN101370008A、CN101425937A、CN101448007A、CN102104601A等都是基于規(guī)則匹配的方式進(jìn)行防御。但是基于規(guī)則的配置及使用都極為不便,基于靜態(tài)防御的方法也并不是“智能的”和“動(dòng)態(tài)的”,只能檢測(cè)到允許或者組織特定規(guī)則的數(shù)據(jù)包,因此基于靜態(tài)防御的數(shù)據(jù)庫(kù)防火墻的防護(hù)能力有限。
2.2動(dòng)態(tài)防御技術(shù)
動(dòng)態(tài)防御技術(shù)通過(guò)對(duì)基于規(guī)則匹配的靜態(tài)防御技術(shù)加以改進(jìn),通過(guò)采用經(jīng)驗(yàn)值累加的統(tǒng)計(jì)分析、語(yǔ)義分析等智能分析的技術(shù),對(duì)數(shù)據(jù)庫(kù)防火墻的攻擊進(jìn)行識(shí)別,從而達(dá)到捕獲SQL注入攻擊和提高防火墻防御能力的目的。
2.2.1基于統(tǒng)計(jì)分析的動(dòng)態(tài)防御技術(shù)
基于統(tǒng)計(jì)分析的動(dòng)態(tài)防御技術(shù)中,常見(jiàn)的統(tǒng)計(jì)方式為統(tǒng)計(jì)攻擊行為次數(shù)和攻擊行為的經(jīng)驗(yàn)值。基于經(jīng)驗(yàn)值的行為分析是對(duì)基于規(guī)則匹配的改進(jìn),對(duì)不同的特征指定權(quán)值,對(duì)每一個(gè)操作計(jì)算風(fēng)險(xiǎn)值,即從異常的行為中提取出具有代表性的特征來(lái)作為識(shí)別異常行為的標(biāo)識(shí)。如對(duì)于某一操作分別取出操作主體、操作客體、操作類型以及操作結(jié)果的經(jīng)驗(yàn)值,將四項(xiàng)相乘得到此操作的風(fēng)險(xiǎn)值。
例如,申請(qǐng)人為IBM,公開(kāi)號(hào)為US2008/0172347A1的專利申請(qǐng),其公開(kāi)了一種使用專家系統(tǒng)來(lái)決定是否變更防火墻配置的方法,所述專家系統(tǒng)接受與防火墻相關(guān)的信息包所在的信息流,專家系統(tǒng)預(yù)先定義信息流數(shù)據(jù)的風(fēng)險(xiǎn)值。專家系統(tǒng)使用確定的風(fēng)險(xiǎn)值來(lái)決定與信息包相關(guān)的總的風(fēng)險(xiǎn)值。最后,專家系統(tǒng)產(chǎn)生基于總的風(fēng)險(xiǎn)值的建議措施,如根據(jù)信息流中的規(guī)則集允許或者禁止所述信息流。
2.2.2基于語(yǔ)義分析的動(dòng)態(tài)防御技術(shù)
基于語(yǔ)義分析的動(dòng)態(tài)防御技術(shù)是指通過(guò)進(jìn)行對(duì)攻擊語(yǔ)句語(yǔ)義分析,即通過(guò)進(jìn)一步的拆解SQL語(yǔ)句,分析語(yǔ)句的直接的含義分析得到潛在的SQL攻擊的技術(shù),該技術(shù)可以有效的避免被人精心構(gòu)造的SQL語(yǔ)句對(duì)于數(shù)據(jù)庫(kù)的攻擊。
例如,申請(qǐng)人為北京啟明星辰信息技術(shù)股份有限公司,公開(kāi)號(hào)為CN101901219A的專利申請(qǐng),其公開(kāi)了一種數(shù)據(jù)庫(kù)注入攻擊檢測(cè)方法及系統(tǒng),該方法包括:通過(guò)對(duì)數(shù)據(jù)庫(kù)歷史訪問(wèn)記錄進(jìn)行自學(xué)習(xí),對(duì)所述歷史訪問(wèn)記錄進(jìn)行自學(xué)習(xí)的步驟:設(shè)置所述歷史訪問(wèn)記錄;對(duì)所述歷史訪問(wèn)記錄中的每條記錄進(jìn)行SQL語(yǔ)句解析,提取SQL模板;建立所述訪問(wèn)行為模式庫(kù),接收數(shù)據(jù)庫(kù)實(shí)時(shí)訪問(wèn);根據(jù)訪問(wèn)行為模式庫(kù),判斷實(shí)時(shí)訪問(wèn)是否為注入攻擊,獲得判斷結(jié)果。
三、結(jié)束語(yǔ)
目前所采用的數(shù)據(jù)庫(kù)防火墻技術(shù),基于規(guī)則匹配的靜態(tài)防御技術(shù)是最基本的防御技術(shù),而基于智能分析的動(dòng)態(tài)防御技術(shù)通過(guò)基于經(jīng)驗(yàn)值分析和語(yǔ)義分析等方式,通過(guò)對(duì)數(shù)據(jù)庫(kù)防火墻的攻擊語(yǔ)句加以識(shí)別和分析,從而達(dá)到捕獲SQL注入攻擊的目的。在大數(shù)據(jù)時(shí)代的今天,具有由靜態(tài)防御技術(shù)發(fā)展到動(dòng)態(tài)防御技術(shù)的趨勢(shì),動(dòng)態(tài)防御技術(shù)仍然有很大的發(fā)展空間。