国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)路徑探析

2021-01-23 05:10李紅麗
關(guān)鍵詞:數(shù)據(jù)包排序規(guī)則

李紅麗

(陽(yáng)泉師范高等專科學(xué)校,山西 陽(yáng)泉 045200)

數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)(簡(jiǎn)稱DBAudit System),作為數(shù)據(jù)庫(kù)的安全技術(shù)之一,可以實(shí)時(shí)記錄在線的數(shù)據(jù)庫(kù)的各種活動(dòng),對(duì)數(shù)據(jù)庫(kù)遭受到非正常操作行為和風(fēng)險(xiǎn)實(shí)時(shí)告警,對(duì)正在對(duì)其發(fā)起的攻擊行為阻斷處理。數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)對(duì)用戶訪問(wèn)數(shù)據(jù)庫(kù)行為進(jìn)行記錄、統(tǒng)計(jì)和研究,為用戶生成相關(guān)事故報(bào)告,可以對(duì)事故進(jìn)行追根溯源,同時(shí)還加強(qiáng)了數(shù)據(jù)庫(kù)內(nèi)部和外部網(wǎng)絡(luò)行為的記錄和存儲(chǔ),有效保障了數(shù)據(jù)資產(chǎn)安全。

一、研究背景

1980年,James P.Anderson在由其撰寫(xiě)的題名為《計(jì)算機(jī)風(fēng)險(xiǎn)監(jiān)控》的技術(shù)報(bào)告中提出了數(shù)據(jù)庫(kù)審計(jì)的概念和理論,James指出當(dāng)時(shí)所有的數(shù)據(jù)庫(kù)系統(tǒng)存在的兩種風(fēng)險(xiǎn):系統(tǒng)外部的入侵和來(lái)自數(shù)據(jù)庫(kù)系統(tǒng)內(nèi)人員的異常操作舉動(dòng)?;谶@兩種風(fēng)險(xiǎn),他指出可以通過(guò)對(duì)數(shù)據(jù)庫(kù)系統(tǒng)施行安全審計(jì),監(jiān)測(cè)各種異常操作行為,以此來(lái)保證數(shù)據(jù)庫(kù)的安全性和可靠性。

國(guó)際安全評(píng)價(jià)標(biāo)準(zhǔn)為T(mén)CSEC和CC,我國(guó)的計(jì)算機(jī)系統(tǒng)安全標(biāo)準(zhǔn)為《計(jì)算機(jī)信息系統(tǒng)安全保護(hù)等級(jí)劃分規(guī)則》,這些國(guó)內(nèi)外標(biāo)準(zhǔn)都對(duì)安全審計(jì)功能作出了相應(yīng)的規(guī)定[1]。根據(jù)國(guó)內(nèi)外標(biāo)準(zhǔn),本文認(rèn)為數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)應(yīng)達(dá)到以下目標(biāo):1.能準(zhǔn)確記錄對(duì)數(shù)據(jù)庫(kù)訪問(wèn)行為的相關(guān)數(shù)據(jù),并能隨時(shí)查詢數(shù)據(jù)庫(kù)安全保護(hù)結(jié)果數(shù)據(jù);2.在發(fā)現(xiàn)超越數(shù)據(jù)庫(kù)規(guī)定權(quán)限的用戶對(duì)數(shù)據(jù)庫(kù)實(shí)施越權(quán)行為的時(shí)候,能實(shí)施準(zhǔn)確及時(shí)的定位,并采取相關(guān)措施來(lái)處理;3.可以發(fā)現(xiàn)和排除數(shù)據(jù)庫(kù)系統(tǒng)存在的安全漏洞;4.在發(fā)生了越過(guò)系統(tǒng)安全保護(hù)系統(tǒng)的行為時(shí),可以記錄并留存證據(jù);5.當(dāng)數(shù)據(jù)庫(kù)系統(tǒng)受到破壞,可以進(jìn)行損失評(píng)估和系統(tǒng)恢復(fù)。

二、研究現(xiàn)狀

