999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

多角度數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控技術(shù)研究

2015-10-14 07:06:51葉曉俊
關(guān)鍵詞:數(shù)據(jù)庫(kù)結(jié)構(gòu)用戶

陳 旦,楊 非,葉曉俊

?

多角度數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控技術(shù)研究

陳 旦,楊 非,葉曉俊

(清華大學(xué)軟件學(xué)院;清華信息科學(xué)與技術(shù)國(guó)家實(shí)驗(yàn)室 北京海淀區(qū) 100084)

基于網(wǎng)絡(luò)協(xié)議抓取的數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控是數(shù)據(jù)庫(kù)安全深度防御的一種手段。針對(duì)用戶數(shù)據(jù)庫(kù)請(qǐng)求的內(nèi)容與方式,設(shè)計(jì)了包括用戶行為獲取與潛在安全威脅檢測(cè)的數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控器。根據(jù)異常攻擊檢測(cè)策略,提出了基于SQL語(yǔ)法結(jié)構(gòu)和語(yǔ)義特點(diǎn)的單語(yǔ)句用戶行為模型和基于SQL操作序列的多語(yǔ)句用戶行為模型。在訓(xùn)練階段,對(duì)SQL訓(xùn)練集進(jìn)行學(xué)習(xí)以構(gòu)建用戶行為模式庫(kù)。入侵檢測(cè)引擎通過(guò)計(jì)算SQL間結(jié)構(gòu)距離和多語(yǔ)句序列距離的模式匹配方法發(fā)現(xiàn)潛在的數(shù)據(jù)庫(kù)攻擊行為。對(duì)實(shí)際SQL請(qǐng)求的實(shí)驗(yàn)驗(yàn)證了該文提出的監(jiān)控器體系結(jié)構(gòu)、相關(guān)模型、行為模式挖掘和攻擊匹配算法的可用性。

數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控; 入侵檢測(cè); 匹配; 用戶行為模型模式

目前,DBMS已有多種保護(hù)封閉環(huán)境下數(shù)據(jù)安全的機(jī)制,如身份認(rèn)證、權(quán)限管理、加密、審計(jì)等。但隨著數(shù)據(jù)庫(kù)入侵手段的多元化和智能化,這些數(shù)據(jù)庫(kù)安全機(jī)制逐漸體現(xiàn)出不足[1-2]:1) 合法用戶濫用或誤用權(quán)限,使得身份認(rèn)證和權(quán)限管理機(jī)制無(wú)法發(fā)揮相應(yīng)作用;2) DBMS本身的漏洞被黑客發(fā)掘,安全機(jī)制難以應(yīng)對(duì)新形式的攻擊;3) 現(xiàn)有的數(shù)據(jù)庫(kù)安全機(jī)制往往依賴于系統(tǒng)管理員(DBA)的專業(yè)性才能在正確的配置下運(yùn)作;4) 目前的數(shù)據(jù)庫(kù)安全審計(jì)機(jī)制并沒(méi)有很好地提高數(shù)據(jù)庫(kù)的安全性。

針對(duì)上述缺陷,深度防御(defense-in-depth)被證明是保障數(shù)據(jù)庫(kù)系統(tǒng)安全最有效的機(jī)制。深度防御要求數(shù)據(jù)庫(kù)系統(tǒng)不僅要提高本身的安全機(jī)制,還要采取額外的綜合性措施以達(dá)到安全目標(biāo),如數(shù)據(jù)庫(kù)漏洞評(píng)估和數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控[2]。

作為獨(dú)立于DBMS的安全機(jī)制,數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控器實(shí)時(shí)捕獲和記錄用戶對(duì)數(shù)據(jù)庫(kù)各種請(qǐng)求,對(duì)違反安全策略的用戶操作發(fā)出警報(bào)。用戶行為模型是數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控基礎(chǔ),監(jiān)控器依據(jù)模型對(duì)用戶實(shí)時(shí)請(qǐng)求進(jìn)行行為建模,并依據(jù)監(jiān)控器的用戶行為規(guī)則庫(kù)進(jìn)行模式匹配,以判斷其是否存在安全隱患。

本文分析了數(shù)據(jù)庫(kù)入侵檢測(cè)相關(guān)技術(shù),提出了一個(gè)多角度數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控器體系結(jié)構(gòu),描述了應(yīng)用于入侵檢測(cè)系統(tǒng)的用戶請(qǐng)求行為模型、行為模式規(guī)則庫(kù)生成方法和入侵檢測(cè)的模式匹配方法,并對(duì)設(shè)計(jì)入侵檢測(cè)效果進(jìn)行了實(shí)驗(yàn)驗(yàn)證。

