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

?

Snort在數(shù)據(jù)庫安全中的應(yīng)用研究

2010-08-07 08:20:54劉文強(qiáng)鞏青歌
關(guān)鍵詞:數(shù)據(jù)庫安全攻擊者事務(wù)

劉文強(qiáng) 鞏青歌

武警工程學(xué)院通信工程系 陜西 710086

0 引言

隨著計(jì)算機(jī)和通信技術(shù)的高速發(fā)展,數(shù)據(jù)庫作為計(jì)算機(jī)信息系統(tǒng)的核心部件,存儲(chǔ)著大量的各種軍事、商業(yè)的數(shù)據(jù),數(shù)據(jù)庫安全顯得尤為重要。其中入侵檢測(cè)作為保護(hù)計(jì)算機(jī)安全的重要手段之一也引入了數(shù)據(jù)庫安全體系之中。基于數(shù)據(jù)庫本身數(shù)據(jù)和結(jié)構(gòu)的一般都認(rèn)為是基于事務(wù)級(jí)的入侵檢測(cè),但他們基本都存在著諸多不足,比如利用數(shù)據(jù)讀寫關(guān)系的,由于數(shù)據(jù)庫數(shù)據(jù)的復(fù)雜性,造成性能和效率問題;審計(jì)日志、審計(jì)信息的冗余和對(duì)審計(jì)信息分析能力不足的問題一直難以解決等?;诰W(wǎng)絡(luò)的入侵檢測(cè)一直是研究的熱點(diǎn),也是現(xiàn)在比較成熟的入侵檢測(cè)系統(tǒng),其中代表的就是免費(fèi)開源的snort。它利用預(yù)先定義好的特征碼到網(wǎng)絡(luò)數(shù)據(jù)包的每幀來鑒定可疑流量。如果它發(fā)現(xiàn)匹配特征碼,就會(huì)馬上通知管理控制臺(tái),從而做出相應(yīng)的反應(yīng)。網(wǎng)絡(luò)級(jí)的入侵檢測(cè)有著實(shí)時(shí)監(jiān)測(cè)、快速反應(yīng)的優(yōu)點(diǎn),通過對(duì)網(wǎng)絡(luò)級(jí)入侵檢測(cè)Snort的研究,本文提出利用Snort來彌補(bǔ)事務(wù)級(jí)數(shù)據(jù)庫入侵檢測(cè)的不足,形成聯(lián)動(dòng)的入侵檢測(cè)系統(tǒng)。

1 Snort在數(shù)據(jù)庫安全中的應(yīng)用

1.1 SQL注入攻擊

SQL注入是利用WEB應(yīng)用程序中所輸入的SQL語句從對(duì)數(shù)據(jù)庫獲得未經(jīng)授權(quán)的訪問和直接檢索,這是針對(duì) WEB程序開發(fā)者在編程過程未對(duì) SQL語句傳入的參數(shù)做出嚴(yán)格的檢查和處理所造成的。事務(wù)級(jí)數(shù)據(jù)庫入侵檢測(cè)對(duì)這種常見的SQL攻擊的檢測(cè)是通過合法事務(wù)SQL的正則表達(dá)式(“指印”)來代表用戶的正常行為從而進(jìn)行檢測(cè),通過將數(shù)據(jù)庫查詢描述為查詢結(jié)果集中元組標(biāo)識(shí)符集和屬性集的集合,提出查詢的相似度計(jì)算及其聚類方法,例如,對(duì)用戶輸入的用戶名和密碼值看作是查詢結(jié)果中的元組標(biāo)示值,用戶屬性和密碼屬性作為查詢結(jié)果的兩個(gè)屬性,通過對(duì)閥值的控制來控制檢測(cè)率。但對(duì)閥值的控制是個(gè)問題,容易造成誤檢率偏大的問題。

相反,Snort在防范SQL注入的攻擊方面通過編寫規(guī)則庫對(duì)網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行檢測(cè),設(shè)置方便,配置靈活,由于很多文獻(xiàn)上都已經(jīng)提出過Snort在這方面的檢測(cè),本文只略做介紹下。正則表達(dá)式:

/ w * (( %27)|(‘))((\%6F) |o|( %4F))(( %72) |r|(\%52))/ix