目前,國(guó)外非常有名的數(shù)據(jù)庫(kù)安全審計(jì)產(chǎn)品主要有下面幾種:Application Security Inc公司的入侵檢測(cè)系統(tǒng)-AppRadar、Imperva公司的安全審計(jì)系統(tǒng)-SecureSphere和美國(guó)IBM公司的數(shù)據(jù)庫(kù)安全審計(jì)系統(tǒng)-Guardium等系統(tǒng)[2]。上述系統(tǒng)的功能都很強(qiáng)大,包含內(nèi)容覆蓋面廣。其中,AppRadar系統(tǒng)就可以針對(duì)不同種類的數(shù)據(jù)庫(kù)系統(tǒng)而設(shè)計(jì)出不同的數(shù)據(jù)庫(kù)入侵檢測(cè)系統(tǒng);Imperva公司在數(shù)據(jù)庫(kù)安全審計(jì)行業(yè)內(nèi)屬于元老,在數(shù)據(jù)庫(kù)安全審計(jì)領(lǐng)域尤其精通,其SecureSphere系統(tǒng)功能優(yōu)于同類產(chǎn)品;該系統(tǒng)應(yīng)用數(shù)據(jù)庫(kù)防火墻的思路,能夠在線處理數(shù)據(jù)庫(kù)的安全威脅,但SecureSphere支持的數(shù)據(jù)庫(kù)相關(guān)協(xié)議較少,同時(shí)對(duì)數(shù)據(jù)庫(kù)的本地訪問(wèn)支持力度不足,因此限制了其發(fā)展規(guī)模。Guardium系統(tǒng)通過(guò)使用代理服務(wù)器,還可以通過(guò)在服務(wù)器上安裝數(shù)據(jù)引擎,設(shè)置旁路監(jiān)聽(tīng),能夠?qū)崟r(shí)分析和判斷用戶的數(shù)據(jù)庫(kù)操作行為是否合規(guī),但該系統(tǒng)缺乏靈活度,只能夠在同一時(shí)間支持一個(gè)審計(jì)策略,因而用戶數(shù)量發(fā)展緩慢。上述國(guó)外這些數(shù)據(jù)庫(kù)審計(jì)類系統(tǒng)產(chǎn)品都是按照國(guó)外公司的使用要求而設(shè)的,系統(tǒng)價(jià)格相當(dāng)昂貴,對(duì)于絕大多數(shù)國(guó)內(nèi)企業(yè)用戶來(lái)說(shuō),實(shí)際使用價(jià)值并不高。

國(guó)內(nèi)數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)中的佼佼者有綠盟的DAS、安恒信息的明御系列數(shù)據(jù)庫(kù)安全審計(jì)系統(tǒng)、天融信的Top Audit-DB和深圳昂楷的AAS等。其中綠盟的DAS通過(guò)監(jiān)聽(tīng)網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的操作活動(dòng)和數(shù)據(jù)包,智能識(shí)別SQL語(yǔ)句類別,可以實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)操作記錄進(jìn)行事后的整理和合法性分析;安恒的明御系列系統(tǒng)主要是通過(guò)采集Web業(yè)務(wù)前端和訪問(wèn)后端數(shù)據(jù)庫(kù)的協(xié)議,能達(dá)到數(shù)據(jù)的雙向?qū)徲?jì);天融信的TopAudit-DB則是使用了云審計(jì)技術(shù),對(duì)數(shù)據(jù)庫(kù)服務(wù)器旁路監(jiān)測(cè),以及支持?jǐn)?shù)據(jù)庫(kù)三層關(guān)聯(lián)審計(jì)[3]。

當(dāng)下數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)領(lǐng)域的研究熱點(diǎn)主要有:1.如何實(shí)現(xiàn)數(shù)據(jù)的雙向?qū)徲?jì)和實(shí)現(xiàn)對(duì)查詢結(jié)果的分析總結(jié);2.審計(jì)數(shù)據(jù)存儲(chǔ)的安全性問(wèn)題,避免審計(jì)記錄被破壞、修改;3.實(shí)現(xiàn)審計(jì)數(shù)據(jù)的壓縮,同時(shí)得到對(duì)安全管理實(shí)用的信息;4.如何避免超常SQL語(yǔ)句的漏審;5.滿足客戶網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)需要的同時(shí)實(shí)現(xiàn)數(shù)據(jù)庫(kù)安全審計(jì);6.如何實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)操作多語(yǔ)句進(jìn)行有效的切割和分類,對(duì)長(zhǎng)會(huì)話的實(shí)時(shí)記錄和審計(jì);7.如何才能實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)海量數(shù)據(jù)的分析、記錄、查詢和審計(jì);8.實(shí)時(shí)數(shù)據(jù)庫(kù)安全審計(jì)警告策略的設(shè)計(jì)[4]。

三、系統(tǒng)設(shè)計(jì)