1 數(shù)據(jù)庫(kù)入侵檢測(cè)技術(shù)

基于模式匹配入侵檢測(cè)是安全監(jiān)控的一種有效技術(shù)[3],采用該技術(shù)的數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控器對(duì)異常攻擊的檢測(cè)可分為兩個(gè)步驟。

1) 行為模式庫(kù)建立:手工或通過(guò)機(jī)器學(xué)習(xí)的方法自動(dòng)建立合法或異常的用戶行為輪廓(profile)。

2) 異常攻擊檢測(cè):使用合法或異常的用戶行為輪廓來(lái)對(duì)實(shí)時(shí)監(jiān)控的用戶行為進(jìn)行潛在數(shù)據(jù)庫(kù)攻擊判定。

檢測(cè)引擎使用的正常或異常行為模式規(guī)則庫(kù)可使用關(guān)聯(lián)規(guī)則、頻繁項(xiàng)挖掘、聚類分析等機(jī)器學(xué)習(xí)技術(shù)自動(dòng)構(gòu)建。其優(yōu)點(diǎn)是:具有自學(xué)習(xí)、自適應(yīng)的能力,可挖掘已有數(shù)據(jù)中的隱藏規(guī)律;在缺少人工干預(yù)的情況下對(duì)異常攻擊進(jìn)行檢測(cè),不僅能降低系統(tǒng)管理員的負(fù)擔(dān),還能在學(xué)習(xí)的過(guò)程中不斷適應(yīng)新條件,有效檢測(cè)出新形式的攻擊[1]。

采用機(jī)器學(xué)習(xí)的方法建立用戶行為模式需要對(duì)大量數(shù)據(jù)對(duì)象、不同的命令類型以及復(fù)雜的操作流程進(jìn)行處理。對(duì)用戶行為進(jìn)行合理的建模是實(shí)現(xiàn)模式匹配的基礎(chǔ),也是自動(dòng)化模式挖掘可行性的重要保證。文獻(xiàn)[4]提出了SQL操作依賴關(guān)系模型,通過(guò)檢查關(guān)鍵操作之間的依賴關(guān)系是否被滿足來(lái)進(jìn)行異常攻擊判定。文獻(xiàn)[5-6]提出了SQL指印技術(shù),針對(duì)數(shù)據(jù)對(duì)象進(jìn)行歸納處理。而關(guān)聯(lián)規(guī)則挖掘算法在自動(dòng)化模式挖掘中得到廣泛運(yùn)用,如Apriori算法和FP-Growth算法[7-8]等。

2 數(shù)據(jù)庫(kù)入侵檢測(cè)系統(tǒng)

數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控器需要實(shí)時(shí)抓取用戶提交的數(shù)據(jù)庫(kù)SQL請(qǐng)求,并對(duì)這些用戶請(qǐng)求行為語(yǔ)義進(jìn)行解析,以即時(shí)判定用戶操作是否存在安全攻擊。圖1是基于網(wǎng)絡(luò)協(xié)議抓取的數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控器體系結(jié)構(gòu)圖,分為用戶行為獲取和用戶行為檢測(cè)2個(gè)階段。

圖1 數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控器體系結(jié)構(gòu)圖

1) 用戶行為獲取。先通過(guò)網(wǎng)絡(luò)嗅探器在所監(jiān)控的數(shù)據(jù)庫(kù)通訊網(wǎng)絡(luò)上實(shí)時(shí)偵聽(tīng)數(shù)據(jù)庫(kù)網(wǎng)絡(luò)包。此過(guò)程獨(dú)立于DBMS運(yùn)行環(huán)境,不會(huì)對(duì)數(shù)據(jù)庫(kù)服務(wù)器的正常工作和性能構(gòu)成影響。在獲取到數(shù)據(jù)庫(kù)網(wǎng)絡(luò)包后,通過(guò)協(xié)議分析器過(guò)濾掉無(wú)關(guān)信息,并從包中獲取完整的數(shù)據(jù)庫(kù)活動(dòng)信息。這些信息包括SQL語(yǔ)句、SQL請(qǐng)求來(lái)源、用戶名及請(qǐng)求的時(shí)間點(diǎn)等。

