金融行業數據庫安全審計
行業要求:
審計內容是否至少包括:用戶的添加和刪除、審計功能的啟動和關閉、審計策略的調整、權限變更、系統資源的異常使用、重要的系統操作(如用戶登錄、退出)等。
數據庫開啟情況:
需開啟相關內容的數據庫審計功能,方能滿足需求。
審計內容 | SQL Server | Oracle | |
1 | 用戶的添加和刪除 | 可滿足 | 可滿足 |
2 | 審計功能的啟動和關閉 | 可滿足 | 部分滿足(關閉可審計) |
3 | 審計策略的調整 | 可滿足 | 可滿足 |
4 | 權限變更 | 可部分滿足 (滿足Login級別的權限變更,如果要細化到表級別,需要針對每個數據庫都創建審計,暫時不開啟細粒度的審計) | 可滿足 |
5 | 系統資源的異常使用 | (不理解定義,無從開啟) | (不理解定義,無從開啟) |
6 | 重要的系統操作(如用戶登錄、退出)等 | 可滿足 | 可滿足 |
- ?SQL Server
SQL Server只開啟了登錄成功和失敗的審計,並寫入應用程序日誌。
以下審計行為集合基本能滿足行業審計指南的要求,鑒於目前沒有旁路審計系統,該審計功能的開啟會占用系統資源,消耗部分性能。可以考慮先上生產觀察,如果有問題及時停止。可以滿足創建的審計寫入應用程序日誌,並從ELK查詢到。
SQL Server從2008開始引入了SQL Server審核(Audit),用於滿足細粒度的審計需求。可以針對特定的行為、主體和對象,細化到單個表級別。從用戶登錄、登出事件,到表的創建、插入和刪除等。可選擇感興趣的待審計行為集合。SQL Server審核(Audit)基於擴展事件。當事件觸發時,近乎實時的分發給擴展事件引擎,由它通知調度器線程池,負責將用戶創建的事件會話從內存緩存寫入到文件等目標。默認,審計事件異步寫入審計目標,性能影響很小。
審核操作類型 | 描述 | |
1 | AUDIT_CHNAGE_GROUP | 創建、修改或刪除任何審核時,均將引發此事件。 創建、修改或刪除任何審核規範時,均將引發此事件。 任何針對某審核的更改均將在該審核中審核。 |
2 | FAILED_LOGIN_GROUP | 指示主體嘗試登錄到 SQL Server,但是失敗。 此類中的事件由新連接引發或由連接池中重用的連接引發。 |
3 | SUCCESSFUL_LOGIN_GROUP | 指示主體已成功登錄到 SQL Server。 此類中的事件由新連接引發或由連接池中重用的連接引發。 |
4 | LOGOUT_GROUP | 指示主體已註銷 SQL Server。 此類中的事件由新連接引發或由連接池中重用的連接引發。 |
5 | SERVER_PRINCIPAL_CHANGE_GROUP | 創建、更改或刪除服務器主體時將引發此事件。 主體發出 sp_defaultdb 或 sp_defaultlanguage 存儲過程或 ALTER LOGIN 語句時,將引發此事件。 此事件對 sp_addlogin 和 sp_droplogin 存儲過程引發。 此事件由 sp_grantlogin、 sp_revokelogin 或 sp_denylogin 存儲過程引發。 |
6 | SERVER_PERMISSION_CHANGE_GROUP | 為獲取服務器範圍內的權限(例如,創建登錄名)而發出 GRANT、REVOKE 或 DENY 語句時,將引發此事件。 |
7 | LOGIN_CHANGE_PASSWORD_GROUP | 通過 ALTER LOGIN 語句或 sp_password 存儲過程更改登錄密碼時,將引發此事件。 |
- Oracle
Oracle提供內部審計功能,可提供標準的數據庫活動審計功能,通過參數audit_syslog_level可將審計條目寫入到預先配置好的syslog中,進而由ELK抓取,基本可滿足行業協會的要求,但部分功能有缺失,具體如下表:
審計策略 | 能否審計 | 操作語句 |
用戶的添加和刪除 | 能 | audit create user;audit drop user 或audit user(所有對user的操作,包含create,drop,alter |
審計功能的啟動和 關閉 | 部分可以 | 審計功能的開啟和關閉通過alter system語句的審計來實現:audit alter system; 在審計功能開啟的情況下可以審計對審計功能的關閉, |
審計策略的調整 | 部分可以 | 審計策略調整通過語句system audit或權限audit system來審計,當system audit被審計時,所有對審計策略的修改均可被審計,當上述語句或權限沒有被審計則無法審計策略調整,包括audit audit system本身。 |
權限變更 | 可以 | 權限變更通過對語句system grant和grant any object privilege審計 |
對性能的影響:oracle審計發生在語句執行階段,根據oracle的白皮書《Oracle Database Auditing: Performance Guidelines》在一個tcp-c相當的測試中,測試結果如下
可見審計對性能影響很小,針對具體的系統需要測試審計對系統性能的影響。
金融行業數據庫安全審計