王賢志


摘要:隨著數據庫技術的快速發展,數據挖掘成為從海量數據中發現有價值信息的一種有效方法。數據挖掘為人們使用數據庫帶來了方便的同時,也帶來了許多安全問題,其會導致數據庫系統產生推理和聚集攻擊。本文詳細的介紹了數據挖掘對數據庫系統安全帶來的影響,同時針對系統受到的推力和聚集攻擊提出了一種基于歸納和演繹的混合推理策略,防止數據庫發生信息泄露等安全問題。
關鍵詞:數據挖掘;數據庫;入侵檢測;推理攻擊
0引言
隨著計算機技術、網絡技術和信息管理技術的快速發展,海量數據充斥著人們的生活,嚴重的影響了人們的工作和學習,因此,人們迫切的希望能夠找到一種能夠從海量數據中發掘信息的工具,經過諸多計算機學者的不懈努力,人們終于找到了一種能夠發現數據中潛在模式的方法——數據挖掘,該方法一經發現,便得到了迅速的普及和使用。數據庫作為一種數據信息存貯、實現數據操作和共享的管理工具,其能夠有效地維護數據完整性、一致性和安全性,降低數據的冗余性,在信息處理過程中具有重要的作用。數據庫安全研究的主要內容是設法保證數據庫中存貯的數據安全,禁止非法用戶的數據訪問請求,同時為合法用戶提供高效的數據服務。但是,隨著數據挖掘的普及使用,數據庫安全問題已經成為人們研究的熱點,如何能夠滿足用戶需求的情況下,從海量數據中提取有用信息,同時又能保證數據提供者的隱私需要,已經成為一個關鍵問題。
1數據挖掘提升數據庫安全
1.1數據挖掘技術應用于入侵檢查和審計
入侵檢測指系統正常運行過程中,一些進程試圖破壞系統功能,或者是非法的訪問數據庫,危害系統安全的行為,入侵檢測方法包括兩類,分別是基于已知攻擊方法和基于統計規律的方法。
為了確保系統行為和監控用戶的正常運行,數據庫系統在計算和使用的過程中能夠產生數量非常巨大的審計數據。數據庫系統的管理者和擁有者最為關注的問題就是怎樣充分利用產生的極多的審計數據以及依靠這些數據衍生出的系統安全管理信息。為了有效的解決上述問題,數據挖掘應運而生。眾所周知,數據挖掘在審計安全威脅問題和檢測數據庫的入侵兩個方面發揮著無可替代的作用。利用數據挖掘,能夠準確無誤的探測出安全威脅,敏銳的發現入侵模式,這也是信息安全保障所要求的。為了有效的限制入侵,不僅能夠阻止破壞的進一步惡化,而且可以從惡意攻擊中恢復,就需要有一個精確、高效的入侵檢測技術作為保障,確保惡意攻擊能夠被及時阻止,這也是信息安全保障的前提。同時,具有高質量數據和強大的恢復功能,以及對數據惡意攻擊的反擊能力是信息安全保障研究的重中之重。
1.2發現數據庫中異常數據模式
數據挖掘工具在數據庫管理系統中發揮著重要作用,它可以發現儲存在系統的某個數據出現的異常情況。為了更加簡單明了的說明,現舉例說明:單位某個員工多次去同一個地方出差。當數據挖掘工具發現這一異常數據,數據挖掘工具會自動生成一個查詢,即這個地方有與該員工聯系非常密切的人,當查詢結果顯示出這個地方確實存在與該員工聯系密切的人時,說明該員工的這一行為被發現。同時,數據挖掘工具也可以發現數據庫中與正常數據有偏差的數值,自動生成查詢模式,經確認無誤后,系統能夠有效阻止錯誤的進一步發展。任何事物都具有兩面性,數據挖掘系統也是具有正反面的,在以上的敘述中,我們只認識到它有利的一面。數據挖掘工具既然能夠充當數據庫系統的保護者,它也可以被攻擊者當做攻擊數據庫系統安全的強大破壞者。
2數據挖掘對數據庫安全的潛在威脅和解決措施
2.1數據挖掘在推理和聚集攻擊中對數據庫安全造成的危害
數據庫安全面臨著眾多的威脅和攻擊,通過總結和分析發現推理和聚集攻擊是面臨的首要威脅,所謂的推理和聚集攻擊是指當用戶在數據庫中實施查詢,進而得到具體的返回信息,之后又從返回信息中推算出用戶無權訪問的信息。
為了研究出解決這個威脅的有效辦法,經歷了數十年的研究,雖然得到了一些成效,但是隨著數據挖掘工具的出現,這個問題對數據庫安全的威脅又更加嚴重了。因為在數據挖掘工具還沒有出現之前,任何一個有推理攻擊企圖的人必須通過自己的能力對獲得的數據進行分析,進而發現有價值的東西。隨著數據挖掘工具的誕生,雖然它可以對數據庫的查詢結果進行簡單、快速、高效的智能化數據分析和處理,幫助用戶獲取有價值的信息。但是,也方便了有推理攻擊企圖的人獲得信息,為數據庫安全產生更大的威脅。通常情況下聚集攻擊和推理攻擊都是由系統的合法用戶發起的。攻擊發生的詳細過程如下:首先,由攻擊者確定具體的推出信息,經過判斷確定推理需要的信息,由此構造幾個相關查詢,然后利用合法用戶身份登錄進入數據庫系統,發出查詢指示獲得系統返回結果,最后分析獲得的系統響應,由此就可以順利推斷出攻擊所需的信息。單一的敘述過程可能會覺得復雜,我們通過一個形象的例子來解釋:假設某個企業的數據庫中儲存著員工的姓名、工作證號以及月工資,從表1、2可知,員工姓名和收入分開存放都是公開的,但是當兩項信息放在一起時則需要保密的敏感信息,我們就假設保密的信息是員工的月收入,由于數據庫系統不允許用戶使用員工姓名獲得員工工資,因此在存放時,信息被分成兩張表來存放,其中一種是員工的工作證號和月收入,另外一張則是員工姓名和工作證號。當用戶想獲得某個指定的員工月收入信息時,可以通過兩次訪問獲得所需信息,然后在獲得的信息做有效結合就能夠獲得指定員工的月收入信息。
2.2基于推理控制器的數據庫安全技術
推理攻擊和聚集攻擊的本質是計算機用戶的應用需求的特點造成的,其查詢語義可能導致信息泄露。通常情況下,用戶只需要了解使用計算機進行處理的用戶需求的應用背景,就可以根據數據庫系統的查詢結果獲得用戶期望隱藏的數據。
為了解決上述問題,許多學者對其進行了研究,本文基于前人的基礎,提出了一種基于歸納和演繹邏輯相結合的防止推理和聚集攻擊的方法,如圖2所示。該方法基于安全約束的概念,在數據庫管理系統中插入了一個推理引擎模塊,推理引擎采用歸納邏輯,其主要的作用既是進行使用歸納規則,對用戶查詢的結果進行推理,以便判用戶查詢的數據是否違反數據庫系統設定的安全約束,如果違反了系統安全策略,數據庫系統將會阻止用戶查詢的數據流出系統,泄露信息。
推理引擎主要由一個推理控制器組成,該控制器可以查詢數據庫,數據庫系統響應該控制器,該控制器可以根據數據庫系統返回的查詢結果進行歸納,將會得到一些啟發規則,這些規則可能違反數據庫安全約束,導致系統泄露一些敏感數據。通過對比,推理控制器能夠發現是否存在違反安全約束的啟發規則,如果存在,其就會通知數據庫管理系統,系統管理員就會獲得公開相關數據導致系統安全信息泄露,阻止系統輸出用戶查詢數據。
3結論
隨著數據挖掘技術的改進,數據挖掘工具對數據庫安全帶來了更多的威脅,具有更高的挑戰性,本文提出的方法并不能完全防止數據庫安全信息的泄露,但是,在未來時間內,通過諸多學者的共同努力,數據庫安全必將得到長足發展,具有更高的安全防護能力。endprint