2) 用戶行為檢測(cè)??蓮牟煌嵌?如檢測(cè)對(duì)象、操作類型、操作序列等)對(duì)抓取的用戶操作進(jìn)行多角度的分析,以確定用戶請(qǐng)求是否合法。針對(duì)規(guī)則庫(kù)(detection knowledge)中的模型結(jié)構(gòu),檢測(cè)引擎對(duì)原始SQL請(qǐng)求信息進(jìn)行預(yù)處理,并將處理后的用戶行為與規(guī)則庫(kù)進(jìn)行匹配,將檢測(cè)結(jié)果即時(shí)輸出。檢測(cè)規(guī)則庫(kù)可由組織管理員手工建立,也可以通過(guò)有效的數(shù)據(jù)挖掘等技術(shù)自動(dòng)建立。

數(shù)據(jù)庫(kù)的安全威脅有多種,主要的威脅如圖2所示。針對(duì)這些威脅,數(shù)據(jù)庫(kù)入侵能夠檢測(cè)的異常用戶行為包括SQL注入攻擊、不健全的認(rèn)證/審計(jì)、數(shù)據(jù)庫(kù)漏洞利用和過(guò)度與合法特權(quán)濫用等[1-2]。

圖2 數(shù)據(jù)庫(kù)安全威脅

在上述異常用戶行為中,前3條描述的攻擊模式,其SQL請(qǐng)求通常在語(yǔ)句結(jié)構(gòu)上與正常的請(qǐng)求SQL語(yǔ)句有較大差異。如SQL注入攻擊的一種常見(jiàn)形式是在where子句中出現(xiàn)恒等式,造成緩沖區(qū)溢出漏洞的攻擊語(yǔ)句一般具有超長(zhǎng)的變量或?qū)ο竺取R虼耍赏ㄟ^(guò)檢查單條SQL語(yǔ)句本身的結(jié)構(gòu)與規(guī)則庫(kù)中正常SQL模式距離來(lái)確定是否存在這些類型的攻擊。而過(guò)度與合法特權(quán)濫用的攻擊通常通過(guò)一系列組合操作來(lái)完成,其特點(diǎn)是在一系列操作中的單一語(yǔ)句都具有正常的結(jié)構(gòu),威脅在于企業(yè)的實(shí)際信息資產(chǎn),而不是DBMS產(chǎn)品本身。應(yīng)對(duì)此類型的攻擊必須將多條語(yǔ)句進(jìn)行組合分析才能判斷[1]。圖3是基于模式匹配的數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控器入侵檢測(cè)的示意圖,分為訓(xùn)練和檢測(cè)兩個(gè)階段。

圖3 數(shù)據(jù)庫(kù)入侵檢測(cè)示意圖

1) 訓(xùn)練階段。針對(duì)獨(dú)立的SQL請(qǐng)求,通過(guò)解析訓(xùn)練集中的SQL語(yǔ)法結(jié)構(gòu)建立SQL操作結(jié)構(gòu)規(guī)則庫(kù);針對(duì)多語(yǔ)句的組合攻擊,從訓(xùn)練集中挖掘合法的用戶行為輪廓;對(duì)訓(xùn)練集中的其他信息進(jìn)行聚類分析,以建立額外的監(jiān)控規(guī)則庫(kù)。

2) 檢測(cè)階段。由網(wǎng)絡(luò)抓取而來(lái)的用戶實(shí)時(shí)請(qǐng)求將以SQL語(yǔ)句集的形式作為入侵檢測(cè)引擎的輸入。入侵檢測(cè)引擎將包含多個(gè)檢測(cè)算法,從不同的角度進(jìn)行檢測(cè)。如將每一條SQL語(yǔ)句與結(jié)構(gòu)規(guī)則庫(kù)進(jìn)行比對(duì),以確定其結(jié)構(gòu)是否存在異常;將連續(xù)的SQL序列與用戶行為輪廓進(jìn)行匹配,以檢查其是否符合合法的業(yè)務(wù)邏輯;將額外的統(tǒng)計(jì)信息用于時(shí)序檢測(cè)等額外的異常檢測(cè),以提高用戶異常行為檢測(cè)的正確率。

網(wǎng)絡(luò)抓取器的設(shè)計(jì)是依據(jù)各DBMS網(wǎng)絡(luò)通訊協(xié)議,采用鏡像端口方式并行的捕獲各種數(shù)據(jù)庫(kù)通訊內(nèi)容,以進(jìn)行用戶行為模型的解析,滿足多數(shù)據(jù)庫(kù)、高并發(fā)用戶請(qǐng)求的高效處理。

3 數(shù)據(jù)庫(kù)入侵檢測(cè)引擎

針對(duì)單條SQL結(jié)構(gòu)異常的檢測(cè)和多語(yǔ)句組合攻擊的檢測(cè)監(jiān)控目的不同,需要使用不同的模型來(lái)分別建立其規(guī)則庫(kù),檢測(cè)引擎也需要使用不同的模式匹配方法來(lái)判定用戶請(qǐng)求是否存在安全隱患。

