【连载】数据库审计产品常见缺陷(1)-综述

随着信息化的发展,数据库安全问题成为当前政府和企业用户关注的焦点,数据库审计产品成为当前信息安全产品的新宠。

当前在市面上存在着几十种数据库审计产品,这些产品的来源大约有四种类型:

  1. 国内原先具有网络审计产品的厂商,在网络审计产品的基础上经过简单包装,推出的数据库审计产品,比如我国几大安全厂商推出的数据库审计产品;
  2. 国内厂商专门针对数据库通讯协议的特点,开发出专门的数据库审计产品,比如安华金和、思福迪、安恒、国都兴业和帕拉迪等;
  3. 国外的数据库审计产品,比如Imperva、Guardium等;
  4. OEM第三方的数据库审计产品,OEM对象可能是国内的产品,也可能是国外的产品(比如Imperva或韩国的DBInsight)。

从国家的安全政策上,国外的数据库审计产品或OEM国外的数据库审计产品都存在安全隐患,不在本文的评论范围内。

在这里我们主要分析下国内厂商开发的数据库审计产品的常见缺陷,当然这些缺陷并不是每种产品都具备,读者若有兴趣且条件方便的话,可以进行有针对性的测试。

1、长SQL语句漏审

原因是长SQL语句(比如超过2K)被分配到了多个通讯包中,而相关产品对跨通讯包的协议解析并未进行精细化的处理,该错误会造成全部或局部漏审,极易被攻击者利用。

2、多语句无法有效分割

SQL Server这样的数据库支持多语句同时发送,语句间缺乏明确的分割标识;由于大多的数据库审计产品是基于正则表达式,无法有效分割SQL语句,造成SQL语句的审计解析错误,如无法正确捕获SQL语句的类型、操作对象等。

3、复杂语句对象解析错误

SQL语句由于要表达各种复杂的检索条件和统计分析情况,语法非常复杂,数据库系统需要借助Yacc&Lex这样的词法和语法解析工具进行语句解析。

但大多数数据库审计产品采用的是正则匹配技术,在语句中具有子查询、关联查询等情况时无法准确获得多层对象,特别是在SQL语句中使用别名的时候;这些缺陷往往会造成错误的数据库对象记录。

4、参数值与SQL语句匹配错误

为了提升SQL处理的效率,大多数应用软件会利用数据库编程的语句预编译(Prepare)、参数绑定(bind)机制,以实现高效处理。

这种机制本质上是通过句柄追踪机制完成的,大多数的数据库审计产品能够处理简单的预编译与参数绑定的情况;但当预编译与参数绑定达到几十条时,调用情况稍微复杂,就发生了大量的参数值与语句的错误搭配,从而造成大量错审。

5、错误的应答结果,特别是影响行数解析不正确

对于SQL操作是否成功,是数据库审计的基本需求,对数据库操作读取或影响了多少行是用户的实际需求。

但SQL操作成功与否的准确记录,需要仰仗SQL语句的合理切割和句柄的准确追踪及对返回结果集的完全解析,大多数数据库审计产品在多语句情况,或者通过FETCH操作批量获取等环节下,无法准确获得查询执行的正确性以及影响行数。

6:充满失真率的应用用户关联

市场上的数据库审计产品大多数都宣传支持三层关联审计,实现SQL语句与业务用户的关联。这种基于三层关联审计的技术,是通过http协议中的参数与SQL语句中的参数的匹配,以及时间的匹配来完成的,属于模糊匹配。

这种方法在http参数经过加工后或基于逻辑判断后再发出SQL语句,也即SQL语句的参数与http参数没有直接的匹配关系时将完全失效;在高并发时更是一个灾难。 这种方法的准确率往往很难超过80%。

7、未专业化的审计界面

这个问题主要是针对基于网络审计而发展来的数据库审计产品,这种产品由于在设计之初就不是专门面向数据库用户的,因此并未按照数据库的访问类别、会话追踪、数据库对象层次进行界面组织,造成这类产品的界面极其不易使用。

8、过度冗余的审计信息存储

很多应用系统会采用动态拼接SQL语句的方式来实现对数据库的访问;这会造成大量SQL语句语法形式相同而仅仅是SQL语句中的参数值不同的语句。当前的很多审计产品将这些语句进行重复地记录和存储,造成了审计效率的低下,存储设备的浪费,并会对SQL语句的分析和排查效率造成致命影响。

以上是对8类问题的简单总结,在后续章节中将对每个问题进行展开说明。

时间: 2024-10-01 00:06:52

【连载】数据库审计产品常见缺陷(1)-综述的相关文章

【连载】数据库审计产品常见缺陷(4)数据库对象解析错误

继上期为大家介绍了有关数据库审计多语句无法有效分割的问题,本期,安华金和围绕数据库对象解析错误分析数据库审计产品常见缺陷.数据库审计产品中一个重要需求是要有效记录下来SQL语句的操作类型.访问对象:根据这些操作类型和访问对象,审计产品可以有效地制订告警策略,可以有效地根据操作类型.访问对象进行事后的追踪与检索.我国相关部门的数据库审计产品标准中要求:应对数据库网络访问对象的名称进行准确审计,包括数据库服务器名称.IP名称.数据库名称.表.视图.序列.包.存储过程.函数.库.索引和触发器等. 目前

