金融行业数据库安全审计
数据库安全审计
行业要求:
审计内容是否至少包括:用户的添加和删除、审计功能的启动和关闭、审计策略的调整、权限变更、系统资源的异常使用、重要的系统操作(如用户登录、退出)等。
数据库开启情况:
需开启相关内容的数据库审计功能,方能满足需求。
审计内容
SQL Server
Oracle
1
用户的添加和删除
可满足
可满足
2
审计功能的启动和关闭
可满足
部分满足(关闭可审计)
3
审计策略的调整
可满足
可满足
4
权限变更
可部分满足
(满足Login级别的权限变更,如果要细化到表级别,需要针对每个数据库都创建审计,暂时不开启细粒度的审计)
可满足
5
系统资源的异常使用
(不理解定义,无从开启)
(不理解定义,无从开启)
6
重要的系统操作(如用户登录、退出)等
可满足
可满足
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提供内部审计功能,可提供标准的数据库活动审计功能,通过参数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相当的测试中,测试结果如下
可见审计对性能影响很小,针对具体的系统需要测试审计对系统性能的影响。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。