【数据库审计系统简介】
什么是数据库审计?
数据库审计是记录数据库被访问行为的日志系统。
访问数据库的一般有两种行为,一种是应用服务区的访问,一种是数据库运维人员的访问。
数据库审计(简称dbaudit)能够实时记录网络上的数据库活动,对数据库操作进行细粒度审计的合规性管理,对数据库遭受到的风险行为进行告警,对攻击行为进行阻断。它通过对用户访问数据库行为的记录、分析和汇报,用来帮助用户事后生成合规报告、事故追根溯源,同时加强内外部数据库网络行为记录,提高数据资产安全。
黑客的sql注入攻击行为,可以通过数据库审计发现。
数据库审计系统能干什么?
性能监控
sql吞吐、会话监控、性能瓶颈
攻击预警
对漏洞攻击、sql注入、敏感语句、风险操作等进行预警。
事后追溯
具有基本行为审计、应用关联分析、记录全、准、可读性高。
告警通知
一般可通过短信、邮件、snmp、syslog进行告警通知。
数据库审计主要功能
数据审计经历的技术:
第一阶段:流量行为审计
实现了对osi七层模型中的网络层到会话层的覆盖,主要对数据库访问行为进行分析和统计
第二阶段:内容审计阶段
实现了osi七层模型中的表示层到应用层的覆盖,利用关键字进行模糊匹配,对数据库访问行为实现内容记录,如登陆账户、sql语句等
第三阶段:语法解析阶段
主要集中在应用层,实现对sql语句的语义分析,尽可能的将操作数据库的sql语句进行细颗粒解析,比如账户名、数据名等等
第四阶段:大数据审计阶段
解决面向对象的m语言安全设计问题,全面支持大数据审计,hive、hbase、mogodb等
数据审计系统可审计的风险项:
功能项策 略 元 素登录风险对ip、mac、客户端、用户名、登录密码、时间等进行风险告警
影响行风险对超过指定行数的更新、删除、查询和导出行为进行告警
权限风险对用户、操作(dml、ddl、dcl)和对象进行访问控制风险定义。 增加update nowhere和delete nowhere等高危操作的风险告警
漏洞攻击对符合cve上公开的数据库漏洞攻击特征的访问进行告警
sql注入对符合sql注入特征的访问行为进行告警
sql黑名单精确地描述,出现了哪些语句就要进行告警(比如是一个要求授权很高的语句)
登录许可通过ip、mac、客户端、用户名、时间等因素描述信任的,不需要告警的登录
sql白名单大量的应用sql语句属于来自于应用的正常访问,可以不需要告警
白名单规则通过用户、操作、对象、时间等因素描述许可以信任不需要告警的访问
双向审计:
通过对双向数据包的解析、识别及还原,不仅对数据库操作请求进行实时审计,而且还可对数据库系统返回结果进行完整的还原和审计,包括数据库命令执行时长、执行的结果集等内容;
操作行为内容和描述用户行为数据库用户的登录、注销
数据定义语言(ddl)操作create、alter、drop等创建、修改或者删除数据库对象(表、索引、视图、存储过程、触发器、域等等)的sql指令
数据操作语言(dml)操作select、delete、updata、insert等用户检索或者修改数据的sql指令
数据控制语言(dcl)操作grant、revoke定义数据库用户的权限的sql指令
其他操作包括execute、commit、rollback等事务操作指令
数据库审计系统的主要功能架构:
5w1h的行为审计:
数据安全需求描述who(谁干的)数据库用户名、操作系统用户名、应用用户名
where(在什么地方)数据库客户端ip mac、应用客户端ip
when(什么时间)发生时间、耗时时长
what(干了些什么)操作对象是谁、操作是什么
how(怎么干的)sql语句、参数
结果怎么样是否成功、影响行数、性能情况
【数据库审计系统部署方式】
数据库安全审计系统支持旁路审计、虚拟化审计以及本地审计三种部署方式。
1、旁路审计
系统支持旁路部署模式,在无须插件植入数据库的前提下,实现数据库通讯流量的全量解析和审计。旁路模式下系统并不直接接入数据库网络,而是将网络流量镜像传输给审计系统,系统通过网络监听口捕获镜像流量完成审计。
2、虚拟化审计
系统支持虚拟环境部署,可适用于主流私有云环境(如:青云、华为云、阿里云、腾讯云等),可以支持虚拟机环境部署(如 vmware、kvm 等)。系统可基于 centos 操作系统解压安装。
3、本地审计
数据库的本地操作行为包括:tcp 式协议访问、客户端工具直连访问。系统通过部署rmagent 组件可以利用 npcap 抓取本地“回环口”流量,并将采集到的数据库本地通讯信息,通过内部网络传递给审计设备完成本地流量解析。
数据库客户端工具(例如:sqlplus)部署于数据库服务器,可以直连数据库 server进行操作,此类信息无法通过回环口抓包获取。系统通过向客户端工具植入插件的方式,获取操作日志,并传递给 rmagent 完成信息采集,从而实现全量的数据库本地行为记录。
试用申请