3.1 規(guī)則庫(kù)模型

單條SQL結(jié)構(gòu)異常檢測(cè)主要針對(duì)非法用戶通過(guò)SQL注入、緩沖區(qū)溢出等方式對(duì)數(shù)據(jù)庫(kù)進(jìn)行攻擊。

按照SQL的語(yǔ)法標(biāo)準(zhǔn)[9]以及不同數(shù)據(jù)庫(kù)獨(dú)有的語(yǔ)法特性得到SQL的語(yǔ)句結(jié)構(gòu),將每一條SQL的結(jié)構(gòu)表示成圖4所示的SQL語(yǔ)句模式。SqlSchema是對(duì)SQL語(yǔ)句解析結(jié)果的存儲(chǔ)結(jié)構(gòu)封裝;SqlStmt用來(lái)表示SQL語(yǔ)句中一個(gè)獨(dú)立子句的結(jié)構(gòu),成員域包含了SQL語(yǔ)句中可能出現(xiàn)的所有信息,如語(yǔ)句類型、數(shù)據(jù)表列表、屬性列表等;每一個(gè)獨(dú)立子句的where條件結(jié)構(gòu)使用具有二叉樹(shù)類似結(jié)構(gòu)的CondTreeNode表示。

而多語(yǔ)句組合攻擊檢測(cè)的目的是檢測(cè)出具有異常企圖的語(yǔ)句序列。其模型需要能反映事務(wù)的操作流程信息。根據(jù)上述需求,采用操作序列來(lái)描述一組連續(xù)的數(shù)據(jù)庫(kù)事務(wù)(操作語(yǔ)句),序列中的每一項(xiàng)表示事務(wù)中的一條SQL語(yǔ)句。根據(jù)SQL語(yǔ)句的語(yǔ)義特點(diǎn),可將序列中的項(xiàng)(SQL語(yǔ)句)抽象為(,,)的三元組,其中,表示操作類型,表示操作表或視圖的集合,表示相關(guān)屬性集合。如將語(yǔ)句“update ORDER set PRICE = 2000”表示為(update, {ORDER},{PRICE})。

3.2 規(guī)則庫(kù)生成

在單條SQL結(jié)構(gòu)異常檢測(cè)中,首先需要獲取足夠的覆蓋用戶行為的正常SQL語(yǔ)句作為訓(xùn)練集。這些語(yǔ)句來(lái)源可以是審計(jì)庫(kù),也可以是數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控器的監(jiān)控記錄。對(duì)訓(xùn)練集中的語(yǔ)句進(jìn)行語(yǔ)句結(jié)構(gòu)解析得到SQL語(yǔ)句模式,然后按照模式庫(kù)的存儲(chǔ)設(shè)計(jì)將解析結(jié)果存儲(chǔ)到行為模式庫(kù)中。存儲(chǔ)時(shí)針對(duì)語(yǔ)句模式中的sql_stmt_type, table_list, operation_list等建立索引,以提高檢測(cè)階段的效率。

圖4 SQL語(yǔ)句模式結(jié)構(gòu)

數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)中會(huì)對(duì)具有二叉樹(shù)結(jié)構(gòu)的CondTreeNode進(jìn)行特殊處理:首先中序遍歷整棵樹(shù),同時(shí)運(yùn)用SQL指印技術(shù)[3-4]對(duì)條件樹(shù)中的常量、變量進(jìn)行抽象,將二叉樹(shù)形式的表示結(jié)構(gòu)壓縮成為一個(gè)字符串形式的結(jié)構(gòu),然后利用此字符串結(jié)構(gòu)進(jìn)行存儲(chǔ)。如語(yǔ)句“selectfromwhere=and>3”的條件樹(shù)表示如圖5所示,表1顯示了針對(duì)每一個(gè)子樹(shù)的壓縮結(jié)果。

圖5 SQL語(yǔ)句where子句語(yǔ)法解析樹(shù)示例

表1 SQL語(yǔ)句where子句語(yǔ)法解析樹(shù)抽象壓縮示例

針對(duì)特殊形式的單條SQL攻擊,應(yīng)在規(guī)則庫(kù)中建立輔助規(guī)則用于后續(xù)檢測(cè),其檢測(cè)目標(biāo)是:語(yǔ)句中出現(xiàn)“;create table cmd(str image);”這一類使用分號(hào)注入的手段和具有長(zhǎng)度異常變量、長(zhǎng)度異常語(yǔ)句的緩沖區(qū)溢出等攻擊等。

