互聯網時代,數據庫很容易發生安全事件,數據庫防火墻作為一個“保安”,盡心盡力地保護著數據庫安全,接下來,本文就帶大家去了解“高大威猛”的數據庫防火墻應該具備哪些能力呢?

一、高可用性和高性能
由于數據庫防火墻是串聯到數據庫與應用服務器之間的安全設備,因此數據庫防火墻自身需要具備高可用性和高速率并發處理能力。
二、準入控制能力
數據庫防火墻要做好一個辨識者的角色,接入數據庫也需要有授權身份才可以接入,根據不同的身份因子對人進行多維度的識別,保證身份真實性和可靠性。
三、入侵防護功能
數據庫防火墻每天都需要面對外部環境的各種攻擊,在識別真實人員的基礎上,需要對他們的訪問行為和特征進行檢測,并對危險行為進行防御,主要防御功能有:
1、SQL 注入安全防御,構建 SQL 注入特征庫,實現對注入攻擊的 SQL 特征識別,結合 SQL 白名單機制實現實時攻擊阻斷;
2、漏洞攻擊防御,由于數據庫升級困難的前提存在,需要對數據庫漏洞進行掃描識別漏洞,并對這些漏洞進行虛擬補丁,避免黑客通過不這些漏洞進行攻擊;
3、敏感 SQL 防御,即 SQL 所帶有敏感信息,對這些 SQL 需要單獨管理,只授權給可以訪問的身份,拒絕未經授權的身份進行訪問。
四、訪問控制
很多應用程序往往存在權限控制漏洞,無法控制某些非法訪問、高危操作,比如統方、絕密資料的獲取等。這些潛藏巨大風險的行為,需要進行管理和控制:
1、防撞庫,當密碼輸入次數達到預設閾值時,鎖定攻擊終端;
2、危險操作阻斷,當應用在執行全量刪除、修改等高危行為的時候,需要對這些行為進行阻斷;
3、敏感信息訪問脫敏,根據訪問者的權限,返回不同的數據,權限足夠時看到真實的數據,權限不足時返回經過脫敏的數據,避免敏感信息泄露;
4、訪問返回行數控制,可對訪問結果進行管理,避免非法一次性導出大量數據庫,導致數據的大量流失。
五、SQL白名單
SQL 白名單,就是創建應用的 SQL 白名單庫,對于安全 SQL 進行放行,對于危險 SQL 進行阻斷;SQL 白名單可以只針對可信 SQL 做特征識別、而不符合可信 SQL 特征的我們都可以認為他是未知或高危的 SQL,并進行阻斷或告警。
六、風險監控
一般來說數據庫防火墻往往會管理多個數據庫,當數據庫達到一定數量時,要監控平臺進行統一的安全監控。
七、告警
對于任何不認識的新面孔和操作都進行識別并實時告警,是數據庫安全防護必不可少的一環,包括:新發現的IP地址,應用程序,數據庫賬戶,應用賬戶,訪問對象,訪問操作,SQL 語句,因為新入場的操作多數情況下意味著威脅。對于一些訪問頻率比較低的訪問主題和操作,也進行識別和告警。如果訪問終端的 IP 地址,主機名或者 mac 地址發生變化,往往也意味著危險,審計系統也會告警。
八、全面精確的審計分析與追蹤
全面詳細的審計記錄,審計日志完整的記錄了以下基本要素:
Who?— 真實的數據庫帳號、主機名稱、操作系統帳號等真實身份。
What?— 什么對象數據被訪問了,執行了什么操作。
When?— 每個事件發生的具體時間。
Where?— 事件的來源和目的,包括 IP 地址、MAC 地址等。
How?— 通過哪些應用程序或第三方工具進行的操作。
result:通過、拒絕、告警等。