WAF技术的发展概述
当黑客攻击Web应用时,网络防火墙和入侵检测产品发挥的作用有限,而应用防火墙却让黑客无功而返。
    在6月份的时候有这样一则新闻:美国科学家表示,许多网站目前都面临一种新形式网络攻击——“HTTP请求走私”的威胁,这种攻击将有害的数据包隐藏在看似合法的数据包中,通过HTTP请求破坏网站。
    专家发现,“HTTP请求走私”最简单的一种攻击形式是添加多余的“内容长度的头信息标签”。通常,当浏览器发出网页请求时,它会发送包含详细请求内容的数据包。一般情况下,数据包中只包含一个“内容长度的头信息标签”,以保证需要处理的数据大小。而在“HTTP请求走私”中,可能会出现两个以上“内容长度的头信息标签”。科学家发现,不同的网站在遭到这种攻击时会作出不同的反应,很可能会造成处理错误。另外,“HTTP请求走私”能够突破安全过滤器,可以将新网站非法上载到网站缓冲区中。
    专家认为,黑客可能很快就会利用“HTTP请求走私”,对网站进行大规模攻击。最好的防范
措施,就是严格遵循超文本数据传输协议的各项要求。同时,专家也认为,之所以出现“HTTP请求走私”,说明超文本传输协议存在漏洞,应对其进行修改。
    这条新闻所提到的攻击只是网站所面对的众多攻击中的比较新的一个。随着互联网的飞速发展,Web应用也日益增多。今天,商业交易的各个部分都正在向Web上转移,但每增加一个新的基于Web的应用系统,都会导致之前处于保护状态下的后端系统直接连接到互联网上,最后的结果就是将公司的关键数据置于外界攻击之下。
    据Gartner调查显示,现在有75%的攻击都是针对Web应用层发起的。尤其是金融服务业成为了众矢之的,而攻击者的主要目的就是直接获取个人数据。
    据美国计算机安全协会(CSI)/美国联邦调查局(FBI)的研究表明,在接受调查的公司中,2004年有52%的公司的系统遭受过外部攻击(包括系统入侵、滥用Web应用系统、网页置换、盗取私人信息及拒绝服务等等),这些攻击给269家受访公司带来的经济损失超过1.41亿美元,但事实上他们中有98%的公司都装有防火墙。
    为什么防火墙没有防住攻击?因为他们安装的是网络防火墙,而真正能防御这些攻击的是
应用防火墙。早在2002年,IDC就曾在报告中认为,“网络防火墙对应用层的安全已起不到什么作用了,因为为了确保通信,网络防火墙内的端口都必须处于开放状态。”
    从概念走向实用
    当今的攻击已经发展得相当高级,多数会话层防火墙甚至并不能阻止多数基本的应用型攻击。因此,我们需要向第五层防火墙道别或者用更加安全的应用层防火墙来替换之。
Web应用防火墙(Web Application Firewall, 简称:WAF)代表了一类新兴的信息安全技术,用以解决诸如防火墙一类传统设备束手无策的Web应用安全问题。与传统防火墙不同,WAF工作在应用层,因此对Web应用防护具有先天的技术优势。基于对Web应用业务和逻辑的深刻理解,WAF对来自Web应用程序客户端的各类请求进行内容检测和验证,确保其安全性与合法性,对非法的请求将予以实时阻断,从而对各类网站站点进行有效防护。
WAF作为一种在国际安全市场上新兴起起的专用设备,在世界范围的安全市场内有明确的功能定义:国际权威测评机构NSS对WAF有着详细的测试方案;国际组织WEB应用安全联盟(Web Application Security Consortium,简称:WASC)发布了WAF产品评估标准,为技
术人员进行产品技术选型时提供参考,以选择最为适合自身应用环境的WAF产品。现在Web应用防火墙已经非常成熟,国外很多大公司都采用WAF来保护自己的Web应用,这已经是信息安全领域的一种成熟技术。
   
    应用前面的铜墙铁壁
    安装了网络防火墙和IDS,就能抵挡应用层攻击吗?不能。因为在保护应用方面,网络防火墙和IDS各有不足。
    网络防火墙有洞
    网络防火墙技术的发展已经非常成熟,也是目前网络安全技术中最实用和作用最大的技术。但是,作为目前应用最为广泛的HTTP服务器等应用服务器,通常是部署在防火墙的DMZ区域,防火墙完全向外部网络开放HTTP应用端口,这种方式对于HTTP应用没有任何的保护作用。即使使用HTTP代理型的防火墙,防火墙也只是验证HTTP协议本身的合法性,完全不能理解HTTP协议所承载的数据,也无从判断对HTTP服务器的访问行为是否合法。攻击