本文的數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)的設(shè)計(jì)思路是首先要在網(wǎng)絡(luò)的主要交換機(jī)上通過(guò)監(jiān)測(cè)的方式取得對(duì)數(shù)據(jù)庫(kù)服務(wù)器的監(jiān)測(cè)數(shù)據(jù),然后再根據(jù)基本的網(wǎng)絡(luò)協(xié)議對(duì)其進(jìn)行全段解析,根據(jù)生成的數(shù)據(jù)庫(kù)審計(jì)規(guī)則對(duì)數(shù)據(jù)解析結(jié)果進(jìn)行審計(jì)策略的相關(guān)匹配,以此來(lái)完成審計(jì)工作。旁路監(jiān)測(cè)方式靈活多變,可以不改變?cè)W(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),該方式同時(shí)具有較強(qiáng)的系統(tǒng)容錯(cuò)性,這使得數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)不會(huì)因?yàn)樽陨戆l(fā)生問(wèn)題時(shí)而影響到數(shù)據(jù)庫(kù)的各項(xiàng)正常業(yè)務(wù)。

(一)系統(tǒng)總體架構(gòu)設(shè)計(jì)

數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)總體設(shè)計(jì)結(jié)構(gòu)圖如圖1所示。

本系統(tǒng)的主要模塊的功能概要介紹如下:

1.數(shù)據(jù)采集和重組模塊:該模塊主要實(shí)現(xiàn)數(shù)據(jù)采集的硬件參數(shù)的設(shè)置,涵蓋了主交換機(jī)的設(shè)置;在數(shù)據(jù)重組時(shí),對(duì)采集的順序錯(cuò)亂的數(shù)據(jù)包重組分類和整理為可靠數(shù)據(jù)包。

2.協(xié)議解析模塊:該模塊采用TCP/IP通信協(xié)議對(duì)采集和重組模塊得到的可靠數(shù)據(jù)包進(jìn)行解析工作。

圖1 數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)總體設(shè)計(jì)結(jié)構(gòu)圖

3.規(guī)則生成模塊:該模塊用于匯總和統(tǒng)計(jì)解析出的數(shù)據(jù),之后按相應(yīng)的規(guī)則生成算法進(jìn)行處理,為數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)自動(dòng)生成審計(jì)規(guī)則。

4.策略匹配模塊:該模塊主要是將解析的數(shù)據(jù)和生成好的審計(jì)規(guī)則相匹配,并且記錄匹配成功的數(shù)據(jù),為報(bào)警工作提供支持。

(二)系統(tǒng)功能設(shè)計(jì)

1.數(shù)據(jù)采集和重組功能設(shè)計(jì)

系統(tǒng)將主機(jī)網(wǎng)卡設(shè)置為混雜模式,采集交換機(jī)鏡像傳輸過(guò)來(lái)的數(shù)據(jù),然后在鏈路層通過(guò)鏡像拷貝,把鏡像拷貝的數(shù)據(jù)存至數(shù)據(jù)的緩存,由其他的應(yīng)用函數(shù)來(lái)使用。

網(wǎng)絡(luò)數(shù)據(jù)包為分層封裝,根據(jù)TCP/IP協(xié)議規(guī)定,IP(網(wǎng)絡(luò)層)主要作用是將網(wǎng)絡(luò)數(shù)據(jù)包傳至目標(biāo)Host,卻沒(méi)法保證其數(shù)據(jù)的可靠。TCP(傳輸層)的作用是將數(shù)據(jù)傳至主機(jī)應(yīng)用程序,同時(shí)還能保證數(shù)據(jù)的順序不亂,保證了傳輸數(shù)據(jù)的可靠性[5]。由于數(shù)據(jù)采集模塊得到的數(shù)據(jù)包是多來(lái)源地址、多目的地址和亂序的,為供給目標(biāo)主機(jī)上層應(yīng)用程序使用,需要對(duì)數(shù)據(jù)包進(jìn)行數(shù)據(jù)重組工作。

重組模塊先要對(duì)采集到的數(shù)據(jù)包中的數(shù)據(jù)進(jìn)行提取,這些數(shù)據(jù)的內(nèi)容有包括IP(網(wǎng)絡(luò)層)層第一段報(bào)文中的源頭主機(jī)的IP地址、目的地址和TCP(傳輸層)層第一段報(bào)文中的源頭端口和目的端口。數(shù)據(jù)重組模塊對(duì)提取的內(nèi)容以一定的方式進(jìn)行處理,完成對(duì)各個(gè)種類的數(shù)據(jù)包的識(shí)別和分類工作。在對(duì)數(shù)據(jù)進(jìn)行分類處理后,可以從這些數(shù)據(jù)包中提取出網(wǎng)絡(luò)層頭部報(bào)文的長(zhǎng)度、總的數(shù)據(jù)包長(zhǎng)度、通信協(xié)議版本、確認(rèn)號(hào)和標(biāo)志位等主要內(nèi)容,并通過(guò)獲取到的內(nèi)容來(lái)完成數(shù)據(jù)排序。本文比較了幾種經(jīng)常使用的數(shù)據(jù)查找方法,如二分查找法,順序查找法、樹(shù)表查找法和Hash Table查找法等方法,最后決定使用查找效率更高的Hash Table查找法來(lái)處理數(shù)據(jù)流到相應(yīng)連接的映射。

