數據庫防火墻技術研究_第1頁
數據庫防火墻技術研究_第2頁
數據庫防火墻技術研究_第3頁
數據庫防火墻技術研究_第4頁
數據庫防火墻技術研究_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、數據庫防火墻技術研究數據庫防火墻是繼防火墻、下一代防火墻等網關類安全產品之后,專門針對于數據存儲的核心介質數據庫的一款安全防護產品。關于數據庫安全可以分為兩個層面,一方面是來自于外部的威脅,比如說來自黑客的攻擊、非法訪問等,第三方運維人員的不當操作和非法入侵;另外一部分是來自于內部的威脅。數據庫防火墻部署于數據庫之前。必須通過該系統(tǒng)才能對數據庫進行訪問或管理。數據庫防火墻除提供網絡防火墻的基本隔離功能以外,還提供獨立的連接授權管理、訪問授權管理、攻擊保護、連接監(jiān)控、審計等功能。部署該產品以達到牢牢控制數據庫入口,提高數據應用安全性的目的。目前,國內首款專業(yè)數據庫防火墻產品是安華金和數據庫防火墻

2、DBFirwall。數據庫防火墻的產品價值1、 屏蔽直接訪問數據庫的通道數據庫防火墻部署介于數據庫服務器和應用服務器之間,屏蔽直接訪問的通道,防止數據庫隱通道對數據庫的攻擊。2、 二次認證應用程序對數據庫的訪問,必須經過數據庫防火墻和數據庫自身兩層身份認證。3、 攻擊保護實時檢測用戶對數據庫進行的SQL注入和緩沖區(qū)溢出攻擊。并報警或者阻止攻擊行為,同時詳細的審計下攻擊操作發(fā)生的時間、來源IP、登錄數據庫的用戶名、攻擊代碼等詳細信息。4、 安全審計系統(tǒng)能夠審計對數據庫服務器的訪問情況。包括用戶名、程序名、IP地址、請求的數據庫、連接建立的時間、連接斷開的時間、通信量大小、執(zhí)行結果等等信息。并提供

3、靈活的回放日志查詢分析功能,并可以生存報表。5、 防止外部黑客攻擊威脅黑客利用Web應用漏洞,進行SQL注入;或以Web應用服務器為跳板,利用數據庫自身漏洞攻擊和侵入。通過限定更新和刪除影響行、限定無Where的更新和刪除操作、限定drop、truncate等高危操作避免大規(guī)模損失。數據庫防火墻防護能力數據庫防火墻產品具有主動防護能力。針對對數據庫的風險行為和違規(guī)操作做相應的防護與告警。分析當前各類數據庫所受威脅和防火墻的應對防護能力包括如下幾項功能:防御數據庫漏洞與SQL注入威脅:外部黑客攻擊,黑客利用Web應用漏洞,進行SQL注入;或以Web應用服務器為跳板,利用數據庫自身漏洞攻擊和侵入。

4、防護:通過虛擬補丁技術捕獲和阻斷漏洞攻擊行為,通過SQL注入特征庫捕獲和阻斷SQL注入行為。防止內部高危操作威脅:系統(tǒng)維護人員、外包人員、開發(fā)人員等,擁有直接訪問數據庫的權限,有意無意的高危操作對數據造成破壞。防護:通過限定更新和刪除影響行、限定無Where的更新和刪除操作、限定drop、truncate等高危操作避免大規(guī)模損失。防止敏感數據泄漏威脅:黑客、開發(fā)人員可以通過應用批量下載敏感數據,內部維護人員遠程或本地批量導出敏感數據。防護:限定數據查詢和下載數量、限定敏感數據訪問的用戶、地點和時間。審計追蹤非法行為威脅:業(yè)務人員在利益誘惑下,通過業(yè)務系統(tǒng)提供的功能完成對敏感信息的訪問,進行信息