者知道正面攻破网络防火墙十分困难,于是从简单的端口扫描攻击转向通过应用层协议进入企业内部,目前,利用网上随处可见的攻击软件,攻击者不需要对网络协议有深厚的理解,即可完成诸如更换Web网站主页、盗取管理员密码、破坏整个网站数据等攻击。而这些攻击过程中产生的网络层数据,和正常数据没有什么区别。一个最简单的例子就是在请求中包含SQL注入代码,或者提交可以完成获取其他用户认证信息的跨站脚本,这些数据不管是在传统防火墙所处理的网络层和传输层,还是在代理型防火墙所处理的协议会话层,都会认为是合法的。
    明白了防火墙的工作原理,我们就知道,对于应用层攻击,网络防火墙是无能为力的。
    入侵检测有限
    目前最成熟的入侵检测技术就是攻击特征检测。入侵检测系统首先建立一个包含目前大多已知攻击特征的数据库,然后检测网络数据中的每一个报文,判断是否含有数据库中的任何一个攻击特征,如果有,则认为发生相应的攻击,否则认为是合法的数据。
    入侵检测系统作为防火墙的有力补充,加强了网络的安全防御能力。但是,入侵检测技术
的作用存在一定的局限性。由于需要预先构造攻击特征库来匹配网络数据,对于未知攻击和不能有效提取攻击特征的攻击,入侵检测系统不能检测和防御。另外就是其技术实现的矛盾,如果需要防御更多的攻击,那么就需要很多的规则,但是随着规则的增多,系统出现的虚假报告(对于入侵防御系统来说,会产生中断正常连接的问题)率就会上升,同时,系统的效率会降低。
    对于应用攻击,入侵检测系统可以有效的防御部分攻击,但不是全部。
    应用防火墙有效
    网络面临的许多安全问题单靠网络防火墙是无法解决的,必须通过一种全新设计的高性能安全代理专用设备来配合网络防火墙。具体来说,利用网络防火墙阻挡外面的端口扫描攻击,利用应用安全防护技术,深层管理和控制由用户访问外部资源而引起的应用层攻击,解决针对应用的、具有破坏性的复杂攻击。
    应用防火墙真正实现了对网络应用的保护,是传统安全技术的有效补充。应用防火墙可以阻止针对Web应用的攻击,而不仅仅是验证HTTP协议。这些攻击包括利用特殊字符或通配
符修改数据的数据攻击、设法得到命令串或逻辑语句的逻辑内容攻击,以及以账户、文件或主机为主要目标的目标攻击。2004年所出现的Web应用10大漏洞,应用防火墙均可以防御,未知攻击也无法越过应用防火墙。
    业界标准的应用防火墙一般采用主动安全技术实现对应用的保护。主动安全技术是指建立正面规则集,也就是说明哪些行为和访问是合法的规则描述。对于接收到的应用数据(从网络协议还原出来的应用数据,不是数据报文头),判断是否符合合法规则。因为只允许通过已知的正常数据,这种方式可以防御所有的未知攻击。
    应用防火墙技术是现有网络安全架构的一个重要补充,而不是取代传统防火墙和入侵检测等安全设备。传统安全设备阻挡攻击者从正面入侵,着重进行网络层的攻击防护;而应用防火墙着重进行应用层的内容检查和安全防御,与传统安全设备共同构成全面、有效的安全防护体系。
3种安全产品防御能力比较
攻击类型
网络防火墙
入侵检测
应用防火墙
未经验证的输入
不能防御
部分防御
全部防御
不完整的访问控制
不能防御
不能防御
web应用防护系统全部防御
不完整的认证和会话管理
不能防御
不能防御
全部防御
跨站脚本(XSS)漏洞
不能防御
部分防御
全部防御
缓冲区溢出
不能防御
部分防御
全部防御
注入的漏洞
不能防御
部分防御
全部防御
不恰当的错误处理
不能防御
不能防御
全部防御
不安全的存储
不能防御
不能防御
全部防御
拒绝服务
部分防御
部分防御
全部防御
不安全的配置管理
部分防御
部分防御
全部防御
未知攻击
不能防御
不能防御
全部防御