本文讲的是 用轻代理的方式做数据库安全,一般而言,数据库安全技术,除了数据库产品本身自带的安全功能,就是从外部做保护和监控。后者无外乎漏洞管理、防火墙、审计、加密和脱敏等几种技术产品。
数据库自带的安全功能,其问题在于性能非常差,访问量稍微一大数据库的响应就会很慢,因此并不实用。典型的如Oracle自身的审计功能。
数据库防火墙的最大问题在于内部威胁
在外部保护技术中,数据库防火墙主要是由基于网络的设备,基于策略规则分析网络流量中的SQL语句,发现非法访问数据库和攻击时,产生警报。
这种监控数据库的方式,其问题在于,具有本地访问权限或能够绕过设备的内部人员可以轻松攻击数据库。同时也无法很好的解决数据库访问流量的加密问题。许多数据库安全厂商只能凭着自己的经验去解密,不仅效果不好,还要疲于应付各种版本的升级和更新问题。
此外,随着监控范围的扩大,必须在访问数据库的网络上的多个节点部署设备,以构建全方位的数据库监控层。因此,成本会很高。
本地数据库审计只能做到事后取证
本地数据库审计产品可以提供细化的审计跟踪和数据库活动的取证,但细化会影响数据库性能,而且仅提供事后取证,无法做到预防。
此外,对于监控DBA本身以及拥有DBMS特权访问权限的其他用户,审计不是一个可行的解决方案,因为这些人员可以随意打开和关闭审计,或在事后篡改日志。
针对以上问题,一种基于主机的轻代理解决方案逐渐受到用户的认可。
数据库活动监控技术——DAM
迈克菲于2011年收购了一家名为Sentrigo的公司,这是一家在数据库安全领域处于领先地位的厂商。针对数据库安全,Sentrigo的做法是,在数据库主机服务器上安装能够监控所有数据库活动的软件代理和传感器(Sensor),通过读取数据库的共享内存,来达到实时监控、阻断、审计等功能。
传感器可以自动识别主机上的所有实例,甚至可监控同一主机不同数据库类型的多个实例。而且对主机性能影响非常小,大约占CPU资源的5%,100多兆内存。因此可称之为轻代理。
其运行原理为,传感器通过只读机制和API连接到SQL缓存区的实例内存,并通过内存采样开始监控循环轮询。对于每个采样周期,传感器会根据从服务器收到的预定义策略,分析数据库实例中每个会话当前正在运行的语句和上一个语句,并确定应对哪些语句发出警报或予以阻止。
传感器还可配置为针对特定违规行为终止会话,并隔离用 户。这些预防功能,均通过本地数据库API实现,在不对数据完整性造成任何风险的情况下终止数据库会话。
迈克菲目前的数据库安全套装为三个模块,第一个为上面介绍的轻代理DAM,也是整套产品中的核心技术。第二个是VM,漏洞管理。第三个是VP,虚拟补丁。解决了从事前到事中再到事后的整个数据访问流程中的安全问题。
原文发布时间为:六月 5, 2017
本文作者:王小瑞
本文来自云栖社区合作伙伴安全牛,了解相关信息可以关注安全牛。
原文链接:http://www.aqniu.com/tools-tech/25657.html