5、的售賣和數據篡改。防護:提供對所有數據訪問行為的記錄,對風險行為進行SysLog、郵件、短信等方式的告警,提供事后追蹤分析工具。數據庫通訊協(xié)議解析各類數據庫防火墻產品,對于數據庫風險行為和違規(guī)操作進行安全防護的基礎。都來自于數據庫通訊協(xié)議的解析。通訊協(xié)議解析的越精準,數據庫的防護工作越周密安全。換言之,數據庫通訊協(xié)議解析的強弱是評價一款數據庫防火墻產品優(yōu)略的關鍵。下面就數據庫通訊協(xié)議解析原理做一下相關介紹。從數據通訊交互來講,數據是以包(Packet)的形式在網絡中進行傳輸的。一個包通常由2大部分組成:控制部分(metadata)和數據部分。從包的結構中,可以得到數據的“源地址(Source

6、Address)”和“目標地址(Destination Address)”,“源端口(Source Port)”和“目標端口(Destination Port)”。防火墻正式基于這些信息對數據庫進行防護。當一個包(如來自數據庫客戶端)通過防火墻時,防火墻會基于一定的規(guī)則對該包進行檢查,如檢查包的發(fā)送者是不是合法的IP(如合法的數據庫客戶端),包的目標是不是特定的數據庫服務器?如果檢查通過,包會被允許穿過防火墻。如果檢查未通過,則該包會被丟棄(Drop)(發(fā)送者什么都不知道,猶如石沉大海),或者會給發(fā)送者返回(反饋)錯誤信息(reject)。我們把前面描述的這種防御方式叫“包過濾”?!鞍^濾”可

7、工作在OSI模型(見下圖)的最底下3層或者4層。“包過濾”又可分為“有連接(stateful)”和“無連接(stateless)”兩種?!坝羞B接(stateful)”是指防火墻會記錄通過的連接狀態(tài)信息,維護相應的連接狀態(tài)數據庫,基于同一連接的數據包可免于重復檢查,這樣將提高數據包傳輸效率, “無連接(stateless)”是對每一個數據包進行檢查,通常意義上會導致網絡響應緩慢,這兩種方式各有優(yōu)缺點。安華金和數據庫防火墻(DBFirewall)實現了對主流數據庫類型通訊協(xié)議的“雙向、全協(xié)議解析”,重要的解析內容包括:SQL語句、參數化語句句柄、SQL參數、應答結果信息、結果集結構信息、

8、結果集數據等。 SQL語句的解析和表達是實現對SQL語句攻擊行為控制的關鍵;SQL注入的檢查、應用sql語句的放行,都依賴于sql語句的解析和特征捕獲。傳統(tǒng)的技術,往往采用正則表達式的方式,但該方式存在巨大的技術缺陷,一是正則匹配過程性能地下,二是對于復雜的參數情況容易產生匹配錯誤,三是通過語句的變體容易欺騙。DBFirewall為了有效撲獲SQL語句的特征,以及為了快速地對SQL語句進行策略判定,以實現數據庫防火墻的高效處理,提供了專利性的SQL語法特征技術,實現了對SQL語句的重寫。SQL重寫是在不改變原SQL語句的語義的情況下,DBFirewall對捕捉到的SQL語句進行重寫,替換原語句

9、中的參數值。SQL重寫是一個抽象的過程,便于管理和操作。SQL重寫包括以下幾個方面:l 除了單雙引號內的內容,小寫字母全部變?yōu)榇髮懽帜?;l 準確區(qū)分正負號和加減號;l 將SQL語句中的數值、單引號引起的字符串各自重寫為統(tǒng)一的占位符;l 將注釋、換行重寫為空格,將連續(xù)的空格合并為1個,去掉運算符兩端等不影響語義的空格以如下SQL語句為例:Select +0.25 * money,sum(id) From “testdb”.accounts Where id = ' G1792 ' or name !=/*this message come from Lisa*/XSeure-DB

