返回顶部

产品新闻

数据防御用哪种数据库防火墙更安全

日期:2018-07-11 点击:     关键词:数据库防火墙,数据防御

2018-07-11
数据防御用哪种数据库防火墙更安全?如今,数据是企业的核心力。因此,数据安全性凸显的尤为重要。要实现危险行为的过滤,数据库防火墙必需串联部署,才能形成数据库的安全屏障。这要求其既要发挥抵御威胁行为的功能,同时又不能影响正常的应用访问,造成业务中断。

通常来讲,数据库防火墙可以通过两种方式实现威胁防御:中断会话和语句拦截。

1.中断会话

直接切断应用与数据库的会话连接,这种方式粗暴简单,也最易实现。这种防护方式也是很多不成熟的数据库防火墙产品所提供的解决方案。我们知道数据库的访问行为,来自DBA等运维人员及应用系统的访问调用,这其中应用系统的访问更为频繁。对于业务连续性的要求也最高,中断会话等于业务瘫痪,显然不可取。


数据库防火墙,数据防御

2.语句拦截

拦截语句的方式是指在保持原有会话畅通的基础上,精准拦截威胁语句。既不破坏业务连续性,又能将风险语句过滤下来。这考验数据库防火墙对SQL语句的精准解析、风险策略的灵活和适用性,也是实现数据库应用关联防护的基础所在。

应用关联审计——准确定位应用访问信息

接触过数据库审计产品的朋友应该知道,“三层关联审计”功能在不少数据库审计产品中已经实现,即通过“时间戳”等方式从数据库访问信息中捕获应用账号、IP等应用关联信息。但众所周知,“时间戳”的方式在功能上具有极大的缺陷——关联审计信息并不准确,即使是在旁路审计上应用,也已经广受诟病,更何况串接部署的数据库防火墙。一旦解析错误,将造成正常语句被拦截, 严重影响业务运转。

基于“应用插件”实现“应用关联审计”的理念是由安华金和在国内首先提出,目前也在行业内得到更广泛的应用。这种解析方式,是以一个简易的jar包集成到应用系统,从而完成部署,在并发达到上千级别的连接是,仍然能实现100%准确关联,以精确的方式捕获到应用端相关信息。同时,这种解析能力需要具备高适用性,除了适用于Weblogic、tomcat、Websphere、Jboss等主流的应用服务器,也能支持F5等负载均衡模式下针对代理IP的关联审计挖掘,准确定位应用访问信息。

具备保持会话前提下的语句拦截功能,并能提供精准应用关联能力,如此看来,实现数据库的应用关联防护已经具备非常坚实的基础。最后一步,基于多维度匹配灵活的安全策略,是实现应用关联防护的最后一锤。

数据防御有效的安全策略:高细粒度的安全策略设定

精细化的安全策略需要具备高细粒度,能够基于单条策略进行多层次设定。将应用账号、客户端IP、SQL语句等进行绑定,实现对应用用户进行访问行为控制。譬如,客服人员(应用账号)只能基于指定的IP或IP端进行数据库访问,并且其执行的语句仅限于指定的若干语句模板,否则视为风险访问、违规操作,会直接被阻断或被拦截。

数据库防火墙可以针对指定的访问对象进行行为控制,即针对某一数据库的某表、某字段进行增、删、改、查的控制。例如,寿险账单的用户电话号码就是以数据库的表字段进行存储。那么,应用关联防护在实现上,可以限制仅某些账户(如:业务主管)可以进行上述数据库字段的查询;某些账户(如:业务经理)可以进行上述数据的修改。

如果防火墙的防护粒度仅限于“数据库字段”,那么应用业务中更为深入的控制是否能满足呢?譬如,业务经理仅能查询和自己有关的用户电话号码,即数据库“电话号码字段”中的部分信息。在数据库防火墙中,组成一条规则的元素中包括“报文关键字”这一特性,即可以通过配置“正则表达式”匹配SQL语句中的关键字,如果命中即视为风险。例如:select 账户,电话号码 from 业务表 where 账户=”张三”;防火墙可以作出如下限定:如果关联发现执行该语句的账户不是“张三”,那么执行该语句时即视为风险语句进行拦截。

同理,数据库防火墙将行为建模中捕获到的诸多元素,通过多维度的设置、排列组合即可实现多样性的防护规则,适用不同的访问场景,这如同在数据库前端织就了一张牢不可破的网。

400-0806-056