數(shù)據(jù)庫安全審計常見8種缺陷_第1頁
數(shù)據(jù)庫安全審計常見8種缺陷_第2頁
數(shù)據(jù)庫安全審計常見8種缺陷_第3頁
數(shù)據(jù)庫安全審計常見8種缺陷_第4頁
數(shù)據(jù)庫安全審計常見8種缺陷_第5頁
全文預覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

?2016數(shù)據(jù)庫安全審計常見8種缺陷作者安華金和劉曉韜隨著信息化的發(fā)展,數(shù)據(jù)庫安全問題成為當前政府和企事業(yè)單位用戶關(guān)注的焦點,數(shù)據(jù)庫審計產(chǎn)品已經(jīng)成為當前信息安全產(chǎn)品的盛寵。當前在市面上存在著幾十種數(shù)據(jù)庫審計產(chǎn)品,這些產(chǎn)品集中起來大約可分四種類型:在網(wǎng)絡(luò)審計產(chǎn)品的基礎(chǔ)上經(jīng)過簡單包裝推出數(shù)據(jù)庫審計產(chǎn)品的既有網(wǎng)絡(luò)審計產(chǎn)品廠商,比如國內(nèi)幾大安全廠商推出的數(shù)據(jù)庫審計產(chǎn)品,安全圈都知道,不再例舉;針對數(shù)據(jù)庫通訊協(xié)議的特點開發(fā)出專門的數(shù)據(jù)庫審計產(chǎn)品的國內(nèi)細分領(lǐng)域安全廠商,比如安華金和、思福迪、國都興業(yè)、帕拉迪等;國外的數(shù)據(jù)庫審計產(chǎn)品,比如Imperva、Guardium等;OEM第三方的數(shù)據(jù)庫審計產(chǎn)品,OEM對象可能來自國內(nèi),也可能來自國外,比如Imperva或韓國的DBInsight。隨著國產(chǎn)化采購政策的推動,處于安全性的考慮,國外數(shù)據(jù)庫審計產(chǎn)品,不在本文的評論范圍內(nèi)。筆者將重點對國內(nèi)數(shù)據(jù)庫審計產(chǎn)品常見缺陷進行分析。以下分門別類,針對最常見的8類數(shù)據(jù)庫安全審計產(chǎn)品缺陷展開講解。長SQL語句漏審大多數(shù)的SQL語句都在1K以里長度,市面上的數(shù)據(jù)庫審計產(chǎn)品大多都能準確記錄下,也能實現(xiàn)正常的解析;但在SQL語句超過1.5K時,很多的數(shù)據(jù)庫審計產(chǎn)品就會發(fā)生漏審,或者只能審計下部分SQL語句。一般Oracle一個通訊包的長度在2K,單一包內(nèi)能夠容納的語句長度大約在1.4K多一點(大約為1460);超過這個大小的SQL語句一般會拆分成多包;在Oracle11g下通常通訊包為2K,最大可以達到8K;對于Oracle數(shù)據(jù)庫沒有明確說明可兼容的SQL語句的長度,有的說32K或64K是個臨界點,但筆者也曾作過嘗試2M做的SQL語句也能發(fā)送并被Oracle正常解析。對于一些數(shù)據(jù)庫審計產(chǎn)品,由于沒有將多個SQL通訊包進行有效解析和關(guān)聯(lián),在發(fā)生長SQL語句時會發(fā)生無法解析或解析不全的情況;具體表現(xiàn)是,對于長SQL語句并未記錄,或僅記錄了前半部分。這種情況的危害是,對于有些業(yè)務(wù)系統(tǒng)中自身就包含長SQL語句,比如經(jīng)分系統(tǒng),報表系統(tǒng),這些SQL語句會被漏記;同時,一些黑客或攻擊人員會利用這樣的一些漏洞,進行數(shù)據(jù)庫攻擊而不留下痕跡。比如,若某個數(shù)據(jù)庫審計產(chǎn)品,是基于單包解析機制進行的,則對于超過1.5K的SQL語句無法記錄或僅記錄了前1.5K,則攻擊者可以首先加入1.5K長的注釋,然后再寫語句,這樣會發(fā)生漏審或被審計下來的信息無效。多語句無法有效分割多語句是SQLServer上的一個特定情況。在其它的數(shù)據(jù)庫管理系統(tǒng)中,語句之間都有明確的分割標識;而在SQLServe中語句之間可以沒有明確的分隔符。下面是一個示例:useopencmsSETNOCOUNTONselect*fromopencms.opencms.CMS_LOGwhere1=1or‘a(chǎn)’=’b’select*fromopencms.opencms.CMS_HISTORY_PROJECTSwhere1=1在這些語句之間沒有類似于;號這樣的明確分隔標識符;它們實際代表了四條語句:useopencmsSETNOCOUNTONselect*fromopencms.opencms.CMS_LOGwhere1=1or‘a(chǎn)’=’b’select*fromopencms.opencms.CMS_HISTORY_PROJECTSwhere1=1SQLServer會將這些語句不加分割地組織在一個數(shù)據(jù)庫通訊包中發(fā)送;對于一些專業(yè)化程度不高的數(shù)據(jù)庫審計產(chǎn)品,會將這些語句作為一條語句審計下來。有效地實現(xiàn)多語句分割,需要非常專業(yè)的SQL解析技術(shù)。一些簡單的方法,比如用select、use、set這樣的關(guān)鍵字來進行語句分割,稍微復雜的情況就不好處理了;下面這個示例,就無法用這種簡單的方法處理:Select*fromt1wheret1.col1=1unionselect*fromt2wheret2.col1=1select*fromt2wheret2.col1=1即使采用稍微復雜一些的技術(shù),比如正則表達式,也很難做到準確切割;非專業(yè)化的數(shù)據(jù)庫審計產(chǎn)品都存在這個缺陷。對無法準確切割多語句的缺陷,在不同的產(chǎn)品中表現(xiàn)不同,所造成的審計問題也不同,但大體可以總結(jié)為如下幾點:(1)在審計記錄中,不能準確記錄下每條語句的SQL操作類型,從而造成一些高危操作不能有效地被識別或告警,比如drop、truncate這些語句。(2)在審計記錄中,不能準確記錄下每條SQL語句的數(shù)據(jù)庫對象,從而造成對敏感對象的訪問不能有效地被識別或告警。(3)在審計記錄中,不能準確地記錄每條語句是否執(zhí)行成功;比如多條語句中第一條語句執(zhí)行成功,后面的語句執(zhí)行失敗了,往往會被整體記錄為一個結(jié)果,往往記錄的結(jié)果是成功。(4)在審計記錄中,不能準確地反饋出每條語句造成的影響行數(shù),從而也無法觸發(fā)基于影響行的安全策略;往往記錄下來的都是第一條語句的影響行,其余語句的影響行都被忽略掉了。不夠?qū)I(yè)化的審計界面這個問題主要是針對基于網(wǎng)絡(luò)審計而發(fā)展來的數(shù)據(jù)庫審計產(chǎn)品,這種產(chǎn)品由于在設(shè)計之初就不是專門面向數(shù)據(jù)庫用戶的,因此并未按照數(shù)據(jù)庫的訪問類別、會話追蹤、數(shù)據(jù)庫對象層次進行界面組織,造成這類產(chǎn)品的界面極其不易使用。過度冗余的審計信息存儲很多應(yīng)用系統(tǒng)會采用動態(tài)拼接SQL語句

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論