2.協(xié)議解析功能設(shè)計(jì)

服務(wù)器登錄的響應(yīng)數(shù)據(jù)包的信息內(nèi)容包括包首信息和負(fù)載信息。包首信息為T(mén)oken字段(響應(yīng)包的類型)、Status字段(Tds會(huì)話的最后一個(gè)包)、Length字段(Tds包的長(zhǎng)度為353個(gè)字節(jié))、Signednum字段(信道數(shù)為0)、Acketnum字段(只有一個(gè)包響應(yīng))和Windowsize字段(發(fā)送端接收的數(shù)據(jù)量上限)。負(fù)載信息為數(shù)據(jù)包除包首信息外的剩余字節(jié)內(nèi)容,其中E3標(biāo)志的含義為環(huán)境變量改變,AD標(biāo)志的含義是服務(wù)器返回的信息,F(xiàn)D是服務(wù)器返回信息的結(jié)束標(biāo)志[6]。

研究表明:系統(tǒng)要根據(jù)客戶端主機(jī)傳出的數(shù)據(jù)包的類型信息,首先要識(shí)別服務(wù)器端主機(jī)在信息反饋回來(lái)時(shí)用的通信協(xié)議是什么類型,然后再根據(jù)該通信協(xié)議的類型完成數(shù)據(jù)內(nèi)容的分析處理,以此得到反饋回來(lái)的數(shù)據(jù)的確切信息內(nèi)容。

3.規(guī)則自動(dòng)生成設(shè)計(jì)

審計(jì)規(guī)則自動(dòng)生成模塊是指統(tǒng)計(jì)數(shù)據(jù)庫(kù)訪問(wèn)人員對(duì)數(shù)據(jù)庫(kù)的各種操作,并對(duì)這些操作實(shí)施一定的分析,分析完成后對(duì)規(guī)則進(jìn)行生成。本文采用數(shù)理統(tǒng)計(jì)分析法來(lái)進(jìn)行審計(jì)規(guī)則生成模塊的設(shè)計(jì)。規(guī)則生成需要完成兩部分內(nèi)容設(shè)計(jì),分別為數(shù)據(jù)統(tǒng)計(jì)分析方法設(shè)計(jì)和規(guī)則生成方法設(shè)計(jì)。

(1)數(shù)據(jù)統(tǒng)計(jì)分析方法

根據(jù)審計(jì)規(guī)則,系統(tǒng)中所需進(jìn)行統(tǒng)計(jì)的項(xiàng)目包括源頭地址、目標(biāo)數(shù)據(jù)庫(kù)和對(duì)數(shù)據(jù)庫(kù)進(jìn)行的操作這三項(xiàng),其中,源頭地址指的是被審計(jì)操作內(nèi)容的源頭IP,目標(biāo)數(shù)據(jù)庫(kù)為目標(biāo)服務(wù)器IP和其數(shù)據(jù)庫(kù)的端口組合,對(duì)數(shù)據(jù)庫(kù)的操作則是從數(shù)據(jù)解析里獲得的數(shù)據(jù)庫(kù)操作行為。

統(tǒng)計(jì)分析內(nèi)容主要為源IP對(duì)目的數(shù)據(jù)庫(kù)操作的次數(shù)統(tǒng)計(jì)。由于目前網(wǎng)絡(luò)均為高速模式,本系統(tǒng)設(shè)計(jì)包含了高速網(wǎng)絡(luò)下數(shù)據(jù)內(nèi)容的解析,因此要能設(shè)計(jì)出可以匹配高速查找數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)以便完成節(jié)點(diǎn)查找和數(shù)據(jù)更新任務(wù)。經(jīng)對(duì)比研究,本系統(tǒng)采用哈希表法實(shí)現(xiàn)對(duì)來(lái)源主機(jī)IP地址的存查工作。目的數(shù)據(jù)庫(kù)實(shí)際情況是要預(yù)先在系統(tǒng)中設(shè)置好各項(xiàng)參數(shù),并且其數(shù)目較少。本文采用二叉平衡樹(shù)方法完成對(duì)服務(wù)器數(shù)據(jù)庫(kù)信息的存查工作。