其中, w * :零個(gè)或多個(gè)字符或者下劃線,( %27) | ’:單引號(hào)或它的十六進(jìn)制形式,(\%6 F|o|( %4 F))((\%72|r|-(\%52):or’的大小寫以及它的十六進(jìn)制形式。

編寫snort規(guī)則

alert tcp $EXTERNAL_NET any - > $HTTP_SERVERS$HTTP_PORTS (msg:“SQL Injection - Paranoid”; flow:to_server, established;uricontent:”.pl”;pcre

:” / w * (( %27)|(‘))((\%6F) |o|( %4F))(( %72)|r|(\%52))/ix”;classtype:Web-

Application-attack;sid:9099;rev:5;)

這樣通過對(duì)Snort規(guī)則的編寫,對(duì)關(guān)鍵詞單引號(hào),分號(hào)和雙重破折號(hào)重點(diǎn)檢查,精確的檢測(cè)出SQL注入攻擊,這樣事務(wù)級(jí)數(shù)據(jù)庫入侵檢測(cè)不需要對(duì)基本的用戶登錄信息進(jìn)行數(shù)據(jù)的聚類分析,可以集中分析審計(jì)日志等數(shù)據(jù)庫的特有數(shù)據(jù)和數(shù)據(jù)結(jié)構(gòu),提高了入侵檢測(cè)效率。

1.2 數(shù)據(jù)庫審計(jì)

數(shù)據(jù)庫審計(jì)是數(shù)據(jù)庫系統(tǒng)中用來監(jiān)視、記錄和控制用戶行為的一種機(jī)制,它使影響系統(tǒng)安全的訪問或訪問企圖留下線索,以備事后分析和追查。大多數(shù)據(jù)庫安全體制采取對(duì)數(shù)據(jù)庫中所發(fā)生的事件全部進(jìn)行審計(jì)的方法,這樣雖然可以實(shí)現(xiàn)零信息丟失,滿足安全分析和責(zé)任追蹤的需要,然而卻大大降低系統(tǒng)的時(shí)間效率和空間效率,記錄了大量無用的事件信息。所以說,對(duì)數(shù)據(jù)庫所有事務(wù)進(jìn)行審計(jì)是不必要的,很多文獻(xiàn)也提出了動(dòng)態(tài)審計(jì)的概念,即審計(jì)系統(tǒng)要具備靈活配置審計(jì)策略的能力,通過靈活、有效地審計(jì)配置,在少占用時(shí)間和空間的前提下,又能夠?yàn)榘踩录治龊拓?zé)任追究提供足夠必要的信息。

Snort作為外圍的入侵檢測(cè)系統(tǒng),能夠檢測(cè)出絕大部分網(wǎng)絡(luò)攻擊,對(duì)于可疑活動(dòng)也能夠給出相應(yīng)的報(bào)警。對(duì)于數(shù)據(jù)庫的審計(jì)恰恰需要這樣一個(gè)閥門來控制數(shù)據(jù)庫審計(jì)系統(tǒng)(圖1),審計(jì)策略要求在 Snort的報(bào)警下進(jìn)行更全面和詳細(xì)的審計(jì),這樣,通過報(bào)警后加強(qiáng)審計(jì)策略的能力,還能夠?qū)ξ<爸鳈C(jī)數(shù)據(jù)庫的行為進(jìn)行實(shí)時(shí)的報(bào)警,甚至采取相應(yīng)的措施。

圖1 數(shù)據(jù)庫審計(jì)

1.3 數(shù)據(jù)庫入侵容忍

數(shù)據(jù)庫的容忍入侵技術(shù)主要考慮在入侵存在的情況下系統(tǒng)的生存能力,保證系統(tǒng)關(guān)鍵功能的安全性和健壯性。由于新的攻擊手段形式不斷出現(xiàn),現(xiàn)有大多數(shù)防火墻和入侵檢測(cè)對(duì)已知的和定好的入侵行為監(jiān)測(cè)比較高,但對(duì)這些未知攻擊手段誤報(bào)率高,為此入侵是不可避免的,所以,研究入侵的情況下系統(tǒng)具有自診斷、修復(fù)和重構(gòu)的能力是很有必要的。

