freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据库安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课
FreeBuf+小程序

FreeBuf+小程序

官方公众号企业安全新浪微博

国内领先的互联网安全新媒体,同时也是爱好者们交流与分享安全技术的社区

做了,不等于做对了!数据库审计不需要“形式主义”
2019-08-14 13:51:41

放眼数据库安全市场,数据库审计可以说是用户接受度最高的首选产品。可如果进一步观察就会发现,很多用户并没有通过应用数据库审计产品实现对于安全风险的有效监控,不过是为了应付检查或满足合规要求摆摆样子,事实上沦为“僵尸”系统。

安华金和看来,简单归咎于“用户安全意识不强”显然有失公允,相反地,用户“忽视”数据库审计的主要原因是产品不好用——违规访问时不告警;正常操作下却频繁告警...如果一直开着,就要不停地处理误报,十分耗费精力。

图片1 副本.png

可为什么会有如此多的误报?Sql的解析是关键!

目前,市面上的数据库审计产品按照解析方式的不同主要分为两类:

其中多数采用的,是基于正则表达式匹配的审计技术;

此外,还有基于语法、语义进行协议解析的审计技术。

 然而通过测试可以发现,前者的准确率明显低于后者,这是为什么?因为两者的技术原理不同:

 1、基于正则表达式的解析技术

正则表达式是一种“傻瓜式”的通用字符串匹配方法,通常用于在简单场景下匹配指定的字符。而对于超长、多层嵌套、多表关联等复杂的SQL语句,使用正则表达式很容易造成误识别或漏识别。

2、基于语法、语义的解析技术

此种解析技术采用的是“智能”理解的方式,不受限于SQL语句的长度或复杂度等因素,能够精确定义每一条SQL语句,准确理解其真正的含义,从而实现精准告警。 

让我们用一个简单的例子,更加直观地进行理解:

用户希望的安全策略是:仅对b表插入数据的SQL操作定义为风险。

正则表达式配置规则思路:语句中包含insert into、b等关键字。

语法、语义解析技术思路:语句操作关键字为insert into,且作用表对象为b。 

这时候,数据库接收到一条访问请求:insert into a select * from b;

若通过正则表达式匹配SQL后:发现该语句中包括insert into和b关键字,误判其为风险操作——进行告警;

若通过语法语义解析后:理解该语句是要将test b中的所有数据插入到a中,因而准确判定其为非风险操作——不予告警。

图片2 副本.png

除SQL语句解析能力外,通过在应用系统中部署agent,还可以准确地将应用会话与数据库会话进行唯一的组合匹配,有了唯一的组合匹配即可实现百分百的信息关联;而传统数据库审计大多是对应用前端的流量做同时镜像,再通过时间戳进行匹配关联,往往会在高压、高并发的场景下发生“张冠李戴”的错审问题。

对于数据库审计而言,做了,不等于做对了!数据库审计不需要“形式主义”,只有真正为用户解决问题、创造价值的数据库安全产品,才不会沦为凑数的“僵尸”。安华金和,十年专注数据库安全治理,帮助用户让数据使用更安全。

本文作者:, 转载请注明来自FreeBuf.COM

被以下专栏收录,发现更多精彩内容
+ 收入我的专栏
评论 按时间排序

登录/注册后在FreeBuf发布内容哦

相关推荐
  • 0 文章数
  • 0 评论数
  • 0 关注者
登录 / 注册后在FreeBuf发布内容哦