(2)規(guī)則生成方法設(shè)計(jì)

審計(jì)規(guī)則生成實(shí)現(xiàn)方法的設(shè)計(jì)分三步進(jìn)行,第一步為對(duì)計(jì)算結(jié)果分析和排序,第二步為對(duì)排序結(jié)果進(jìn)行映射,最后一步是將映射后的所有結(jié)果進(jìn)行遍歷,分析得出審計(jì)規(guī)則,并將規(guī)則讀取到數(shù)據(jù)庫(kù),為審計(jì)工作提供規(guī)則支撐。以下為各步驟的詳細(xì)分析:

分析結(jié)果排序:指的是對(duì)任一來(lái)源IP主機(jī)對(duì)數(shù)據(jù)庫(kù)的操作的分析結(jié)果排序。排序方法為插入排序,該方法把任一分析結(jié)果存至有指針的數(shù)據(jù)鏈表中,然后通過(guò)遍歷鏈表結(jié)構(gòu)找到相對(duì)應(yīng)的位置,執(zhí)行插入,根據(jù)權(quán)重的大小進(jìn)行排序,最后獲得排序完成的鏈表。

排序結(jié)果映射:指的是把上一步處理得到的鏈表依據(jù)其源頭主機(jī)IP映射到相對(duì)應(yīng)位置的節(jié)點(diǎn)里,然后根據(jù)權(quán)重排序比較該節(jié)點(diǎn)是否在可信任參數(shù)的賦值范圍內(nèi),并分別取對(duì)應(yīng)操作的數(shù)值。系統(tǒng)設(shè)置的高風(fēng)險(xiǎn)的數(shù)值為0,低風(fēng)險(xiǎn)數(shù)值為1,信任數(shù)值為2。

遍歷映射結(jié)果:這一步指的是以順序排序的方式對(duì)系統(tǒng)里的源頭節(jié)點(diǎn)進(jìn)行統(tǒng)一遍歷,然后分別統(tǒng)計(jì)出每一個(gè)節(jié)點(diǎn)里面和所有操作對(duì)應(yīng)的數(shù)值內(nèi)容。把數(shù)值完全相同的對(duì)應(yīng)操作合為一起,便能生成源主機(jī)IP與對(duì)應(yīng)的數(shù)據(jù)庫(kù)相關(guān)操作類型規(guī)則。生成完成后便把這些規(guī)則依次存入數(shù)據(jù)庫(kù)中,并對(duì)解析模塊發(fā)出重新讀取指令,指令執(zhí)行完成后便可把規(guī)則應(yīng)用至審計(jì)系統(tǒng)。

4.匹配策略設(shè)計(jì)

合理的策略設(shè)置對(duì)于審計(jì)系統(tǒng)而言甚為重要。系統(tǒng)通過(guò)比較預(yù)先設(shè)置的策略與采集重組后的包內(nèi)容來(lái)進(jìn)行策略匹配。當(dāng)系統(tǒng)發(fā)現(xiàn)與策略完全匹配的內(nèi)容時(shí)先記錄,同時(shí)發(fā)出報(bào)警信息。

數(shù)據(jù)庫(kù)審計(jì)策略由多個(gè)審計(jì)規(guī)則組成,每個(gè)規(guī)則內(nèi)容包含了規(guī)則的名稱、規(guī)則的狀態(tài)、風(fēng)險(xiǎn)等級(jí)、動(dòng)作、規(guī)則相關(guān)描述和觸發(fā)條件等。具體的審計(jì)策略包括:審計(jì)數(shù)據(jù)變更、審計(jì)數(shù)據(jù)庫(kù)訪問(wèn)、審計(jì)違規(guī)訪問(wèn)行為、審計(jì)操作過(guò)程和審計(jì)惡意攻擊等[6]。

(1)審計(jì)數(shù)據(jù)變更:真實(shí)記錄所有人員對(duì)庫(kù)里重要的表和關(guān)鍵的數(shù)據(jù)文件的增、刪和改等行為并進(jìn)行審計(jì),防止內(nèi)外部人員對(duì)重大數(shù)據(jù)的不法改動(dòng)。

(2)審計(jì)數(shù)據(jù)庫(kù)訪問(wèn):記錄人員對(duì)數(shù)據(jù)庫(kù)中重要數(shù)據(jù)和表的訪問(wèn)情況,實(shí)時(shí)監(jiān)控外部侵入和內(nèi)部人員通過(guò)非法授權(quán)而獲取系統(tǒng)敏感數(shù)據(jù)的情況并及時(shí)發(fā)出警報(bào)。

