为什么WAF(WebApplicationFirewall)不能保证数据库安全?
正告:不要以为有了WAF的维护,数据库安全就能够无忧无虑了,数据库依然有很大的露出危险。
Web运用程序防火墙(WAF)现在现已成为许多商业Web网站和体系的根本维护措施了,它确实在防备许多针对Web体系的安全进犯有比较好的效果,可是WAF在面临进犯办法多种多样的SQL注入方面仍是显得束手无策。
布景常识:什么是WAF?
Web运用防火墙(WAF)是一种根底的安全维护模块,首要针对HTTP拜访的Web程序的维护,放在Web运用程序前面,在用户恳求抵达Web服务器前对用户恳求进行扫描和过滤,剖析和校验每个用户恳求的网络包,保证每个用户恳求是有用并安全的,对无效或许有进犯行为的恳求进行阻断或阻隔。
WAF能够经过界说一些常见的SQL注入的特征码对常见SQL注入供给防护,比方SQL注入代码加入到某些指令或某些输入,这些WAF是没有问题的。可是市面上的联系型数据的品种十分多,虽然有一致的SQL结构化数据查询言语,可是每个数据库的详细完成有十分多的不相同,这些不相同就导致了多种多样的SQL注入进犯办法的发生。因而也就导致了像WAF这样安全维护体系在不理解运用程序的上下文,不熟悉数据库类型,指令,结构的情况下,仅仅靠剖析网络数据包,加上界说一些数据库特别字符黑名单,去防护多种多样的SQL注入进犯是远远不够的。
笔者十分认可WAF在Web运用安全防护方面能起比较大的效果,能防护许多Web进犯,也十分鼓舞每个企业去运用WAF为Web运用程序供给安全保证,可是千万不要单纯的以为,有了WAF你的数据库就安全了,这种主意十分的危险。
数据库露出的拜访点多种多样
从WAF的原理来看,WAF并不能完好的维护Web运用程序免受SQL注入进犯,由于它在Web运用程序外部,不了解运用程序的上下文,不知道方针数据库的类型,这就从根本上决议了WAF只能防备最通用的SQL注入办法。即便WAF做的足够好能够防备绝大多数从Web体系进入的SQL注入进犯,也不能说数据库就得到了很好的维护,由于能拜访数据库的源头不仅仅是Web体系,还有许多其他途径能拜访数据库。
除了Web体系外还有三类首要的数据库拜访途径:
安排内其他运用体系能拜访数据库:比方在电子商务体系里,价格和库存或许会用一些自动化的脚原本守时更新。 一些内部办理程序能够拜访体系,也或许是一些接口,便利雇员增加信息或许发送信息给客户。 还有数据库DBA,IT司理,QA,开发人员等等内部人员经过数据库办理东西能够拜访数据库。
WAF只监控经过HTTP办法将来的数据,这些潜在的数据库拜访源头WAF是毫不知情的,但来自内部的进犯更可怕,内部人员十分清楚数据库的结构和内容,方针性也愈加清晰,不是获取经济利益便是获取许多内部信息,形成的损害能够说是毁灭性的,比方前两年发生在银行客户数据库大规模走漏事情就很清楚的证明了这一点。一同现在黑客进犯手法越来越高超,技能现已十分老练,并且在云年代有显着鸿沟的网络拓扑结构越来越少。总归WAF对SQL注入进犯的防护效果越来越小。
多维度数据库维护是彻底之策
已然数据库的方面途径许多,要想比较好的处理数据走漏的的危险,多维度防护是最佳办法,只要堵住每条或许走漏的进犯才干保证数据库的安全,或许的办法包含但不仅限于:
运转时运用程序自我维护(RASP)。 数据库防火墙。 形式学习进程。 责任别离。 危险为根底的方针。 灵敏信息屏蔽。 定时审计办理和拜访灵敏信息。
运转时运用程序自我维护(RASP)
RASP针对运用程序维护,不仅仅是对Web运用测验,它将代码扫描东西的缝隙发现功用和WAF的实时进犯阻拦才能结合起来,将这些防护功用像疫苗相同注入到运用程序中,让运用程序像人体具有疫苗相同对进犯具有免疫才能,他能够找到一切已知缝隙,像一个虚拟的大补丁将一切的已知缝隙修补起来,免于大多数缝隙进犯,一同它和运用程序一同运转是同一个进程,具有运用程序的上下文,了解运用程序的每一个动作,因而他能准确的了解每一个进犯并能够实时对进犯进行防护。比方SQL注入,它在每个数据库的JDBC的statement详细完成里,依据对每个数据的不同,有针对性的将SQL注入
[1] [2] 黑客接单网