数据库安全的防护建议
作者:安华金和 发布时间:2017-01-14

加固数据库安全要从三个方面进行,严格限制弱口令、及时排出配置问题、定期升级补丁和对第三方恶意SQL语句进行审查。从时间点上可以划分为三个阶段:1.入侵事前检查防护。2.入侵事中阻断防御。3.入侵事后追踪审计,减小损失。

1.入侵事前检查防护

事前的重点是检查。在遭遇外部入侵前,我们需要定期对整个网络环境进行弱点扫描。网络中任何一点的漏洞都可能导致最后的数据泄露。可以定期请专人对整个网络做渗透测试,同时可以通过Web安全扫描器、数据库漏洞扫描器等相关产品对整个环境进行安全检查。尤其要注意扫描器需要具备扫描后门、恶意SQL痕迹的能力。

2.入侵事中阻断防御

过程中防御的重点是准确的判断出哪些语句或行为可能会引发入侵动作。正如推荐在Web前端部署WAF来解决大部分针对Web的入侵行为。一样我们推荐在数据库和应用之间串联数据库防火墙。数据库防火墙至少要具备三点防护能力:1.从数据库层防护和阻断SQL注入行为。2.具备虚拟补丁功能,给不打补丁的数据库带来和打补丁一样的安全。3.对第三方恶意组件中的恶意语句,有解密并阻断效果。

1.数据库防火墙也要有SQL注入防护能力,是因为WAF防护SQL注入存在一定的局限性。WAF在于无法对WEB发给数据库的SQL语句进行协议分析、无法进行语句还原,只能通过正则匹配来遍历每种情况。而数据库防火墙则恰好弥补了WAF的技术路线缺陷。数据库防火墙的防护策略、手段都是基于SQL协议解析而来。数据库防火墙在防止SQL注入上彻底的解决了WAF以牺牲性能为代价的方式。相信如果数据库防火墙和WAF配合使用会使您的数据更加安全。

2.在很多实际生产场景中,由于稳定性的考虑,数据库是不会进行升级或打补丁。数据库的安全完全依赖于整体环境的安全。一旦环境被打开缺口(植入木马等)数据库在漏洞攻击面前脆弱不堪。虚拟补丁正是为了解决为了稳定而无法打补丁的数据库的安全问题。

3.数据库防火墙不单可以对sql层的攻击进行有效的防护,更可以检查第三方插件访问数据库执行的所有sql语句块。即便是采用了加密手段(数据库存储过程加密是固定的算法),数据库防火墙也具备自动解密,严格审查SQL块内容的功能。确保恶意sql语句不会有机可乘。

对数据密级要求比较高的企业,可以通过数据加密软件对数据库中最重要的数据进行加密。这样即使黑客拿走了数据库中的部分数据,也只是拿到了密文。数据库加密技术利用复杂的算法可以保证在一定时间内黑客是无法破译出明文内容。 

3.入侵事后减小损失防御

通过对用户访问数据库行为的记录、审计分析,帮助用户事后进行数据泄密行为的追根溯源,提高数据资产安全。