在面向多語(yǔ)句組合攻擊的檢測(cè)過(guò)程中,建立合法規(guī)則庫(kù)的過(guò)程即是從訓(xùn)練數(shù)據(jù)中找出出現(xiàn)次數(shù)較多的用戶數(shù)據(jù)庫(kù)操作流程,作為合法的行為輪廓。數(shù)據(jù)挖掘中的頻繁閉序列挖掘相關(guān)算法能有效地發(fā)現(xiàn)復(fù)雜的用戶行為模型。

對(duì)訓(xùn)練集進(jìn)行頻繁閉序列挖掘的過(guò)程中,由于某些具有相同或相似語(yǔ)義的SQL之間可能存在細(xì)微的屬性差異,如果將序列中每一項(xiàng)都細(xì)化到三元組的屬性層次,可能導(dǎo)致挖掘結(jié)果過(guò)于稀疏,也會(huì)導(dǎo)致檢測(cè)階段不能對(duì)待測(cè)SQL與合法輪廓的SQL中的屬性差異進(jìn)行合理的界定,產(chǎn)生較多的誤報(bào)。因此在應(yīng)用傳統(tǒng)的頻繁閉序列挖掘中應(yīng)進(jìn)行多層挖掘拓展,對(duì)支持度不夠的項(xiàng),嘗試將其轉(zhuǎn)換為更粗粒度的層次做進(jìn)一步挖掘,目的是從訓(xùn)練集中挖掘出更多的隱藏輪廓。如項(xiàng)(select, {ORDER}, {PRICE})和(select, {ORDER}, {NAME,PRICE})在挖掘過(guò)程中如支持度均不夠,將被轉(zhuǎn)換為更高層次的新項(xiàng)(select, {ORDER},)進(jìn)行處理。

BIDE算法[10]由于不需要在挖掘過(guò)程中存儲(chǔ)候選頻繁序列,僅對(duì)訓(xùn)練集掃描就可進(jìn)行頻繁序列的閉合驗(yàn)證,因此具有良好的空間和時(shí)間性能。在保持原算法性能的優(yōu)勢(shì)下,對(duì)BIDE算法進(jìn)行多層挖掘拓展,提出了多層挖掘拓展的頻繁閉序列挖掘算法。其過(guò)程是在給定的頻繁支持度閾值下,以所有的頻繁1-序列為起始,深度優(yōu)先地進(jìn)行頻繁模式增長(zhǎng),查找支持度大于閾值的所有頻繁序列。在獲取頻繁1-序列和對(duì)頻繁模式基進(jìn)行增長(zhǎng)的過(guò)程中,如果某項(xiàng)的支持度不夠,將嘗試將其轉(zhuǎn)換為高層次的新項(xiàng)。得到每個(gè)頻繁序列后,采用位置拓展檢驗(yàn)對(duì)訓(xùn)練集進(jìn)行掃描,驗(yàn)證頻繁序列是否閉合。同時(shí),算法將判斷新發(fā)現(xiàn)的頻繁模式基是否可能產(chǎn)生更多的頻繁閉序列,對(duì)不可能的節(jié)點(diǎn)及時(shí)進(jìn)行剪枝,停止對(duì)該頻繁模式基的增長(zhǎng)。

3.3 行為模式匹配

在語(yǔ)句級(jí)用戶異常行為檢測(cè)中,針對(duì)每一條待測(cè)SQL語(yǔ)句,首先解析獲得其語(yǔ)句模式,與合法模式庫(kù)中的合法語(yǔ)句進(jìn)行距離計(jì)算(如采用編輯距離[11])。兩條SQL語(yǔ)句模式間的距離計(jì)算公式為:

合法的SQL語(yǔ)句與庫(kù)中語(yǔ)句的距離應(yīng)為0或接近0。當(dāng)距離大于0時(shí),檢測(cè)引擎將報(bào)告異常,并找出與待檢測(cè)SQL語(yǔ)句距離最為相近的一些合法語(yǔ)句,供管理員進(jìn)一步對(duì)比審核。如針對(duì)一條SQL注入語(yǔ)句“selectfromwhere=or 1=1”,它的where子句語(yǔ)法解析樹(shù)的最后一部分是“c_eq, v_num, v_num”,表明其具有“數(shù)值=數(shù)值”的結(jié)構(gòu),這種結(jié)構(gòu)不會(huì)在合法的語(yǔ)句中出現(xiàn),所以計(jì)算出的距離結(jié)果會(huì)大于0,表明該語(yǔ)句可能是攻擊語(yǔ)句。

