应用层防火墙有许多明显的安全优点,那它为什么不是默认选项呢?
众所周知,应用防火墙或代理确实有优于包过滤型和全状态包检测型(stateful packet inspection)防火墙的地方。虽然这些类型的防火墙可以防止各种网络层的攻击,但它们却无法阻挡利用大多数Web应用程序漏洞进行的攻击。利用这些严重的漏洞,黑客们操纵URL地址就可以直接攻击目标网站。不过,这些防火墙可以通过允许或拒绝特定的应用程序或者应用的特定功能,实现很多精细化的控制。应用防火墙还可以直接验证用户身份,这意味着它允许或拒绝特定用户发出的远程登录命令,而其他防火墙只能控制特定主机的传入请求。
应用层防火墙可以检测数据包的有效荷载根据这些实际内容作出相应决定,还能提供更好的内容过滤能力。它们还可以审查完整的网络数据包,而不仅仅是网络地址和端口,这就使得它们有更强大的日志记录功能,例如可以记录某个特定程序发出的命令这样的日志事件,这对于处理突发安全事件和实施安全策略提供了很有价值的信息。
既然应用层防火墙有这么多明显的安全优点,为什么它却不是默认选项呢?其主要原因在于成本和性能。如果所有进站和出站的网络流量都需要在应用层上进行检测,那么数据在检测前就必须首先通过OSI的七层,而包过滤型和全状态包检测型防火墙在只网络层对流量进行检测。由于防火墙对数据包进行读取和解析必然消耗CPU周期,尤其是解析过程特别耗费CPU资源,所以很有可能形成网络性能的障碍。这也意味着应用层防火墙更容易受到分布式拒绝服务攻击,因此不太适合高带宽或实时应用程序。而它也很可能会成为操作系统里的安全漏洞。
应用层防火墙的另一个缺点就是对每个协议(如HTTP、MTP等)都需要单独的代理程序,因此它对新的网络程序或网络协议的支持很有局限性。虽然大多数防火墙厂商为了应对未定义的网络协议或应用程序都提供了一般的代理程序,但在这种情况下,它往往会完全允许流量通过防火墙,而忽略很多应用层防火墙应做的操作。相比之下,状态包检测防火墙和包过滤防火墙一样,只会对网络性能造成很小的影响,因而可以实现对应用程序的透明和独立。随着客户端或代理数目的增加,可扩充性也成为了的问题。应用层防火墙通常需要网络中的客户端安装专门的软件或更改某些配置,以便能够连接到应用代理。这在一个大的网络里会造成非常大的影响。为了减轻防火墙的负载压力,在对那些及时性要求不高的服务(如e-mail服务以及大部分的网络流量)进行安全处理的时候,可能会需要对部署专门的代理服务器,从而也增加了全部费用。
希望你能明白应用层防火墙并不是任何人都会选择的。那么,你问题里提到的主动模型(positive model)是怎么一回事呢?一个应用层防火墙有两种途径可以实现,一是主动采取措施的主动安全模型(positive security model),另一种是通过与已知攻击特征进行比对来认定攻击行为的被动安全模型(negative security model)。被动安全模型的缺点是:它对新发现的攻击没有防御能力,对特征数据库的更新也完全就是一项与时间赛跑的任务。在被动安全模型里,不能被认定为非法的行为就会被视为合法行为。而主动安全模型则与之不同,它关注的是哪些操作是用户允许的,也就是说,除了已被许可的操作,其它都是非法的。尽管主动安全模型是更好的选择,但是往往这类产品价格更高也更复杂。所以,归结起来,需要对时间和费用进行权衡。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
翻译
相关推荐
-
选择应用层防火墙时需要考虑哪些因素?
在考虑应用层防火墙时,企业应该注意些什么?Web安全网关、内容过滤产品和应用层防火墙之间有什么不同吗?
-
应用层防火墙如何防御协议栈上的攻击?
虽然25年来防火墙一直是Internet连接网络的主要安全方式,但是在这段时期,攻击者已经盯上了协议栈,为全面有效地进行防护,将较低层的防火墙与智能应用层……