在2002年即投入資料庫安全稽核的Guardium,於2009年底已被IBM併購。該公司的同名產品主要特色在於,它不是透過網路過濾與監控存取資料庫的封包,而是以軟體的型式,在資料庫安裝代理程式(Agent),就近觀察資料庫的活動,將搜集到的資訊,回傳至後端專屬的管理伺服器,藉以留存、分析與產出各式報表。

以代理程式監控資料庫存取,並回傳資料至管理中心

代理程式安裝在資料庫本機,包含S-Typ及S-Gate兩個模組。

S-Typ負責監控存取資料庫的活動;而S-Gate的作用是根據管理者定義的條件,擋斷(Block)不允許存取的行為,不過後者需要額外購買授權才會啟動的模組。

此外,S-Typ所搜集的存取記錄,將透過網路傳送到Guardium的硬體設備「Collector」,它是整個架構的管理中心,負責定義政策並搜集安裝各個資料庫的S-Typ所回傳的資料,即時地分析與正規化,然後儲存起來供管理者檢視各式稽核報表。

Guardium的代理程式可以監控的資料庫,包括IBM DB2、Oracle、SQL Server、Informix、MySQL、Sybase AES、Sybase IQ及Teradata等,並已支援到最新版本,而作業系統則包括Windows、AIX、HP-UX、Solaris及AS400等。

選擇以代理程式監控主要原因在於,透過網路存取資料庫的行為,只占資料庫存取應用的80%~90%,其他關於本地存取、遠端桌面連線,或者VPN等方式進行存取的行為將成為一大盲點。另一個考量是,透過網路監控,而且遇到資料存取量大的狀況,這種做法會有漏失封包的風險。

預設記錄所有存取行為

Guardium與同類型產品很大的不同點在於,它預設的機制是記錄「所有」的資料庫存取,而不是只留存政策(Policy)設定中,定義為需要記錄的行為。

為了確保設定好的政策不被有心人士偷偷竄改,所以任何人調整了政策、執行的指令、設定新報表、修改權限,或者曾經調閱任何報表,都會被Guardium記錄下來。

有多種方法解決共用帳號的問題

針對應用程式以共用帳號存取資料庫,在盡量不修改程式的前提下,Guardium有多種方式可以確認使用者身分。

首先針對WebSphere、WebLogic、Oracle等Java應用程式伺服器,它可以運用應用伺服器本身的功能,將使用者登入的帳號資訊傳送給Guardium。而.NET應用程式方面,通常會在XML、HTML訊息中夾帶使用者的帳號資訊,Guardium只需要解讀其中的訊息即可。

其他方法還包括透過應用伺服器加一段SQL語句,把使用者帳號套進SQL註解中。

以上方法都無法解決的情況,例如COBOL程式,或者傳統主從架構的應用程式,便可能需修改程式。

主機端設備所存放的資料記錄不允許刪除與修改

記錄資訊的Collector是封閉的系統,開機後便進入Guardium的管理介面,有心人士無法從作業系統層刪改任何資訊,確保內容的不可否認性。

事實上,Collector是透過Guardium原廠客製過的MySQL資料庫留存記錄,這個資料庫包含加密機制,外部應用程式無法透過任何程式連結,檢視資料庫內容,只能以Guardium的管理介面查詢稽核資料。

內建法規模組,可產出資安法規要求的報表

而報表的部分,Guardium內建上百個報表,為因應資安法規的稽核需求,內建的法規模組,可針對個資法、PCI或者沙賓(SOX)等法規,直接產出符合要求的報表。

另一個考量的重點,是若報表內含機密性的資料,例如信用卡號或身分證字號,經由使用者定義格式之後,可透過遮罩功能,避免資料外洩。

除此之外,SQL述句也可能包含機密性的資料,通常是在Where條件句中,而Guardium初步只顯現Where條件句之前的內容,作為管理者判讀存取行為、資料表、欄位等資訊的參考。至於之後條件子句的內容,則預設不顯示。若要截取後半部的內容,需明確制定成政策才會執行。

 

政策設定具彈性

政策制定有很多條件可供選擇,例如指定資料庫、資料表、欄位、時間、應用程式、使用者、IP、伺服器、防火牆⋯⋯,再結合「a n d 」、「o r 」、「n o t 」等,可以串連成相當彈性的設定。

 

依應用程式分類

Guardium分析資料庫的角度很多,例如依應用程式檢視存取記錄,任何欄位點下去之後,還可以層層下掘。

 

 

產品資訊

IBM Guardium 7

●原廠:IBM

●產品屬性:硬體+軟體

●建議售價:3萬~5萬美元

●原廠網址:www.ibm.com

●聯絡電話:(02)8723-8888

【註:規格與價格由廠商提供,因時有異動,正確資訊請洽廠商。】

 


相關報導請參考「資料庫安全稽核產品採購大特輯」


Advertisement

更多 iThome相關內容