在多語(yǔ)句組合攻擊檢測(cè)引擎中,采用事務(wù)間距離檢驗(yàn)算法計(jì)算待測(cè)事務(wù)輪廓與規(guī)則庫(kù)中合法輪廓集的最近距離,并與最大距離閾值比較,將超出距離閾值的事務(wù)標(biāo)識(shí)為異常事務(wù)。事務(wù)間的距離計(jì)算采用編輯距離:

在計(jì)算距離時(shí),不同類型的語(yǔ)句將對(duì)距離的增量產(chǎn)生不同影響。如一條update操作帶來(lái)的距離差異將大于一條select操作。在得到事務(wù)間的絕對(duì)距離后,將進(jìn)行歸一化處理以得到相對(duì)距離,用以標(biāo)識(shí)待測(cè)事務(wù)與合法事務(wù)間的序列相似程度。

4 實(shí) 驗(yàn)

4.1 實(shí)驗(yàn)數(shù)據(jù)集

以實(shí)際應(yīng)用中的合法操作語(yǔ)句集作為入侵檢測(cè)特征庫(kù)的訓(xùn)練集。測(cè)試數(shù)據(jù)庫(kù)中共有6張表,每張表具有3個(gè)屬性。訓(xùn)練集共包含2 000個(gè)事務(wù),事務(wù)的平均長(zhǎng)度為8(取整后),事務(wù)中所有的語(yǔ)句均為面向測(cè)試數(shù)據(jù)庫(kù)的管理命令(DDL/DCL)以及在6張表上的select、update、insert、delete等操作(DML)。

實(shí)驗(yàn)測(cè)試集為1 100個(gè)待測(cè)事務(wù),事務(wù)的平均長(zhǎng)度為8。所有待測(cè)事務(wù)分為兩類:1) 100個(gè)包含結(jié)構(gòu)異常語(yǔ)句的事務(wù),總共含有200條異常語(yǔ)句。2) 1 000個(gè)由結(jié)構(gòu)完全正常的語(yǔ)句組成的事務(wù),其中,正常事務(wù)和異常事務(wù)(不符合操作流程)各500個(gè)。

檢驗(yàn)結(jié)果以查準(zhǔn)率(precision)和查全率(recall)進(jìn)行度量。令TP(true positive)為被正確標(biāo)識(shí)的異常語(yǔ)句或事務(wù)數(shù),F(xiàn)N(false negative)為被錯(cuò)誤標(biāo)識(shí)的正常語(yǔ)句或事務(wù)數(shù),F(xiàn)P(false positive)為被錯(cuò)誤標(biāo)識(shí)的異常語(yǔ)句或事務(wù)數(shù),TN(true negative)為被正確表示的正常語(yǔ)句或事務(wù)數(shù)。有:

4.2 實(shí)驗(yàn)結(jié)果分析

上述測(cè)試集的1 100個(gè)事務(wù)中共包含10 678條語(yǔ)句,其中,SQL注入語(yǔ)句100條,緩沖區(qū)溢出攻擊語(yǔ)句100條,正常語(yǔ)句10 478條。檢測(cè)引擎對(duì)語(yǔ)句結(jié)構(gòu)異常的檢測(cè)結(jié)果如表2所示(括號(hào)內(nèi)數(shù)字為實(shí)際的語(yǔ)句樹(shù)目,也即理想的結(jié)果)。

表2 語(yǔ)句結(jié)構(gòu)異常檢驗(yàn)結(jié)果

對(duì)表2所示的實(shí)驗(yàn)結(jié)果進(jìn)行重現(xiàn)和跟蹤可得如下結(jié)論:1) 系統(tǒng)對(duì)于以異常變量為攻擊特點(diǎn)的緩沖區(qū)溢出攻擊有很好的判定結(jié)果;2) 對(duì)SQL注入攻擊的漏檢主要集中在某些智能化的SQL注入和組合式的SQL注入,如在where子句中加入類似“user>1”的兩端類型不同的表達(dá)式來(lái)獲取數(shù)據(jù)庫(kù)異常返回的攻擊語(yǔ)句將難以被引擎發(fā)現(xiàn);3) 對(duì)正常語(yǔ)句誤報(bào)的原因是,某些語(yǔ)句結(jié)構(gòu)過(guò)于復(fù)雜,與規(guī)則庫(kù)中的語(yǔ)句結(jié)構(gòu)差異過(guò)大,或其中含有用戶誤操作的表名或?qū)ο竺?,?dǎo)致引擎將其識(shí)別為異常語(yǔ)句。

