当前位置:首页 > 智能硬件 > 安全设备/系统
[导读] 一、概述 数据库防火墙仿佛是近几年来出现的一款新的安全设备,但事实上历史已经很长。2010年,Oracle公司在收购了Secerno公司,在2011年2月份正式发布了其数据库防火墙产品(

一、概述

数据库防火墙仿佛是近几年来出现的一款新的安全设备,但事实上历史已经很长。2010年,Oracle公司在收购了Secerno公司,在2011年2月份正式发布了其数据库防火墙产品(database firewall),已经在市场上出现很多年头了。由于数据库防火墙这个词通俗易懂,和防火墙、Web防火墙、下一代防火墙等主流安全产品一脉相承,很多公司也就把自己的数据(库)安全产品命名为数据库防火墙。每家公司对于数据库防火墙的定义各不相同,侧重点也不一样。也就是说,虽然大家都在说数据库防火墙,很有可能是两个完全不同的数据(库)安全设备。

二、什么是数据库防火墙

数据库防火墙顾名思义是一款数据(库)安全设备,从防火墙这个词可以看出,其主要作用是做来自于外部的危险隔离。换句话说,数据库防火墙应该在入侵在到达数据库之前将其阻断,至少需要在入侵过程中将其阻断。

1. 如何定义外部?

至于如何定义外部威胁,则需要对于数据库边界进行明确的界定,而这个数据库边界的界定则具有多变性。第一种定义,从极限的角度来看,由于现在网络边界的模糊,可以把所有来自于数据库之外的访问都定义为外部。如果是这个定义来看,防火墙承载的任务非常繁重,可能不是一个安全设备所能够承担的。第二种定义是数据中心和运维网络可以被定义为内部访问,其他访问定义为外部访问,让防火墙不需要去承载内部运维安全和员工安全,从而更好的工作。

综合看来,我们采用第二种定义,数据库防火墙主要承载数据中心和运维网络之外的数据(库)安全工作。

2. 如何定义数据库防火墙?

一旦准确的定义了什么是外部之后,什么是数据库防火墙就比较清楚了。运维网络之外的访问我们都可以定义为业务访问。

数据库防火墙是一款抵御并消除由于应用程序业务逻辑漏洞或者缺陷所导致的数据(库)安全问题的安全设备或者产品。数据库防火墙一般情况下部署在应用程序服务器和数据库服务器之间,采用数据库协议解析的方式完成。但这并不是唯一的实现方式,你可以部署在数据库外部,可以不采用协议解析。从这个定义可以看出,数据库防火墙其本质目标是给业务应用程序打补丁,避免由于应用程序业务逻辑漏洞或者缺陷影响数据(库)安全。

常见的应用程序业务逻辑漏洞和缺陷:

SQL注入攻击

cc攻击

非预期的大量数据返回

敏感数据未脱敏

频繁的同类操作

超级敏感操作控制

身份盗用和撞库攻击

验证绕行和会话劫持

业务逻辑混乱

3. 数据库防火墙的常见应用场景

(1) SQL注入攻击

SQL注入攻击是数据库防火墙的核心应用场景,甚至可以说数据库防火墙就是为了防御SQL注入攻击而存在的。SQL注入攻击是很古老的攻击手段,特别是互联网普及之后,一直是主流的安全攻击手段。需要特别注意的是,SQL注入攻击的发生不是由于数据库的漏洞导致,而是因为应用程序漏洞和缺陷导致,但是受到伤害和影响的则是数据库。我们的业务应用程序是水平参差不齐的公司和工程师撰写,其代码质量会远远比不上Oracle,微软等大牌公司的产品,SQL注入以及其他可能的漏洞和缺陷存在是必然的事件。甚至可以认为,只要复杂度超越一定程度的任何业务应用程序都会存在SQL注入漏洞。

SQL注入攻击之所以难以防御,其主要原因是其攻击是通过业务应用程序发起的,传统上部署的所有安全措施对于SQL注入攻击基本无效,使其可以简单到达企业最为核心的数据库内部。

(2) cc攻击

即使一个没有任何缺陷的应用程序也可以简单的发起cc攻击。每个应用程序都会存在资源消耗特别高的某些操作,入侵者只要同时调度这些高资源消耗的操作,就会导致数据库服务器失去响应。

(3) 非预期的大量数据返回

由于应用程序缺陷,在某些操作中返回了计划之外的大量数据。大量数据返回很容易引起安全性问题。

(4) 敏感数据未脱敏

由于历史原因,现有应用程序很少对于敏感数据进行脱敏显示。为了遵循新的安全法规和规则,为了更好的保护客户和公司,在很多情况下我们需要对于应用程序返回数据进行脱敏。

(5) 频繁的同类操作

通过应用程序不断的频繁获取敏感信息资料是敏感信息泄露的主要通道之一,数据库防火墙可以通过延迟,通知等响应方式来降低此类数据泄露风险。

(6) 超级敏感操作控制

很多应用程序往往存在着权限控制漏洞,无法控制某些敏感操作。比如统方,比如绝密资料的获取等等。

(7) 身份盗用和撞库攻击

撞库攻击是互联网最大的安全风险之一,绝大部分撞库攻击都是为了身份盗用。

(8) 验证绕行和会话劫持

由于应用程序缺陷导致起验证安全机制没有生效,比如验证码等,或者会话被劫持导致业务应用程序被非法控制。

(9) 业务逻辑混乱

由于应用程序漏洞导致业务逻辑混乱,比如在审批中不检查前置流程的存在性和合规性,直接触发下一个流程。

4. 数据库漏洞检测防御和数据库防火墙

大家可以观察到,很多数据库防火墙都具有数据库漏洞检测和虚拟布丁等功能,甚至于把数据库漏洞检测防御变成了数据库防火墙的核心功能。这个是对于数据库防火墙理解的典型误区,数据库防火墙的核心是检测和防御业务应用程序漏洞而不是数据库漏洞。

当然数据库防火墙部署数据库漏洞检测也有其逻辑基础:当入侵者通过业务应用程序漏洞入侵数据库,特别是SQL注入攻击的时候,入侵者为了获取更大的入侵收益,往往会利用数据库漏洞进行进一步攻击。从紧密流程环节来看,在很多场合下,数据库漏洞攻击可以被看作SQL注入攻击的一个环节,一个成果扩大环节。

三、数据库防火墙和Web防火墙

1. Web防火墙

很多人可能会问,Web防火墙也能够防御SQL注入攻击,我为什么还要部署数据库防火墙?首先我们来看看WAF能做些什么:

SQL注入攻击

XSS攻击

CSRF攻击

SSRF攻击

Webshell后门

弱口令

反序列化攻击

命令/代码执行

命令/代码注入

本地/远程文件包含攻击

文件上传攻击

敏感信息泄露

XML实体注入

XPATH注入

LDAP注入

其他

从这个列表看,显然Web防火墙和数据库防火墙所承载的目标区别比较大,SQL注入攻击攻只是两种不同防火墙的为数不多的交叉点。

2. 数据库防火墙是SQL注入防御的终极解决方案

数据库防火墙和Web防火墙部署位置的不同,决定了两种不同产品对于SQL注入攻击的防御策略和效果会大不相同。

部署位置:Web防火墙作用在浏览器和应用程序之间,数据库防火墙作用在应用服务器和数据库服务器之间。

作用协议:Web防火墙作用在Http协议上,数据库防火墙一般作用在数据库协议上,比如Oracle SQL*Net,MSSQL TDS等。

Web防火墙作用在浏览器和应用程序之间,使他只能够看得见用户提交的相关信息,而用户提交信息往往只是数据库SQL语句的一个碎片,缺乏对于数据库SQL的全局认知,更加不用说SQL语句的上下文关系了。Web防火墙只能做一些基于常规异常特征以及出现过的特征进行识别和过滤,使Web防火墙的SQL注入攻击防御效果依赖于攻击者的水平和创意,只要攻击者具有一定的创意,Web防火墙很难防御SQL注入攻击。

数据库防火墙作用在应用服务器和数据库服务器之间,看到的是经过了复杂的业务逻辑处理之后最后生成的完整SQL语句,也就是说是攻击者的最终表现形态,已经撕去了大量的伪装。由于看到的是缺乏变化的最终形态,使数据库防火墙可以比较Web防火墙采用更加积极的防御策略,比如守白知黑策略进行异常SQL行为检测,100%防御SQL注入攻击。即使简单采用和Web防火墙类似的黑名单策略,由于看到的信息使完整的最终信息,使其防御难度比较Web防火墙大幅度下降,防御效果自然会更好。

3. 更多的访问通道

通过http服务应用访问数据库只是数据库访问中的一种通道和业务,还有大量的业务访问和http无关,这些http无关的业务自然就无法部署web防火墙,只能依赖于数据库防火墙来完成。

四、总结

1. 数据库防火墙主要用来防御外部入侵风险,需要和内部安全管控适当分开。

2. 数据库防火墙主要聚焦点是通过修复应用程序业务逻辑漏洞和缺陷来降低或者消除数据(库)安全风险。SQL注入攻击是其核心防御风险,而数据库漏洞攻击检测和防御则并不是必须的。

3. 由于SQL注入攻击和数据库漏洞攻击的伴生性,数据库防火墙往往具备数据库漏洞检测和防御功能。

4. Web防火墙不能替代数据库防火墙,Web防火墙是SQL注入攻击的第一道防线,数据库防火墙则是SQL注入攻击的终极解决方案。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