現(xiàn)階段,數(shù)據(jù)庫入侵容忍首先要確定惡意事務(wù)和受感染的事務(wù),由于數(shù)據(jù)庫具有特有的數(shù)據(jù)結(jié)構(gòu),可以通過基于事務(wù)依賴和基于數(shù)據(jù)依賴來實(shí)現(xiàn);其次,就是撤銷惡意事務(wù)和受感染事務(wù),常用的方法是回滾和補(bǔ)償?;貪L是一種后向恢復(fù)的方法,將數(shù)據(jù)庫所有的活動(dòng)回滾到不存在損壞的檢測(cè)點(diǎn),但是由于經(jīng)常需要保存且在前一監(jiān)測(cè)點(diǎn)到回滾階段的操作都要撤消導(dǎo)致系統(tǒng)開銷較大。

補(bǔ)償方法通過執(zhí)行補(bǔ)償事務(wù)來撤消提交的事務(wù)或操作步驟,補(bǔ)償法并不一定將數(shù)據(jù)狀態(tài)恢復(fù)到惡意事務(wù)或步驟未發(fā)生前的狀態(tài)。補(bǔ)償方法分為面向動(dòng)作的或面向效果的,面向動(dòng)作的補(bǔ)償方法只補(bǔ)償事務(wù)或相關(guān)步驟的操作,面向效果的補(bǔ)償方法不僅補(bǔ)償事務(wù)或相關(guān)步驟的操作同時(shí)也補(bǔ)償被相關(guān)步驟的操作所影響的其它操作。補(bǔ)償方法需要數(shù)據(jù)庫能夠辨識(shí)應(yīng)用的語義信息,所以在應(yīng)用上存在一定的限制。

在回滾過程中,全部回滾是對(duì)于系統(tǒng)安全的考慮,入侵檢測(cè)不能保證檢測(cè)出全部的惡意事務(wù)和受感染事務(wù),但對(duì)于這種普遍采用的回滾技術(shù),我們可以通過與Snort的聯(lián)動(dòng)來全部捕捉惡意事務(wù),提高回滾效率。在第一階段確定惡意事務(wù)和受感染的事務(wù)中,我們已經(jīng)通過數(shù)據(jù)庫事務(wù)級(jí)的入侵檢測(cè)確定了惡意事務(wù),這是網(wǎng)絡(luò)級(jí)入侵檢測(cè)Snort所辦不到的,但是事務(wù)級(jí)入侵檢測(cè)對(duì)于檢測(cè)用戶真正身份和地址無能為力,我們可以通過Snort來辦到。

在回滾前,我們分為三步來確定回滾事務(wù)。

(1)在檢測(cè)確定惡意事務(wù)后,與 Snort進(jìn)行聯(lián)動(dòng)通訊,分析惡意事務(wù)和受感染事務(wù)的來源。

(2)Snort對(duì)提出的這些惡意事務(wù)的地址和主機(jī)進(jìn)行分析,記錄這些攻擊者身份和主機(jī),查詢攻擊者之前除了這些以外提交的數(shù)據(jù)包,分析攻擊者的其他行為。

(3)Snort通過查詢以外數(shù)據(jù)包后,提取攻擊者提交的未察覺的受感染事務(wù),向數(shù)據(jù)庫備份與恢復(fù)提供事務(wù)信息,這樣在回滾中不僅要回滾已經(jīng)確定的惡意事務(wù),同時(shí)也要回滾那些攻擊者提交的未察覺的可疑事務(wù),如圖2所示。

這樣,在 Snort的幫助下,數(shù)據(jù)庫最大限度保證回滾數(shù)據(jù)中不含有惡意事務(wù)和受感染的事務(wù),同時(shí)也提高了系統(tǒng)效率,降低了系統(tǒng)開銷。

圖2 數(shù)據(jù)庫入侵容忍

2 方案實(shí)現(xiàn)

Snort輸出引用了靈活的插件形式,它允許Snort將報(bào)警和日志送到各種目標(biāo),使得管理員可以按照單位內(nèi)部環(huán)境來配置容易理解、使用和查看的報(bào)警和日志方法。輸出插件用來控制Snort探測(cè)引擎的輸出,在Snort中配置輸出模塊的命令如下:

