专注SIP通讯产品与方案

防火墙的发展史

防火墙的发展史

1.防火墙在OSI/RM中的位置

      防火墙是设置在被保护的网络和外部网络之间的一道屏障,以防止发生不可预测的、潜在破坏性的侵入,它可通过监测、限制、更改跨越防火墙的数据源,尽可能地对外部屏蔽网络内部信息、结构和运行状况,以此来保护内部网络的安全。

在OSI/RM参考模型中,数据包过滤方式如图1所示。代理服务方式如图2所示。

防火墙在OSI/RM中的位置

2 .防火墙的发展史

目前,防火墙的发展过程大致分为5代。

      ● 第一代防火墙:第一代防火墙技术几乎与路由器同时出现,采用了包过滤(packetfilter)技术。

      ● 第二、三代防火墙:1989年,贝尔实验室的DavePresotto和HowardTrickey推出了第二代防火墙,即电路层防火墙,同时提出了第三代防火墙一应用层防火墙(代理防火墙)的初步结构。

      ● 第四代防火墙:1992年,USC信息科学院的BobBraden开发出了基于动态包过滤(dynamicpacketfilter)技术第四代防火墙,后业演变为目前所说的状态监视(statefulinspeCTIon)技术。1994年,以色列的Checkpoint公司开发出了第一个基于这种技术的商业化的产品。

      ● 第五代防火墙:1998年,NAI公司推出了一种自适应代理(adaptiveproxy)的技术,并在其产品GauntletFirewallforNT中得以实现,给代理类型的防火墙赋予了全新的意义,可以称为第五代防火墙。

从发展过程来看:防火墙从包过滤方式到今天的状态检测。

从技术角度来看:防火墙是作为一种连接内部网络和公众网的网关,提供对内部网络连接的访问控制能力。它能根据预先定义的安全策略,允许合法连接进入内部网,阻止非法连接。防火墙的基本功能包括:访问控制、数据过滤、身份验证、告警、日志和审计

防火墙技术经历了以下几个方面。

1) 包过滤防火墙(packetfilterfirewall).

      包过滤防火墙是最早的防火墙技术,它根据数据包头信息和过滤规则阻止或允许数据包通过防火墙。当数据包到达防火墙时、防火墙检查数据包包头的源地址、目的地址、源端口、目的端口及其协议类型。若是可信连接,就允许通过;否则丢弃数据包。但它有自身的弱点,因此它一般用于对安全性要求不高、要求高速处理数据的网络路由器上,如表所示。

包过滤防火墙优缺点

2)应用代理防火墙(applicationproxy firewall)。

       应用代理防火墙检查数据包的应用数据,并且保持完整的连接状态,它能够分析不同协议的完整的命令集,根据安全规则禁止或允许某些特殊的协议命令;还具有其他像UPL过滤、数据修改、用户验证、日志等功能。

       应用代理防火墙包含三个模块:代理服务器、代理客户和协议分析模块。这种防火墙在通信中执行二传手的角色,很好地从Internet中隔离出受信网络,不允许受信网络和不受信网络之间的直接通信,获得很高的安全。但是由于所有的数据包都要经过防火墙TCP/IP协议栈并返回,因此处理速度较慢,其优缺点如表所示。

应用代理防火墙优缺点

3)入侵状态检测防火墙(statefulinspection firewall).

入侵状态检测防火墙也叫自适应防火墙,或动态包过滤防火墙,Checkpoint公司的FireWall-1就是基于这种技术。它根据过去的通信信息和其他应用程序获得的状态信息来动态生成过滤规则,根据新生成的过滤规则过滤新的通信。当新的通信结束时,新生成的过滤规则将自动从规则表中被删除。这种类型防火墙的主要优缺点如表所示。

入侵状态检测防火墙优缺点

4)自适应代理防火墙(adaptiveproxyfirewall)、

自适应代理防火墙整合了动态包过滤防火墙技术和应用代理技术,本质上是状态检测防火墙。它通过应用层验证新的连接,若新的连接是合法的,它可以被重定向到网络层。因此这种防火墙同时具有代理防火墙和状态检测防火墙的特性,其优缺点如表所示。

 自适应代理防火墙的优缺点

作为入侵检测防火墙采用的协议分析技术表现为以下内容。

协议分析技术不同于传统的基于已知攻击特征的模式匹配技术,而一种智能、全面地检查网络通信的技术。它能够知道各种不同的协议是如何工作的,并且能全面分析这些协议的通信情况,发现可疑或异常的行为。对于每个应用,防火墙能够根据RFC和工业标准来验证所有的通信行为,只要发现它不能满足期望就报警。它分析网络行为是否违反了标准或期望来判断是否会危害网络安全,因此它具有很高的安全性。

比如很多攻击都用到的FTP命令“SITEEXEC”,它用来执行Shell命令。若使用特征匹配技术,它仅仅进行字符串的完全匹配,而攻击者就可以在命令SITE与参数EXEC中插入多余空格来逃避检查。而协议分析技术知道如何去分析这个命令,很容易发现存在的攻击。对于像著名的Unicode攻击,协议分析能够像服务器那样识别出攻击,同时,还能识别缓冲区溢出攻击,因此协议分析技术在检查攻击的性能上比传统的特征匹配技术高得多。

(1)基于状态的协议分析技术

协议分析技术是对单个数据包进行分析的技术,虽然它很大程度上能够有效阻止行为,但是由于现在的很多攻击是碎片攻击,若仅检查单个数据包,无法发现攻击行为,只有将前后的信息联系起来才能发现攻击。因此防火墙应该保存前面通信的有用信息,以供后面的协议分析用,这就基于状态的协议分析技术。

基于状态的协议分析技术能够监控和分析一个完整的通信或者会话保所发生的事件,且能记录有效的信息,这就允许防火墙能发现一个会话过程的不同事件之间的相关性,检测出其他技术无法发现的攻击。

使用该技术可以为无连接的UDP协议设置一个虚拟的连接,保存状态信息,这样就可以验证以后连接的有效性,发现非法连接。同样,它也可以跟踪RPC的端口以及FTP数据端口信息,保证连接的合法性。

(2)基于协议分析的状态检测防火墙体系结构

基于协议分析的状态检测防火墙从网络层读取数据包,根据已有的过滤规则(或基于包头的攻击特征库)过滤异常的连接,产生相应的报警和日志。然后调用协议分析引擎,根据RFC、工业标准和连接状态对通信进行验证,产生相应的安全行为返回给网络层。网络层根据返回的安全行为对应的通信产生动作,并在状态Hash表中保存相应的状态,产生适当的报警信息和日志。

基于协议分析的状态检测防火墙,采用协议分析技术及状态信息检测已知的和未知的攻击,提高了安全性。使用协议分析引擎减少了传统应用代理防火墙的数据要穿过所有的协议栈,然后到达应用层,应用层对数据进行分析、重组后,穿过所有的协议栈返回后的时间延迟。它直接从网络层拷贝数据,根据状态信息和相应的协议进行分析,返回相应的策略。网络层根据此策略做相应的动作,提高系统处理数据包的性能。这样很好地解决了性能与安全之间的矛盾,达到性能与安全的统一。