【连载】数据库审计产品常见缺陷(3)多语句无法有效分割

继上期为大家介绍了有关数据库审计产品长SQL语句漏审的问题,本期,安华金和围绕多语句的有效分割分析数据库审计产品常见缺陷.多语句是SQL Server上的一个特定情况.在其它的数据库管理系统中,语句之间都有明确的分割标识:而在SQL Serve中语句之间可以没有明确的分隔符.下面是一个示例: use opencms SET NOCOUNT ON select * fromopencms.opencms.CMS_LOG where 1=1 or 'a' ='b' select * fromopen

【连载】数据库审计产品常见缺陷(五)参数审计错误

参数绑定是数据库编程中常用的一种方法,通过这种方法,数据库系统可以减少编译次数,快速执行,提升效率:但这种编程方法将对数据库的审计带来挑战,在笔者所见到的若干数据库审计产品中,在这种情况下都出了不少的错误.有的是漏审了语句,有的是记录下了操作的语句,但将具体执行时所使用的参数记错了或漏记了.这些缺陷对于审计产品无疑很是致命. 为了详解这种情况,我们来看一下参数绑定的基本概念.我们在常规的图形化或命令行工具中,往往都是直接写上SQL语句,比如: Select * from person_info

动态基线技术——技术开创数据库审计新纪元

近年来,随着相关法律法规的完善.国家等级化保护要求,以及行业风险管理和内控指标的出台,安全审计产品慢慢的为大家所熟悉.而近年来数据盗窃和数据泄露等高危事件频发,数据安全也越来越受各大企业和单位的重视.数据库审计就是一款保护用户数据安全的产品. 数据库审计现状与局限 数据库审计相关产品已经问世很长时间了,各大厂商的审计系统的工作原理都基本相似,如旁路数据采集.审计规则.报警等,下图展示为基本工作流程: 其中审计规则功能一直在传统数据库审计系统中占据重要位置,通过配置不同的审计规则,能够识别数据库中

虚拟化及云环境下数据库审计技术探讨(下)

在上篇文章也介绍到大部分的虚拟化及云环境下的数据审计技术探讨 接下来我们来进入更深的层次研究 场景三:应用和数据库分别托管部署在完全独立的第三方云计算平台 场景四是场景三的一种延伸与扩大,场景四主要指目前主流的第三方云平台提供商如阿里云.亚马逊.腾讯云.华为云.百度云等等,底层的硬件.存储.网络等等都对用户不透明,上层的虚拟机具体在哪个物理硬件服务器上,连接哪个物理交换机,用户一概不知道,如下图所示: 因此要用传统方式配置镜像,基本上没有可能,云平台提供商并不会提供底层资源的控制权给云主机租户,

选择数据库审计的三大理由

黑格尔曾说,"存在即合理",用在数据安全领域,同样适用.一款数据库安全产品的诞生,必有其存在的合理之处.有数据显示,超过90%的数据都是从数据库中泄露出去的,因此,围绕核心数据安全防护,数据库安全产品首当其中.从国内权威IT研究咨询机构CCW Research发布的2015年<数据库安全市场现状与发展趋势研究报告>报告中不难看到,数据库审计市场份额占据半壁江山,用户对数据库审计产品的认知度也比较高.那么,基于用户的需求,为什么要用这款产品呢,本文提出选择数据库审计产品的三个

云平台数据库安全系列之(二)数据库审计

虚拟化平台和传统网络环境共存,应用服务器和数据库服务器要在混合云平台进行数据库审计,就要区别于传统的部署方式,本文以vSphere虚拟平台为例,对数据库审计在混合虚拟化平台上的部署进行实践探讨. 一.传统数据库审计产品在虚拟化平台下的局限性 虚拟化能够应对 IT 部门面临的最紧迫难题:基础架构无序扩张,迫使 IT 部门将其 70% 的预算用于维护,而只留下很少的资源用于业务发展创新. 这一困难源于当今 x86 服务器的体系结构:它们的设计使其在同一时间只能运行一个操作系统和应用.这样一来,即使是

云端数据库审计系统

中安威士云数据库安全审计系统是中安威士(北京)科技有限公司自主研发的一款针对云数据库的安全管理工具.为用户提供在云环境下对数据库的安全审计,以实现对云数据库所面临的风险进行评估,对云数据库的操作内容进行全面审计等.产品由相互关联,且保护能力依次递增的系列功能模块构成.核心功能模块包括:敏感数据发现.性能审计.风险评估.数据库审计等.为客户带来的价值: 将云上数据访问活动可视化,提高数据安全管理能力: 满足合规要求,快速通过云等保等各种评测: 完善纵深防御体系,提升整体安全防护能力: 减少核心数据

使用sybase数据库审计系统有什么独特的产品特点

伴随网络技术的不断发展,现在已经开始有越来越多的工作都需要通过网络的方式来完成的.就是在这样的基础下,网络数据库的发展速度更是在不断增加中.在现实的生活中大家可以接触到的网络数据模型库也是非常多,但是现在最容易受到使用者喜欢的产品还是sybase数据库审计系统.虽然它开发和使用的年限都不是非常久,但是使用者的数量却是在不断的增加中,而且使用者的增加速度更是逐渐在上升当中. 其实最根本的原因还是跟sybase数据库审计系统本身所带有的产品特点离不开的.和其他的数据库非常不同的一点,便是sybase