Output<插件名>:<配置選項(xiàng)>

我們采用ruletype來定義動(dòng)作,將報(bào)警同時(shí)發(fā)送到Syslog和數(shù)據(jù)庫:

用以下規(guī)則應(yīng)用這個(gè)自定義動(dòng)作:

redalert tcp $HOME_NET any->$ EXTERNAL_NET 3306 (msg:”someone is sending”;flags:A+;)

這樣我們可以通過對(duì)日志和數(shù)據(jù)庫的檢索,得到報(bào)警結(jié)果,向目標(biāo)數(shù)據(jù)庫事務(wù)級(jí)入侵檢測(cè)返回相應(yīng)操作,從而實(shí)現(xiàn)我們?cè)鰪?qiáng)數(shù)據(jù)庫安全的目的。

3 結(jié)束語

現(xiàn)階段數(shù)據(jù)庫的安全僅以預(yù)防為主,事務(wù)級(jí)入侵檢測(cè)仍存在于理論上,數(shù)據(jù)庫安全依然任重而道遠(yuǎn),網(wǎng)絡(luò)級(jí)入侵檢測(cè)在一段時(shí)間內(nèi)仍然是網(wǎng)絡(luò)安全防范的主要手段,單純的研究網(wǎng)絡(luò)級(jí)或者事務(wù)級(jí)都有不可避免的缺點(diǎn),兩者有機(jī)的結(jié)合的確可以在一定程度上提高整體的安全,對(duì)兩者的聯(lián)動(dòng)問題還有待深入研究。

[1] Y.Hu,B.Panda.A data mining approach for database intrusion detection.In: Procof the 2004 ACM symposium on Applied Computing.Nicosia.Cyprus.2004.

[2] W.L.Low,J.Lee,P.Teoh.DIDAFIT: Detecting Intrusions in Databases through Fingerprinting Transactions.In:Proc.of the 4th International Conference on Enterprise Information Systems(ICEIS).Paphos.Cyprus.2002.

[3] 李振勝,鞠時(shí)光.安全空間數(shù)據(jù)庫動(dòng)態(tài)審計(jì)策略的研究與應(yīng)用.計(jì)算機(jī)應(yīng)用.2006.

[4] 鐘勇,林冬梅,秦小麟.一種基于 DBMS的無監(jiān)督異常檢測(cè)算法及其應(yīng)用.計(jì)算機(jī)科學(xué).2007.

[5] 張楠,張振國(guó).基于規(guī)則的檢測(cè) SQL注入攻擊方法的研究.陜西科技大學(xué)學(xué)報(bào).2007.

猜你喜歡
數(shù)據(jù)庫安全攻擊者事務(wù)
“事物”與“事務(wù)”
基于分布式事務(wù)的門架數(shù)據(jù)處理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
基于微分博弈的追逃問題最優(yōu)策略設(shè)計(jì)
河湖事務(wù)
管理信息系統(tǒng)中數(shù)據(jù)庫安全實(shí)現(xiàn)方法
活力(2019年21期)2019-04-01 12:16:50
正面迎接批判
愛你(2018年16期)2018-06-21 03:28:44
淺談高速公路數(shù)據(jù)庫安全審計(jì)
有限次重復(fù)博弈下的網(wǎng)絡(luò)攻擊行為研究
高校數(shù)據(jù)庫安全技術(shù)教學(xué)實(shí)踐探索
SQLServer自治事務(wù)實(shí)現(xiàn)方案探析
卓尼县| 孝感市| 车险| 阿巴嘎旗| 和林格尔县| 左云县| 南澳县| 静乐县| 石屏县| 侯马市| 临沭县| 巴中市| 台江县| 彰化县| 惠安县| 资溪县| 阳新县| 上虞市| 锦州市| 五家渠市| 涞水县| 元朗区| 汉阴县| 上林县| 和顺县| 措美县| 怀集县| 固阳县| 海原县| 新沂市| 资中县| 长白| 瑞金市| 赫章县| 任丘市| 团风县| 石泉县| 和田县| 阿合奇县| 宣城市| 永清县|