在多語(yǔ)句組合攻擊檢測(cè)模塊下,調(diào)整行為輪廓挖掘的相對(duì)頻繁支持度閾值(min_sup)和事務(wù)匹配算法的距離閾值將對(duì)多語(yǔ)句組合攻擊檢測(cè)造成影響。提高行為輪廓挖掘的頻繁支持度閾值將導(dǎo)致合法行為輪廓數(shù)目的減少,使得引擎檢測(cè)出更多的異常事務(wù),可提高查全率,但會(huì)使查準(zhǔn)率有所下降。圖6顯示了在事務(wù)匹配算法的距離閾值(max_distance)取值固定為0.7時(shí),不同的挖掘頻繁支持度閾值(min_sup)對(duì)查準(zhǔn)率和查全率的影響。

圖6 距離閾值為0.7,最小支持度?[0.08%, 0.18%]

提高事務(wù)匹配算法的距離閾值將更加嚴(yán)格地判定異常事務(wù),可提高查準(zhǔn)率,但會(huì)使查準(zhǔn)率降低。圖7顯示了在挖掘頻繁支持度閾值取值固定為0.1%時(shí),不同的事務(wù)匹配算法的距離閾值對(duì)查準(zhǔn)率和查全率的影響。

圖7 最小支持度為0.1%,距離閾值?[0.4, 0.8]

在不同的實(shí)驗(yàn)環(huán)境下,合理的選擇參數(shù)可使檢驗(yàn)效果達(dá)到理想的指標(biāo)。如在當(dāng)前實(shí)驗(yàn)環(huán)境下,挖掘頻繁支持度閾值取值為0.1%,事務(wù)匹配算法的距離閾值取值為0.7時(shí),查準(zhǔn)率和查全率分別為98.4%和93.5%,能有效檢測(cè)出多語(yǔ)句的組合攻擊。

5 總 結(jié)

本文設(shè)計(jì)了一個(gè)基于網(wǎng)絡(luò)協(xié)議的多角度數(shù)據(jù)庫(kù)活動(dòng)監(jiān)控器。在分別提出SQL結(jié)構(gòu)異常檢測(cè)模型和多語(yǔ)句組合攻擊檢測(cè)的SQL語(yǔ)義模型后,根據(jù)入侵檢測(cè)系統(tǒng)的需求特性,分別給出了不同模塊下相應(yīng)的特征庫(kù)建立方法與模式匹配方法。后續(xù)工作包括完善各DBMS特有SQL結(jié)構(gòu)的語(yǔ)義解析細(xì)節(jié)、增加對(duì)智能化SQL攻擊的檢測(cè)能力、提升多層頻繁模式挖掘的效果和性能等。

[1] VIEIRA M, MADEIRA H. Detection of malicious transactions in DBMS[C]//11th Pacific Rim International Symposium on Dependable Computing. [S.l.]: IEEE, 2005.

[2] NEWMAN A, BERENBAUM E. System for protecting database applications from unauthorized activity: U.S., Patent Application 10/798,079[P]. 2004-03-11.

[3] KUMAR S, SPAFFORD E H. A software architecture to support misuse intrusion detection[C]//Proceedings of the 18th National Information Security Conference. [S.l.]: [s.n.], 1995: 194-204.

[4] NOEL S, WIJESEKERA D, YOUMAN C. Modern intrusion detection, data mining, and degrees of attack guilt[M]// BARBARA D, JAJODIA S. Applications of Data Mining in Computer Security. New York: Springer-Verlag, 2002: 1-31.

[5] LEE S Y, LOW W L, WONG P Y. Learning fingerprints for a database intrusion detection system[C]//Computer Security: ESORICS 2002. Berlin Heidelberg: Springer, 2002: 264- 279.

[6] LOW W L, LEE J, TEOH P. DIDAFIT: Detecting intrusions in databases through fingerprinting transactions[C]//ICEIS. Spain: [s.n.], 2002: 121-128.

[7] HU Y, PANDA B. Identification of malicious transactions in database systems[C]//Seventh International Database Engineering and Applications Symposium. [S.l.]: IEEE, 2003: 329-335.

[8] HAN J, KAMBER M. Data mining, southeast asia edition: concepts and techniques[M]. San Francisco: Morgan kaufmann, 2006.

[9] International Organization for Standardization. ISO/ IEC-9075-1:1999[EB/OL].[2003-01-01].http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=26196.

[10] WANG J, HAN J. BIDE: efficient mining of frequent closed sequences[C]//20th International Conference on Data Engineering. [S.l.]: IEEE, 2004: 79-90.

