在现代的计算环境中,应用层防火墙日益显示出其可以减少攻击面的强大威力。最初的网络安全不过是使用支持访问列表的路由器来担任。对简单的网络而言,仅使用访问控制列表和一些基本的过滤功能来管理一个网络对于未授权的用户而言已经足够。因为路由器位于每个网络的中心,而且这些设备还被用于转发与广域网的通信。
但路由器仅能工作在网络层,其过滤方式多少年来并没有根本性的变化。制造路由器的公司也为增强安全性在这一层上也是下足了工夫。更明确地讲,所有的安全措施只不过存在于路由器所在的网络层而已。
会话层防火墙也称为电路级防火墙或电路网关。这种电路级防火墙使用网络地址转换(NAT)来保护内部网络,而这些网关几乎没有或根本没有与应用层的连接,所以它们也就不能过滤更复杂的连接。这种防火墙只能根据基本的规则(如源地址端口)来保护数据通信。
随着技术的发展和进步,人们需要管理外发的数据通信,需要进行过滤。用户们可以浏览互联网,并且可以利用内部防御系统中的漏洞,因为恶意用户可以将自己伪装成一个合法的用户。
用户可以通过远程登录到一个开放的外发端口,而此端口并不是一个telnet端口(从23号端口登录到80号端口),这意味着用户可以轻易地绕过第五层设备的安全防御。支持访问列表的路由器会准许用户连接到一个端口上,虽然此端口并不是远程登录端口,而是另外一种服务的端口。这意味着路由器在数据包通过时并没有实施检查。由此便造成恶意数据包可以在网络上传输。
在上个世纪的90年代,主流的代理服务器登上了舞台,它集成了基本的防火墙技术。这种“代理服务器防火墙”能够劫获源主机和目标主机之间的通信。因为“代理服务器防火墙”位于中间的位置,所以它拥有根据预先定义的规则集来检查数据包的能力。
传统会话层防火墙技术的局限
会话层防火墙工作在第五层。在上个世纪的90年代,这种技术对于保护网络是足够的。但是,随着攻击发展到应用层,以及互联网的增长,会话层防火墙的功能不再是足够的。其结果是没有应用层保护机制的防火墙将导致错误的配置, 而且操作系统的漏洞会直接暴露到互联网上,这是由于所有的会话层防火墙通过提供一张路由表和访问控制列表而提供一种基本的保护措施。
在会话层防火墙上的一些小进步使得防火墙可以在更深的层次上检查常见协议的数据包,不过,用metasploit和 backtrack等工具很容易就可以绕过这些措施。在今天的网络环境中,唯一的选择是安装一个应用层防火墙,它不仅仅可以实施ACL及目标端口等的检查。在与现代的应用程序交互时,进行更深的数据包检查、状态连接管理、应用层过滤是至关重要的功能。因此,许多重视安全性的单位在面临会话层和应用层防火墙的选择时,会坚定地选择后者。
应用层防火墙技术
第三代防火墙称为应用层防火墙或代理服务器防火墙,这种防火墙在两种方向上都有“代理服务器”的能力,这样它就可以保护主体和客体,防止其直接联系。代理服务器可以在其中进行协调,这样它就可以过滤和管理访问,也可以管理主体和客体发出和接收的内容。这种方法可以通过以各种方式集成到现有目录而实现,如用户和用户组访问的LDAP。
应用层防火墙还能够仿效暴露在互联网上的服务器,因此正在访问的用户就可以拥有一种更加快速而安全的连接体验。事实上,在用户访问公开的服务器时,他所访问的其实是第七层防火墙所开放的端口,其请求得以解析,并通过防火墙的规则库进行处理。一旦此请求通过了规则库的检查并与不同的规则相匹配,就会被传递给服务器。这种连接在是超高速缓存中完成的,因此可以极大地改善性能和连接的安全性。
而在OSI模型中,第五层是会话层,第七层是应用层。应用层之上的层为第八层,它在典型情况下就是保存用户和策略的层次。
关于OSI的进一步说明
OSI是一个网络架构的分层模型。它描述和规定了两个互联的系统如何通信。其中,顶层在典型情况下即为“基于代理服务器的防火墙”所工作的层次。应用层防火墙是第三代防火墙,,这种防火墙可以向下扫描其下的各层。在与会话层防火墙或电路层防火墙比较时,这种应用层防火墙可以集成会话层防火墙的特性和反向代理服务器等其它高级特性,从而实现更安全的网站访问。
当今的攻击已经发展得相当高级,多数会话层防火墙甚至并不能阻止多数基本的应用型攻击。因此,我们需要向第五层防火墙道别或者用更加安全的“应用层防火墙” 来替换之。
小结
不管我们如何对过去的老技术念念不忘,总不能忽视更新的防火墙面孔和更新的防火墙技术方法。安全专家们受到了前所未有的挑战,这种挑战来自于学会了如何加密其数据通信以逃避管理的用户。那么,我们的解决方案就应当是实施应用层防火墙,它应当能够对加密的数据流进行扫描。互联网的风景很精彩,但更需要我们认识到的是,一些更加结构化的应用层攻击正不断地“崭露头角”并兴风作浪,对付这种新威胁的唯一制胜之道便是实施更加精密复杂的应用层防火墙。