1、防止SQL注入的动机
近来教育行业的信息安全问题真是一波未平一波又起:陆续发生多个高校网站系统被更改,影响恶劣;高校密集被爆SQL注入漏洞,涉及80%以上的高校;教育行业成为电信诈骗的重灾区,据统计,被骗学生占全部被骗人数的20%左右,甚至发生了大学生和准大学生被骗导致含恨离世的人间惨剧;考试成绩被改,涉事人员被判;学校内部一卡通系统账目被改动;以及诸多尚未公开的安全事件。
其中SQL注入漏洞问题,其实与多个事件是关联的。首先,黑客利用SQL注入漏洞拖库,造成数据泄漏。黑客由此掌握大量真实数据,倒卖给黑产,被用于实施电信诈骗;其次,SQL注入漏洞被利用,替换数据库内容,或者间接控制文件系统,更改网站系统;再次,利用SQL注入漏洞修改数据库内容,破坏数据一致性和真实性。
所以,防治SQL注入漏洞,是高校信息安全的重要工作,也是能够迅速提升信息安全水平,尤其是数据安全水平的举措。
2、高校防止SQL注入的困难
(1)意识方面,对SQL注入漏洞威胁的后果严重程度认识不足;
(2)经费审批,某些单位意识跟上了,但是没有当期预算,只好拖着;
(3)技术和产品方面,以为WAF和NGFW就能阻止SQL注入。其实根除SQL注入,不能仅依靠WAF和NGFW。否则IMPERVA的产品为什么要有WAF和数据库防火墙?但是国内的数据库防火墙可选择余地有限。
(4)系统分散,数据分散,系统开发发布比较随意,安全测试严重不足;
(5)安全运维人力普遍严重不足,WAF和数据库防火墙的规则配置质量难以保证。
3、可行的解决方案
总体思路是:采用系统安全扫描+WAF/NGFW+DB FIREWALL,根治SQL注入漏洞。
(1)系统安全扫描:采用商用系统漏洞扫描工具或者开源SQL注入漏洞扫描工具,检测系统SQL注入漏洞,在上线前尽量消除这些漏洞。
(2)WAF/NGFW。采用商业的或者开源的WAF/NGFW,部分阻止SQL注入漏洞。
(3)数据库防火墙。由于SQL注入特征在数据库访问SQL语句上会被放大,从而,在数据库前端部署数据库防火墙,理论上能够根治SQL注入漏洞。
4、方案分析
该方案成败的核心问题之一在于数据库防火墙的规则配置。如果没有配置出合理有效的规则,数据库防火墙的防护能力将会大打折扣。针对教育行业,尤其是高校中信息系统运维人员较少的现实情况,又对规则配置的简单易用性提出了很高的要求。鉴于此,数据库防火墙应该应提供基于自动学习的规则配置方式,实现规则零配置。
该方案成败的另一核心问题是部署方式。因为在教育行业,尤其是高校的另一个实际问题是系统众多、数据分散。根据教育行业等保定级指导意见,高校信息系统中设计敏感信息的系统有几十个之多。如果完全采用硬件方式的数据库防火墙,将给实际的部署以及采购成本带来压力。所以数据库防火墙最好能够以软件方式运行于学校现有服务器或虚拟环境之上,从而极减少方案的实施成本。
5、数据库防火墙部署方式
方式一:硬件方式。将商业数据库防火墙硬件产品部署于数据库之前,形成对数据库中核心数据的保护。如果有多个数据库,可以用一台数据库保护多台数据库系统,并且最好采用双机热备的方式。
方式二:软件方式。将数据库防火墙以软件或者虚拟机的方式部署于独立的硬件之上,部署在数据库前端,形成对数据库中核心数据的保护。这种方案既适用于传统环境,又适用于虚拟环境。
方式三:部署于数据库服务器。在数据库服务器上安装数据库防火墙软件或者虚拟机,直接保护数据库中的核心数据。这种方式适用于分散的网站系统。
6、产品选择
1)系统安全扫描
商业系统:绿盟,安恒,启明等
开源系统:穿山甲等
2)WAF/NGFW
商业系统:绿盟、WebRay、深信服、启明、山石等......
开源系统:ModSecurity
3)数据库防火墙
商业系统:中安比特、安华金河
开源系统:GreenSQL早期开源版本,现在应该没有开源的了。
鉴于国内数据库防火墙可选择余地不大,在此将中安比特的中安威士防火墙和安华金和的防火墙做个比较,信息来源于厂家公开的资料。