(3)審計(jì)違規(guī)訪問(wèn)行為:通過(guò)提前設(shè)置數(shù)據(jù)庫(kù)訪問(wèn)合法規(guī)則,對(duì)處于合法規(guī)則外的訪問(wèn)行為采取重點(diǎn)記錄和發(fā)出報(bào)警信息,以此審計(jì)和記錄用戶違規(guī)訪問(wèn)數(shù)據(jù)庫(kù)行為。

(4)審計(jì)操作過(guò)程:對(duì)用戶登錄數(shù)據(jù)庫(kù)后對(duì)庫(kù)的操作行為進(jìn)行全程記錄,并且也對(duì)用戶訪問(wèn)和操作審計(jì)系統(tǒng)的行為和信息進(jìn)行記錄,對(duì)用戶不合規(guī)操作的行為進(jìn)行追溯。

(5)審計(jì)蓄意攻擊:對(duì)各種蓄意攻擊數(shù)據(jù)庫(kù)系統(tǒng)的行為進(jìn)行記錄和實(shí)時(shí)發(fā)出警報(bào),比如利用系統(tǒng)和數(shù)據(jù)庫(kù)的漏洞進(jìn)行入侵、對(duì)主機(jī)非法掃描和ARP欺騙攻擊等。

系統(tǒng)將每個(gè)數(shù)據(jù)庫(kù)對(duì)象所使用的審計(jì)策略根據(jù)審計(jì)規(guī)則所設(shè)置的優(yōu)先順序施行不間斷的匹配,直至匹配到某個(gè)規(guī)則或者都未匹配成功。當(dāng)數(shù)據(jù)庫(kù)對(duì)象審計(jì)策略和任一個(gè)規(guī)則相匹配時(shí),則認(rèn)定該策略成功匹配,匹配程序中止,進(jìn)行下一步操作。

審計(jì)規(guī)則自動(dòng)生成方法首先要對(duì)操作人員的行為進(jìn)行建立模型,之后把訪問(wèn)人員對(duì)庫(kù)執(zhí)行的全部操作和該模型相互比較,并把比較后的內(nèi)容匹配與否作為下一步審計(jì)的執(zhí)行依據(jù)。自動(dòng)方法功能全面,覆蓋面廣。人工方法很大程度上依靠于數(shù)據(jù)庫(kù)專家在該領(lǐng)域的管理和運(yùn)維的知識(shí)和經(jīng)驗(yàn)對(duì)各項(xiàng)規(guī)則進(jìn)行配置,有很強(qiáng)的針對(duì)性。本系統(tǒng)使用了自動(dòng)生成方法和人工配置方法結(jié)合的辦法,先把人工配置的規(guī)則的優(yōu)先級(jí)設(shè)為高級(jí)別,再把自動(dòng)生成的規(guī)則的優(yōu)先級(jí)設(shè)為低級(jí)別,然后根據(jù)規(guī)則由高到低匹配的順序原則,先匹配人工配置的規(guī)則,再匹配自動(dòng)生成的規(guī)則,使得審計(jì)結(jié)果既有針對(duì)性,又有全面性。

四、系統(tǒng)實(shí)現(xiàn)方法探析

(一)數(shù)據(jù)采集和重組功能實(shí)現(xiàn)

為確保數(shù)據(jù)包在傳輸過(guò)程中不會(huì)漏掉,系統(tǒng)把網(wǎng)卡的模式修改為混合方式,然后使用Libpcap函數(shù)庫(kù)提供的API接口實(shí)現(xiàn)對(duì)數(shù)據(jù)的抓包工作,之后對(duì)得到的數(shù)據(jù)包排序處理,可以實(shí)現(xiàn)數(shù)據(jù)流的重組。數(shù)據(jù)重組流程圖如圖2所示。

圖2 數(shù)據(jù)重組流程圖

由圖2可見(jiàn),數(shù)據(jù)重組的基礎(chǔ)是數(shù)據(jù)采集。具體工作流程為:程序開(kāi)始啟動(dòng)抓包程序,把復(fù)制捕獲到的數(shù)據(jù)添加至NET_BUF中,并完成對(duì)TCP/IP數(shù)據(jù)的獲取,通過(guò)對(duì)TCP/IP數(shù)據(jù)進(jìn)行哈希算法運(yùn)算后,判別哈希表中是否有著對(duì)應(yīng)的數(shù)據(jù)連接TCP_N。若有,就按照TCP_N里的狀態(tài)標(biāo)志位數(shù)值來(lái)對(duì)這個(gè)TCP_N的連接狀態(tài)進(jìn)行更新,并把數(shù)據(jù)填充到TCP_PACK上,之后插入至等待隊(duì)列里,接著判別新來(lái)數(shù)據(jù)是不是等待要獲取數(shù)據(jù),滿足相等條件則流程結(jié)束;要是沒(méi)有相應(yīng)的連接,就判別TCP的狀態(tài)是不是SYN,在是SYN的情況下就把這個(gè)連接節(jié)點(diǎn)建立起來(lái),確定服務(wù)器IP,并加載相應(yīng)規(guī)則,更新等待數(shù)據(jù),否則不進(jìn)行下一步處理,流程結(jié)束。調(diào)用的庫(kù)函數(shù)說(shuō)明如表1所示。

