如何评价、选择和实施Web应用防火墙
Web应用防火墙(Webapplicationfirewall,WAF)主要用来保护Web应用免遭跨站脚本和SQL注入等常见攻击。WAF位于Web客户端和Web服务器之间,分析应用程序层的通信,从而发现违反预先定义好安全策略的行为。
尽管某些传统防火墙也能提供一定程度的应用认知功能,但是它不具备WAF的精度和准度。举例来说,WAF可以检测一个应用程序是否按照其规定的方式运行,而且它能让你编写特定的规则来防止特定攻击行为的再次发生。
WAF也不同于入侵防御系统(IPS),两者是完全不同的两种技术,后者是基于签名,而前者是从行为来分析,它能够防护用户自己无意中制造的漏洞。
目前WAF的主要推动因素之一是支付卡行业数据安全标准(PCIDSS),该标准主要通过两个办法来验证是否合规:WAF和代码审查。另外一个推动因素是,人们越来越多的认识到攻击已经开始由网络转移到应用程序。根据WhiteHatSecurity公布的一份研究报告,从2006年1月到2008年12月间对877个网站进行了评估,结果发现82%的网站至少存在一个高危或紧急安全漏洞。
WAF的主要特性
Web应用防火墙市场仍然不确定,有很多不同的产品被归类到WAF范畴。研究机构BurtonGroup的分析师RamonKrikken表示,“很多产品提供的功能远远超出了我们通常认为防火墙应该具有的功能,这使得产品的评价和比较难以进行。”此外,通过将已有的非WAF产品整合到综合产品中的方式,新厂商开始进入市场。
根据研究和咨询公司Xiom创始人OferShezaf提供的清单,下面列出Web应用防火墙应该具备的特性:
·深入理解HTTP.WAF必须全面深入分析和解析HTTP的有效性。
·提供明确的安全模型。明确的安全模型只允许已知流量通过,这就给应用程序提供了外部验证保护。
·应用层规则。由于高昂的维护费用,明确的安全模型应该配合基于签名的系统来运作。不过由于web应用程序是自定义编码,传统的针对已知漏洞的签名是无效的。WAF规则应该是通用的,并且能够发现像SQL注入这样的攻击变种。
·基于会话的保护:HTTP的最大弱势之一在于缺乏嵌入式的可靠的会话机制。WAF必须实现应用程序会话管理,并保护应用程序免受基于会话的攻击和超时攻击。
·允许细粒度政策管理。例外政策应该只对极少部分的应用程序执行,否则,可能会造成重大安全漏洞。