10、F在SQL重寫的基礎上,根據SQL語法,對SQL進行了多級分類。SQL多級分類是將具有相同操作行為的不同語句合并為一類,為SQL信息的查看和策略的定制提供了便利,且SQL分類編碼操作后,易于后續(xù)的計算、操作和存儲。SQL分類主要分為三級,分類的方向由細到粗,即二級分類是在一級分類的基礎上進行的,三級分類是在二級的基礎上進行的。l 一級分類基于目前的SQL重寫,即替換所有的可變“參數”數據為固定的“參數(例如,#)”,并且將所有謂詞全部大寫化(格式化為大寫字母)等。也就是說,一級分類的輸出是經過“重寫”后的SQL語句。l 二級分類在一級分類的基礎上,對所有的謂詞、函數、比較運算符進行編碼后,生成

11、摘要的字符串編碼,該編碼就是SQL的二級分類碼。l 三級分類在二級分類的基礎上,對所有的謂詞比較運算符進行編碼后,生成的摘要字符串編碼,該編碼就是SQL三級分類碼。根據SQL分類的原則,假如有如下SQL語句:1:SELECT salary*1.5 FROM employees WHERE job_id ='PU_CLERK'2:SELECT salary*2 FROM employees WHERE job_id='SA_MAN'3:SELECT employee_id FROM department WHERE department_name = 'H

12、R'4:SELECT department_id FROM employees WHERE salary <5000;5:SELECT sum(salary) FROM employees WHERE job_id ='PU_CLERK'6:SELECT max(salary) FROM employees WHERE job_id='PU_CLERK'那么按照分類碼,DBFirewall看到的分析SQL,由三級到一級如下呈現:l SELECT FROM WHERE =n SELECT FROM WHERE = u SELECT SALARY*0

13、FROM EMPLOYEES WHERE JOB_ID='#' u SELECT EMPLOYEE_ID FROM DEPARTMENT WHERE DEPARTMENT_NAME='#'n SELECT SUM FROM WHERE =u SELECT SUM(SALARY) FROM EMPLOYEES WHERE JOB_ID='#n SELECT MIN FROM WHERE =u SELECT MIN(SALARY) FROM EMPLOYEES WHERE JOB_ID='#l SELECT DEPARTMENT_ID FROM EM

14、PLOYEES WHERE SALARY<0n SELECT MIN FROM WHERE <SELECT DEPARTMENT_ID FROM EMPLOYEES WHERE SALARY<0SQL語句格式化重寫后的結果為:SELECT 0*MONEY,SUM(ID) FROM “testdb”.ACCOUNTS WHERE ID=# OR NAME!=正式基于精準的數據庫通訊協(xié)議解析,數據庫防火墻才能對數據庫進行周密的防護。黑白名單機制數據庫防火墻進行數據庫防護的過程中,除了利用數據通訊協(xié)議解析的信息設置相應的風險攔截和違規(guī)sql操作預定義策略以外,常用的防護方式也包括通

15、過學習模式以及SQL語法分析構建動態(tài)模型,形成SQL白名單和SQL黑名單,對符合SQL白名單語句放行,對符合SQL黑名單特征語句阻斷。安華金和數據庫防火墻除了通過制定黑白名單和相應的策略規(guī)則之外,配合利用禁止,許可以及禁止+許可的混合模式規(guī)則對數據庫進行策略設置,從而對數據庫進行防護?!敖挂?guī)則”負責定義系統(tǒng)需要阻止的危險數據庫訪問行為,所有被“禁止規(guī)則”命中的行為將被阻斷,其余的行為將被放行?!霸S可規(guī)則”負責定義應用系統(tǒng)的訪問行為和維護工作的訪問行為,通過“許可規(guī)則”使這些行為在被“禁止規(guī)則”命中前被放行?!皟?yōu)先禁止規(guī)則”負責定義高危的數據庫訪問行為,這些策略要先于“許可規(guī)則”被判斷,命中則

16、阻斷。數據庫漏洞防護在數據庫的防護過程中,除了對數據庫登錄限定,惡意sql操作攔截,以及批量數據刪改進行安全防護以外。數據庫自身存在的一些漏洞缺陷所引發(fā)的安全隱患,也在數據庫防火墻的防護范圍之內。對于這些風險行為進行周密而嚴謹的防護也是數據庫防火墻價值體現的重點項。之前在CVE上公開了2000多個數據庫安全漏洞,這些漏洞給入侵者敞開了大門。數據庫廠商會定期推出數據庫漏洞補丁。數據庫補丁雖然能在一定程度上彌補數據庫漏洞,降低數據庫遭受惡意攻擊的風險度。但是數據庫補丁也存在許多適用性問題。主要包括以下三點:u 漏洞補丁針對性高,修補范圍存在局限性。包發(fā)布周期過長,存在數據泄露真空期u 補丁修復過程中存在兼容性隱患u 數據庫補丁漏洞修補周期長,風險大,消耗大量資源 區(qū)別于oracle防火墻對虛擬補丁技術的空白,安華金和數據庫防火墻和McAfee數據庫防火墻功能點上都添加了數據庫漏洞防護技術,以完善產品,力求達到對數據庫的全面防護。虛擬補丁技術可以在無需修補DBMS內核的情況下保護數據庫。它在數據庫外創(chuàng)建了一個安全層,從而不用打數據庫廠商的補丁,也不需要停止服務和回歸測試。通過監(jiān)控所有數據庫活動,并用監(jiān)控數據與保護規(guī)則相比較,從而發(fā)現攻擊企圖。當比較結果與規(guī)則匹配時,就發(fā)出一個警報,并在指定的時間內終止可疑會話、操作程序或隔離用戶,直到這個可疑的活動被審查通過。安華

溫馨提示

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

評論

0/150

提交評論