【知识点 | 数据库审计产品八大常见缺陷】-凯发k8游戏

知识点 | 数据库审计产品八大常见缺陷
作者:安华金和 发布时间:2019-08-09

伴随互联网、大数据的高速发展,全球信息化建设不断深入,数据库安全问题现已成为政府、企事业单位用户关注的焦点。当前市面单是数据库审计产品就多达几十种,可大致分为四种类型:

第一种:由各大网络安全厂商,在其既有网络审计产品的基础之上,经过简单包装推出的数据库审计产品;

第二种:由安华金和等国内细分领域安全厂商,针对数据库通讯协议特点开发出的,专门的数据库审计产品;

第三种:imperva、guardium等国外数据库审计产品;

第四种:韩国的dbinsight等国内外第三方oem的数据库审计产品。 

图片1 副本.png 

作为专业的数据库安全厂商,凯发k8游戏梳理、总结了国产数据库审计产品常见的八类缺陷: 

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语句的分析和排查效率也会造成严重影响。 

图片2 副本.png 

安华金和数据库安全审计系统可以有效避免以上类缺陷,为广大用户提供专业、高效、安全、可靠的数据库安全防护与管控支撑,让数据使用更安全。

网站地图