什么是Web应用防火墙?
Web应用防火墙(Web Application firewall,WAF)主要用来保护Web应用免遭跨站脚本和SQL注入等常见攻击。WAF位于Web客户端和Web服务器之间,分析应用程序层的通信,从而发现违反预先定义好安全策略的行为。
尽管某些传统防火墙也能提供一定程度的应用认知功能,但是它不具备WAF的精度和准度。举例来说,WAF可以检测一个应用程序是否按照其规定的方式运行,而且它能让你编写特定的规则来防止特定攻击行为的再次发生。Web应用防火墙(WAF)也不同于入侵防御系统(IPS),两者是完全不同的两种技术,后者是基于签名,而前者是从行为来分析,它能够防护用户自己无意中制造的漏洞。
Web应用防火墙的功能特性
Web应用防火墙市场仍然不确定,有很多不同的产品被归类到WAF范畴。研究机构Burton Group表示,“很多产品提供的功能远远超出了我们通常认为防火墙应该具有的功能,这使得产品的评价和比较难以进行。”此外,通过将已有的非WAF产品整合到综合产品中的方式,新厂商开始进入市场。下面列出Web应用防火墙应该具备的功能特点:
深入理解HTTP:Web应用防火墙必须全面深入分析和解析HTTP的有效性。
提供明确的安全模型:明确的安全模型只允许已知流量通过,这就给应用程序提供了外部验证保护。
应用层规则:由于高昂的维护费用,明确的安全模型应该配合基于签名的系统来运作。不过由于web应用程序是自定义编码,传统的针对已知漏洞的签名是无效的。Web应用防火墙规则应该是通用的,并且能够发现像SQL注入这样的攻击变种。
基于会话的保护:HTTP的最大弱势之一在于缺乏嵌入式的可靠的会话机制。Web应用防火墙必须实现应用程序会话管理,并保护应用程序免受基于会话的攻击和超时攻击。