浅谈数据库防火墙技术及应用(二)
报名入口来源:中国教育在线 2022-05-31
如何定义数据库防火墙?
一旦准确的定义了什么是外部之后,什么是数据库防火墙就比较清楚了。运维网络之外的访问我们都可以定义为业务访问。
数据库防火墙是一款抵御并消除由于应用程序业务逻辑漏洞或者缺陷所导致的数据(库)安全问题的安全设备或者产品。数据库防火墙一般情况下部署在应用程序服务器和数据库服务器之间,采用数据库协议解析的方式完成。但这并不是唯一的实现方式,你可以部署在数据库外部,可以不采用协议解析。从这个定义可以看出,数据库防火墙其本质目标是给业务应用程序打补丁,避免由于应用程序业务逻辑漏洞或者缺陷影响数据(库)安全。
常见的应用程序业务逻辑漏洞和缺陷:
1、SQL注入攻击
2、cc攻击
3、非预期的大量数据返回
4、敏感数据未脱敏
5、频繁的同类操作
6、超级敏感操作控制
7、身份盗用和撞库攻击
8、验证绕行和会话劫持
9、业务逻辑混乱
数据库防火墙的常见应用场景
1、SQL注入攻击SQL注入攻击是数据库防火墙的核心应用场景,甚至可以说数据库防火墙就是为了防御SQL注入攻击而存在的。SQL注入攻击是很古老的攻击手段,特别是互联网普及之后,一直是主流的安全攻击手段。需要特别注意的是,SQL注入攻击的发生不是由于数据库的漏洞导致,而是因为应用程序漏洞和缺陷导致,但是受到伤害和影响的则是数据库。我们的业务应用程序是水平参差不齐的公司和工程师撰写,其代码质量会远远比不上Oracle,微软等大牌公司的产品,SQL注入以及其他可能的漏洞和缺陷存在是必然的事件。甚至可以认为,只要复杂度超越一定程度的任何业务应用程序都会存在SQL注入漏洞。
SQL注入攻击之所以难以防御,其主要原因是其攻击是通过业务应用程序发起的,传统上部署的所有安全措施对于SQL注入攻击基本无效,使其可以简单到达企业最为核心的数据库内部。