朱勇 沈士強(qiáng)
摘要:目前,針對數(shù)據(jù)庫應(yīng)用層面的攻擊越來越多,為記錄發(fā)生的各種內(nèi)部操作,Oracle數(shù)據(jù)庫提供了審計(jì)功能。為進(jìn)一步完善安全審計(jì)機(jī)制,本文將關(guān)聯(lián)規(guī)則數(shù)據(jù)挖掘技術(shù)用于對數(shù)據(jù)庫審計(jì)記錄的分析,建立用戶正常行為規(guī)則,實(shí)現(xiàn)對用戶行為的檢測。設(shè)計(jì)基于Oracle數(shù)據(jù)庫的審計(jì)分析系統(tǒng),實(shí)現(xiàn)了審計(jì)策略、數(shù)據(jù)預(yù)處理、記錄分析和異常檢測等功能?;陉P(guān)聯(lián)規(guī)則挖掘檢測方法實(shí)現(xiàn)對數(shù)據(jù)庫用戶操作的實(shí)時(shí)監(jiān)測和事后分析。
關(guān)鍵詞:Oracle數(shù)據(jù)庫;關(guān)聯(lián)規(guī)則;數(shù)據(jù)挖掘;審計(jì)分析系統(tǒng)
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9416(2019)04-0123-02
1 緒論
目前,很多大型的MIS(Management Information System,管理信息系統(tǒng))中使用了Oracle數(shù)據(jù)庫,既存儲了大量數(shù)據(jù),也在安全性方面得到了很大提升。但針對數(shù)據(jù)庫應(yīng)用方面的網(wǎng)絡(luò)攻擊也隨之增加,為應(yīng)對這些安全威脅,Oracle數(shù)據(jù)庫提供了審計(jì)功能來記錄內(nèi)部操作,以發(fā)現(xiàn)可能存在的攻擊或者安全策略的不足。
為進(jìn)一步完善安全審計(jì)機(jī)制,本文將關(guān)聯(lián)規(guī)則數(shù)據(jù)挖掘技術(shù)用于對數(shù)據(jù)庫審計(jì)記錄的分析,建立用戶正常行為規(guī)則,實(shí)現(xiàn)對用戶行為的檢測。
2 審計(jì)數(shù)據(jù)的獲取
要完善數(shù)據(jù)的安全審計(jì)就要建立用戶正常行為模型,分析記錄用戶行為數(shù)據(jù)。這里可以使用Oracle數(shù)據(jù)庫自身的安全審計(jì)機(jī)制。
首先確認(rèn)Oracle數(shù)據(jù)庫是否開啟審計(jì)功能,使用show parameter audit_trail命令查看顯示信息。若返回OS,則說明審計(jì)功能已激活,審計(jì)記錄將寫到操作系統(tǒng)的審計(jì)跟蹤里;若返回DB,則說明審計(jì)功能已激活,審計(jì)記錄將寫到SYS.AUD$表里;若返回None,則說明審計(jì)功能已被禁用/未開啟。其次,分析用戶行為審計(jì)數(shù)據(jù),結(jié)合數(shù)據(jù)挖掘算法開展研究,建立用戶的正常行為模型。
3 關(guān)聯(lián)規(guī)則挖掘
通過Oracle數(shù)據(jù)庫的審計(jì)機(jī)制可以得到用戶內(nèi)部操作的海量數(shù)據(jù),要分析這些數(shù)據(jù)所反映的用戶行為,得到操作數(shù)據(jù)對象,可使用關(guān)聯(lián)規(guī)則建立“用戶—操作對象—操作類型”之間的關(guān)聯(lián)關(guān)系,判斷用戶操作是否存在異常行為。
(1)審計(jì)數(shù)據(jù)數(shù)據(jù)項(xiàng)的選取。Oracle數(shù)據(jù)庫的審計(jì)數(shù)據(jù)提供了完善的數(shù)據(jù)項(xiàng)。為獲得用戶通常操作的數(shù)據(jù)對象及操作類型,只需審計(jì)數(shù)據(jù)中的部分?jǐn)?shù)據(jù)項(xiàng),包括UserID(用戶名)、ReturnCode(返回碼)、Action#(操作類型)和Obj$Name(操作對象名稱)等。
(2)審計(jì)數(shù)據(jù)空缺值的處理。查看獲得數(shù)據(jù)項(xiàng)中是否存在空缺值,即某條記錄有一項(xiàng)或一些項(xiàng)的內(nèi)容是不存在的。當(dāng)出現(xiàn)空缺值時(shí),要采用替代法、人工處理法等方法進(jìn)行處理。
(3)審計(jì)數(shù)據(jù)的數(shù)字化。為達(dá)到數(shù)據(jù)挖掘的要求,在選取審計(jì)數(shù)據(jù)數(shù)據(jù)項(xiàng)和處理審計(jì)數(shù)據(jù)空缺值的基礎(chǔ)上,采用符號法、集成變換等方式進(jìn)一步處理數(shù)據(jù),滿足數(shù)據(jù)挖掘所需的數(shù)據(jù)支撐,使之轉(zhuǎn)換成滿足關(guān)聯(lián)規(guī)則挖掘需要的數(shù)據(jù)格式。
4 Oracle數(shù)據(jù)庫審計(jì)分析系統(tǒng)的設(shè)計(jì)
4.1 系統(tǒng)模型的建立
審計(jì)分析系統(tǒng)包括審計(jì)策略、數(shù)據(jù)預(yù)處理、記錄分析和異常檢測等功能。系統(tǒng)首先利用Oracle數(shù)據(jù)庫的審計(jì)機(jī)制,提取審計(jì)數(shù)據(jù),完成空值處理和數(shù)字化等操作。隨后對審計(jì)數(shù)據(jù)進(jìn)行分析處理,基于數(shù)據(jù)挖掘算法分析用戶操作特征,檢測用戶的異常操作行為,實(shí)現(xiàn)用戶行為的實(shí)時(shí)監(jiān)測。審計(jì)分析系統(tǒng)流程圖如圖1所示。
4.2 系統(tǒng)功能模塊的實(shí)現(xiàn)
(1)審計(jì)策略模塊。Oracle數(shù)據(jù)庫自身提供了開啟或關(guān)閉審計(jì)功能的操作命令,但使用起來比較繁瑣。本文設(shè)計(jì)的審計(jì)分析系統(tǒng)提供了用戶可視化界面來完成這些命令,可以在界面中直接選取相應(yīng)的審計(jì)策略來完成該功能的開啟或關(guān)閉。
(2)數(shù)據(jù)預(yù)處理模塊。數(shù)據(jù)預(yù)處理模塊將Oracle數(shù)據(jù)庫中的審計(jì)數(shù)據(jù)轉(zhuǎn)換成滿足關(guān)聯(lián)規(guī)則挖掘的數(shù)據(jù)格式。關(guān)聯(lián)規(guī)則數(shù)據(jù)預(yù)處理算法為:
5 總結(jié)
本文針對Oracle數(shù)據(jù)庫安全審計(jì)機(jī)制的審計(jì)記錄分析開展研究,采用關(guān)聯(lián)規(guī)則挖掘方法對審計(jì)數(shù)據(jù)進(jìn)行分析,建立用戶正常行為模式并用于對用戶行為的判斷。在此基礎(chǔ)上,設(shè)計(jì)基于Oracle數(shù)據(jù)庫的審計(jì)分析系統(tǒng),實(shí)現(xiàn)了審計(jì)策略、數(shù)據(jù)預(yù)處理、記錄分析和異常檢測等功能?;陉P(guān)聯(lián)規(guī)則挖掘檢測方法實(shí)現(xiàn)對數(shù)據(jù)庫用戶操作的實(shí)時(shí)監(jiān)測和事后分析。
參考文獻(xiàn)
[1] 曹冠平,王躍利,張立韜.關(guān)聯(lián)規(guī)則挖掘在作戰(zhàn)實(shí)驗(yàn)數(shù)據(jù)分析中的應(yīng)用[J].指揮控制與仿真,2019,41(02):70-74.
[2] 褚志濤.關(guān)聯(lián)規(guī)則挖掘在開放教育教學(xué)管理中的應(yīng)用[J].南京廣播電視大學(xué)學(xué)報(bào),2019(01):63-65.
[3] 徐元元.關(guān)于數(shù)據(jù)庫技術(shù)在計(jì)算機(jī)輔助審計(jì)中的應(yīng)用探索[J].計(jì)算機(jī)產(chǎn)品與流通,2018(12):8.
[4] 楊瑤姬.數(shù)據(jù)庫安全平臺模型分析[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2018(08):65-66.
[5] 劉全飛.數(shù)據(jù)庫技術(shù)在計(jì)算機(jī)審計(jì)中的應(yīng)用[J].信息與電腦(理論版),2018(11):153-154.