表1 調(diào)用庫(kù)函數(shù)說(shuō)明

(二)匹配策略功能實(shí)現(xiàn)

在對(duì)審計(jì)規(guī)則進(jìn)行適配時(shí),本文把相關(guān)的時(shí)間、內(nèi)容和源頭等規(guī)則的相互關(guān)系設(shè)置為與的關(guān)系,同時(shí),把內(nèi)容規(guī)則的優(yōu)先順序設(shè)置為最高級(jí)別,把時(shí)間規(guī)則的優(yōu)先順序設(shè)置成中級(jí),把來(lái)源規(guī)則的優(yōu)先順序設(shè)置成最低級(jí)別。匹配流程則是按照審計(jì)的先后順序由高至低來(lái)匹配的原則處理的,首先是對(duì)源頭進(jìn)行的匹配,其次是對(duì)時(shí)間的匹配,最后才是對(duì)內(nèi)容進(jìn)行的匹配。當(dāng)匹配結(jié)果為三個(gè)都同時(shí)匹配成功后,系統(tǒng)中止匹配流程,并將匹配成功的數(shù)據(jù)存入數(shù)據(jù)庫(kù)里,不然系統(tǒng)會(huì)繼續(xù)執(zhí)行匹配流程,執(zhí)行至最后一個(gè)審計(jì)規(guī)則才會(huì)結(jié)束程序。如果都未成功,開(kāi)始下一個(gè)數(shù)據(jù)包的匹配流程。

在對(duì)時(shí)間和來(lái)源規(guī)則匹配時(shí),可以提前在匹配策略以及獲取的數(shù)據(jù)包中把它們各自轉(zhuǎn)換為數(shù)值,方便進(jìn)行比較,匹配工作效率和速度可以得到提升。

本系統(tǒng)采用AC算法實(shí)現(xiàn)內(nèi)容的規(guī)則匹配。AC算法中基本節(jié)點(diǎn)樹(shù)、失敗表和輸出表的結(jié)構(gòu)如下所示:

(三)審計(jì)規(guī)則生成的功能實(shí)現(xiàn)

本文的審計(jì)規(guī)則配置方法支持敏感字符、規(guī)則的有效期、關(guān)聯(lián)性和時(shí)間規(guī)則分析等方式。審計(jì)規(guī)則對(duì)待審計(jì)信息還可以根據(jù)數(shù)量百分比方法來(lái)進(jìn)行抽樣選擇。此外,本文審計(jì)規(guī)則配置方式分為自動(dòng)和人工配置兩種方式,自動(dòng)方式覆蓋范圍廣,并且禁止負(fù)責(zé)審計(jì)的人員進(jìn)行修改;人工配置方式相對(duì)覆蓋區(qū)域小,僅限于特定的行業(yè)和審計(jì)范圍。

自動(dòng)生成統(tǒng)計(jì)過(guò)程采用了Hash Table和B樹(shù)索引這兩種方法,這樣能高效搜索到數(shù)據(jù)源頭、目標(biāo)數(shù)據(jù)庫(kù)和所有對(duì)數(shù)據(jù)庫(kù)的操作行為。統(tǒng)計(jì)程序把搜索到的內(nèi)容快速地存儲(chǔ)到對(duì)應(yīng)的數(shù)據(jù)節(jié)點(diǎn)里面,以此得出統(tǒng)計(jì)結(jié)果。

該功能為用到的Hash Table和源節(jié)點(diǎn)的結(jié)構(gòu)進(jìn)行如下定義:

struct haxi_Tab {

source_Nod *em;

int num_nod;

int table_Len;

}

struct source_Nod {

int source_ip;

int source_po;

record users_All;

renode *sourcetoNod;

struct source_Nod*next;

}

本系統(tǒng)對(duì)記錄庫(kù)信息的B樹(shù)目的節(jié)點(diǎn)信息的結(jié)構(gòu)定義如下:

struct de_Nod {

int balance;

int de_ip;

int de_po;

record users_All;

renode *detoNod;

struct s_P{

struct de_Nod*lchild;

struct de_Nod *rchild;

}

s_P;

}

本系統(tǒng)對(duì)用來(lái)記錄源主機(jī)IP地址對(duì)目標(biāo)數(shù)據(jù)庫(kù)操作的統(tǒng)計(jì)數(shù)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行了如下定義:

struct reNod {

record rd;

int source_ip;

int de_ip;

int de_po;

}

struct x_Po {

struct reNod*sP;

struct reNod*dP}

x_Po;

}

數(shù)據(jù)統(tǒng)計(jì)過(guò)程可以簡(jiǎn)述為:

(1)對(duì)采集數(shù)據(jù)的來(lái)源主機(jī)IP、訪問(wèn)目標(biāo)數(shù)據(jù)庫(kù)ID和對(duì)目標(biāo)庫(kù)進(jìn)行操作的類型進(jìn)行分析和識(shí)別。

(2)系統(tǒng)通過(guò)哈希索引法快速查找到source_Nod源節(jié)點(diǎn)的位置,并對(duì)來(lái)源節(jié)點(diǎn)信息進(jìn)行立即更新和統(tǒng)計(jì)。

(3)系統(tǒng)通過(guò)二叉平衡樹(shù)索引法快速定位de_Nod的位置,并對(duì)目標(biāo)節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行更新和統(tǒng)計(jì)。

(4)最終是對(duì)reNod的位置進(jìn)行準(zhǔn)確定位和及時(shí)更新,并且統(tǒng)計(jì)該節(jié)點(diǎn)相關(guān)數(shù)據(jù),得到所有源頭主機(jī)對(duì)數(shù)據(jù)庫(kù)所做的各種操作的統(tǒng)計(jì)結(jié)果。

本系統(tǒng)定義規(guī)則排序的數(shù)據(jù)結(jié)構(gòu)如下:

struct so_Nod {

int ra;

int source_ip;

int o_ps;

struct so_Nod*next;

}

系統(tǒng)設(shè)計(jì)出合理排序的數(shù)據(jù)結(jié)構(gòu),可實(shí)現(xiàn)對(duì)庫(kù)操作的統(tǒng)計(jì)的信息分別進(jìn)行數(shù)值計(jì)算,再將計(jì)算得到的結(jié)果存儲(chǔ)至so_Nod節(jié)點(diǎn)中就可以實(shí)現(xiàn)對(duì)計(jì)算結(jié)果的排序,再按照生成原則就能夠?qū)崿F(xiàn)生成數(shù)據(jù)庫(kù)審計(jì)規(guī)則。

五、結(jié)語(yǔ)

傳統(tǒng)數(shù)據(jù)庫(kù)的安全保障方法有著諸多的不足之處,本文在研究了國(guó)內(nèi)外數(shù)據(jù)庫(kù)安全審計(jì)行業(yè)現(xiàn)狀后,設(shè)計(jì)了一種數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)框架,并對(duì)其主要功能模塊的設(shè)計(jì)和功能實(shí)現(xiàn)路徑進(jìn)行了較為深入的探析,為系統(tǒng)的功能實(shí)現(xiàn)奠定了理論基礎(chǔ)。

猜你喜歡
數(shù)據(jù)包排序規(guī)則
二維隱蔽時(shí)間信道構(gòu)建的研究*
撐竿跳規(guī)則的制定
作者簡(jiǎn)介
民用飛機(jī)飛行模擬機(jī)數(shù)據(jù)包試飛任務(wù)優(yōu)化結(jié)合方法研究
恐怖排序
節(jié)日排序
C#串口高效可靠的接收方案設(shè)計(jì)
奧斯卡的規(guī)則變了!
讓規(guī)則不規(guī)則
TPP反腐敗規(guī)則對(duì)我國(guó)的啟示
沙坪坝区| 尼勒克县| 兴国县| 华阴市| 金寨县| 克什克腾旗| 探索| 正安县| 密云县| 上栗县| 叙永县| 巴彦淖尔市| 金沙县| 合水县| 乡宁县| 青浦区| 松阳县| 郯城县| 济宁市| 水富县| 舟曲县| 福贡县| 宜宾县| 桂阳县| 江都市| 修文县| 林州市| 嘉义县| 新宁县| 彰化县| 峡江县| 定边县| 分宜县| 德钦县| 喀喇沁旗| 台山市| 峨边| 彰武县| 酉阳| 德惠市| 保德县|