[11] WIKIPEDIA. Levenshtein distance[EB/OL]. [2013-12-10]. http://en.wikipedia.org/wiki/Levenshtein_distance.

編 輯 蔣 曉

Research on Multi-Dimensional Database Activity Monitor

CHEN Dan, YANG Fei, and YE Xiao-jun

(School of Software; Tsinghua National Laboratory for Information Science and Technology, Tsinghua University HaidianBeijing 100084)

According to known and unknown database attacking, we propose an architecture of multi-dimensional attack-aware database activity monitor based on captured SQLs, in which the user database behavior schema set can be constructed in the beginning by monitoring their requests and detect potential attacks by analyzing SQL queries/statements during database running. Based on the SQL’s syntactic structure and semantic feature, we present different user behavior models on SQL schematic and semantic level, session level, and structure for libraries of user behavior patterns. Malicious transactions are detected by means of calculating the structure distance of user database requests with SQLs or SQL sequences in schema matching set of the detection engine.

database activity monitor; intrusion detection; pattern matching; user behavior model

TP311

A

10.3969/j.issn.1001-0548.2015.02.018

2013-05-21;

2014-09-06

核高基項(xiàng)目-通用基礎(chǔ)軟件測(cè)試評(píng)估(2009ZX01045-004-001)

陳旦(1989-),男,主要從事數(shù)據(jù)庫(kù)安全、數(shù)據(jù)庫(kù)測(cè)試等方面的研究.

猜你喜歡
數(shù)據(jù)庫(kù)結(jié)構(gòu)用戶
《形而上學(xué)》△卷的結(jié)構(gòu)和位置
論結(jié)構(gòu)
數(shù)據(jù)庫(kù)
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
論《日出》的結(jié)構(gòu)
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數(shù)據(jù)庫(kù)
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
主站蜘蛛池模板: 欧美日韩在线国产| 国产精品视频导航| 青青青亚洲精品国产| 99热这里只有精品2| 亚洲国产欧美国产综合久久| 日本午夜三级| 91成人在线观看视频| 精品国产免费观看一区| 日韩在线欧美在线| 国产成人精品视频一区二区电影| 亚洲swag精品自拍一区| 日韩精品一区二区三区免费在线观看| 91精品人妻一区二区| 久夜色精品国产噜噜| 凹凸精品免费精品视频| 大学生久久香蕉国产线观看| 一区二区无码在线视频| 久久婷婷色综合老司机| 国产精品欧美在线观看| 不卡网亚洲无码| 亚洲天堂视频在线播放| 日本一区中文字幕最新在线| 国产精品30p| 国产日韩精品一区在线不卡 | 亚洲精品自产拍在线观看APP| 成人在线观看不卡| 国产资源站| 永久免费av网站可以直接看的| 国产丰满大乳无码免费播放| 国产一级在线观看www色 | 亚洲欧美综合在线观看| 欧美激情综合| 99热线精品大全在线观看| 亚洲欧美国产视频| 日韩午夜伦| 国产精品女主播| 欧美国产综合视频| 无码人妻热线精品视频| 99热6这里只有精品| 久久综合色播五月男人的天堂| 欧美在线精品一区二区三区| 国内精品免费| 真人高潮娇喘嗯啊在线观看 | 青青操国产| 9啪在线视频| 伊人久久婷婷| 国产9191精品免费观看| 伊人久久青草青青综合| 美美女高清毛片视频免费观看| 国产黄网永久免费| 四虎影视国产精品| 国产一级无码不卡视频| 97影院午夜在线观看视频| 中文字幕 91| 一区二区三区四区精品视频| 91午夜福利在线观看精品| 亚洲国产亚洲综合在线尤物| 久久精品这里只有精99品| 欧美成人在线免费| 日韩av高清无码一区二区三区| 国产SUV精品一区二区6| 亚洲无码视频图片| 99re在线免费视频| 免费观看三级毛片| 在线观看热码亚洲av每日更新| 久久精品aⅴ无码中文字幕| 99久久99这里只有免费的精品| 欧美在线一级片| 欧美色香蕉| 日韩精品欧美国产在线| 亚洲三级成人| 青青操视频免费观看| 高清无码一本到东京热| 欧美日韩一区二区三| 亚洲v日韩v欧美在线观看| 欧美yw精品日本国产精品| 国产成人综合欧美精品久久| 国产亚洲欧美在线中文bt天堂| 日韩高清欧美| 伊人久久婷婷五月综合97色| 久久久久久久97| 园内精品自拍视频在线播放|