1.防火墙技术的发展历程
第1代防火墙技术几乎与路由器同时出现,采用包过滤(Packet Filter)的技术。
第2、3代防火墙是1989年贝尔实验室推出的电路层防火墙,并同时提出应用层防火墙(代理防火墙)的初步结构。
第4代防火墙,以1992年开发出的基于动态包过滤(Dynamic Packet Filter)技术为代表,后演变为所谓的状态监视技术。
第5代防火墙,由NAI公司在1998年推出,采用自适应代理(Adaptive Proxy)技术,在产品Gauntlet Firewall forNT中实现,为代理类型防火墙赋予了全新含义。
2.防火墙技术分类及实现方法
防火墙技术包括包过滤技术、代理技术、网络地址转换(NAT)技术等。根据防范策略及侧重点不同,防火墙对内外来往数据处理实现的技术是多种多样的。
(1)包过滤
数据包过滤(Packet Filtering)技术是防火墙提供安全保障的主要技术,通过设备对进出网络的数据流进行有选择的控制。包过滤操作一般都是在选择路由的同时,在网络层对数据包进行选择或过滤,通常是对从互联网进入到内部网络的包进行过滤。选择依据是系统内设置的过滤逻辑,称为访问控制表(Access Control Table)或规则表。规则表指定允许哪些类型的数据包可流入或流出内部网络。如,只接收来自某些指定的口地址的数据包或内部网络的数据包可流向某些指定的端口等,哪些类型的数据包的传输应被拦截,防火墙的IP包过滤规则以IP包信息为基础,对包源地址、目标地址、传输方向、分包及IP包封装协议(TCP/UDP/ICMP/IPTunnel)、TCP/UDP目标端口号等进行筛选、过滤。通过检查数据流中每个数据包的源地址、目标地址、所用端口号、协议状态等因素,或其组合确定是否允许该数据包通过。包过滤处理如图10-17所示。
图10-17 包过滤处理
包过滤操作通常在路由器上进行,也可在网桥、甚至一台单独主机上进行。数据包过滤,用来控制流出和流入网络的数据。不符合网络安全的那些服务将被严格限制,基于包中的协议类型和协议字段值,过滤路由器能区分网络流量。基于协议特定标准,路由器在其端口能够区分包和限制包,因此,过滤路由器也称包过滤路由器。
包过滤类型防火墙遵循的一条最基本原则:最小特权原则。即明确允许哪些是管理者希望通过的数据包,并禁行其他的数据包。有两种数据包过滤技术:静态包过滤和动态包过滤。
●静态包过滤。一般防火墙包过滤的过滤规则在启动时配置好,静态存在,只有系统管理员可修改,因此称静态规则。利用静态包过滤规则建立的防火墙称静态包过滤防火墙。
●动态包过滤。防火墙对通过其建立的每一个连接都进行跟踪,并且可根据需要动态地在过滤规则中增加或更新条目。即采用基于连接状态的检查和动态设置包过滤规则。这种策略将属于同一连接的所有包作为一个整体数据流看待,通过规则表与连接状态表共同配合进行检查。动态过滤规则技术避免了静态包过滤所存在的问题,使防火墙弥补许多不安全隐患,最大程度降低黑客攻击的成功率,从而大幅提高系统的安全性。
●包过滤的优点。逻辑简单,易于安装和使用,网络性能与透明性好,通常安装在路由器上,而路由器是内网与互联网连接必不可少的设备,因此在原有网络上增加防火墙不需更多费用。其次,还有①无须改动应用程序。包过滤工作在网络层和传输层,与应用层无关。②一个过滤路由器能协助保护整个网络。单个恰当放置的包过滤路由器可保护整个网络。③数据包过滤对用户透明。数据包过滤是在IP层实现,互联网根本感觉不到其存在。④包过滤不要求任何自定义软件或客户机配置,过滤速度快、效率高,只检查报头相应字段,一般不查看数据包内容,并且某些核心部分由专用硬件实现。
●包过滤的缺点。①不能彻底防止地址欺骗。大多数包过滤路由器基于源IP地址、目标IP地址而实施过滤。数据包的源地址、目标地址以及IP端口号均在数据包头部,很有可能被窃听或假冒,如攻击者把自己主机的IP地址设成一合法主机的IP地址,就可轻易通过过滤器。因此,包过滤最主要的弱点是不能在用户级别上进行过滤,即不能识别不同的用户和防止地址的盗用。即使按MAC地址进行绑定,也是不可信的。因此,对安全性要求较高的网络,过滤路由器并不胜任。②一些应用协议不适于数据包过滤,如RPC、FTP。③无法执行某些安全策略。数据包过滤路由器上的信息不能完全满足用户对安全策略的需求。如数据包的报头信息只能说明数据包来自何主机,而不知是何用户;只知数据包发送到何端口,而不知是发到何应用程序,由此存在很大的安全隐患与管理控制漏洞。④安全性较差。过滤判别的只有网络层与传输层的有限信息,因而各种安全要求不可能充分满足。其过滤规则的数目有限制,且随着规则数目增加,性能会受到很大影响。由于缺少上下文关联信息,不能有效过滤如UDP、RPC一类的协议。非法访问一旦突破防火墙,即可对主机上软件与配置漏洞进行攻击。大多数过滤器中缺少审计与报警机制,通常没有用户使用记录,这样管理员就不能从访问记录中发现黑客的攻击记录。⑤存在较多局限性。如数据包过滤规则配置较难,对安全管理者素质要求高。建立安全规则时,必须对协议本身及其在不同应用程序中的作用有较深入的认识和理解。
实际应用中很少将包过滤技术当做单独的安全策略,通常要与应用网关配合使用或与其他防火墙技术配合使用,组成防火墙系统。
(2)代理防火墙技术
代理防火墙是一种较新型的防火墙技术,分为应用层网关和电路层网关。
所谓代理服务器是指代表客户处理在服务器连接请求的程序。当代理服务器得到一客户的连接意图时,将核实客户请求,并用特定的安全化的Proxy应用程序来处理连接请求,将处理后的请求传递到真实服务器上,然后接受服务器应答,做进一步处理后,将答复交给发出请求的最终客户。代理服务器在外网向内网申请服务时,发挥了中间转接和隔离内、外部网络的作用,因此称代理防火墙。
代理防火墙工作于应用层,针对特定的应用层协议。代理防火墙通过明确用户应用层流量,并在用户层和应用协议层间提供访问控制,而且还可保持所有应用程序使用记录。记录与控制所有进出流量的能力是应用层网关的主要优点之一。代理防火墙原理如图10-18所示。
图10-18 代理防火墙工作原理
代理服务器作为内部网络客户端的服务器,拦截所有要求,向客户端转发响应。代理客户(Proxy Client)负责代表内部客户端向外部服务器发出请求,同时也向代理服务器转发响应。
(3)应用层网关型防火墙
应用层网关(Application Level Gateway)防火墙为传统代理型防火墙,其核心技术就是代理服务器技术,基于软件并通常安装在专用工作站系统上。这种防火墙通过代理技术参与一个TCP连接的全过程,并在网络应用层建立协议过滤和转发功能,因此称应用层网关。
当某用户(远程或本地)想与一个运行代理的网络建立联系时,此代理(应用层网关)会阻塞该连接,然后在过滤的同时,对数据包进行必要的分析、登记和统计,形成检查报告。如此连接请求若符合预定安全策略或规则,代理防火墙便会在用户与服务器之间建立一个“桥梁”,从而保证其通信。对不符合预定安全规则的,则阻塞或抛弃。同时,应用层网关将内部用户请求确认后送到外部服务器,再将外部服务器响应回送给用户。这种技术在ISP中很常见,用于在Web服务器上高速缓存信息,并扮演Web客户与Web服务器间的中介角色。在Web上,代理首先在本地寻找数据,如无,再到远程服务器查找,为用户提供快速访问和安全性。
●应用层网关防火墙优点。其最突出的优点是安全。该类型防火墙被公认是最安全的防火墙。由于每一个内外网络之间的连接都要通过Proxy的介入和转换,通过专门为特定服务如HTTP编写的安全化的应用程序进行处理,然后由防火墙本身提交请求和应答,不给内外网络的计算机以任何直接会话的机会,从而避免了入侵者使用数据驱动类型的攻击方式入侵内网。从内部发出的数据包经该防火墙处理后,就好像是源于防火墙外部网卡一样,从而达到隐藏内网结构的作用。包过滤类型防火墙很难彻底避免这一漏洞。应用层网关防火墙同时也是内部网与外部网的隔离点,起着监视和隔绝应用层通信流的作用,因其工作在应用层,掌握着应用系统中安全策略的全部信息。
●应用层网关防火墙缺点。其最大缺点是速度相对较慢,当用户对内外网络网关的吞吐量要求较高时(75~100Mbit/s),代理防火墙就会成为内外网络之间的瓶颈。实际上,要考虑使用包过滤类型防火墙来满足速度要求的情况,如ATM或千兆网等之间防火墙。
(4)电路层网关防火墙
另一类型代理技术称为电路层网关(Circuit Level Gateway)或TCP通道。它是针对数据包过滤和应用网关技术存在的缺点而建立的,一般采用自适应代理技术(自适应代理防火墙)。这种网关包被提交到用户应用层处理,网关用来在两通信终点之间转换包,如图10-19所示。
图10-19 电路层网关
这种网关是建立应用层网关的一个更为灵活的方法。该网关中,需安装特殊的客户机软件。组成防火墙基本要素有两个:自适应代理服务器与动态包过滤器。在自适应代理与动态包过滤器之间存在控制通道。在防火墙配置时,用户仅将所需要服务类型、安全级别等信息通过相应Proxy的管理界面进行设置即可。然后,自适应代理就可根据用户的配置信息,决定是使用代理服务从应用层代理请求还是从网络层转发数据包。如为后者,就应动态地通知包过滤器增减过滤规则,满足用户对速度和安全性的双重要求。电路层网关结合了应用层网关型防火墙的安全性和包过滤防火墙的高速度优点,在毫不损失安全性的基础上将代理型防火墙性能提高10倍以上。
电路层网关防火墙特点是将所有跨越防火墙的网络通信链路分为两段。防火墙内外计算机系统间应用层的“链接”,由两个终端代理服务器上的“链接”来实现,外部的网络链路只能到达代理服务器,起到隔离防火墙内外计算机系统的作用。另外,代理服务也对过往数据包分析、注册登记,形成报告,当发现被攻击迹象时向网管员发出警报,并保留攻击的痕迹。
(5)代理技术的优、缺点(www.xing528.com)
●代理易于配置。因为代理是一种软件,所以较过滤路由器更易配置。如代理实现得好,可对配置协议要求较低,从而避免配置错误。
●代理能生成各项记录。因代理工作在应用层,检查各项数据,所以可按一定准则,让代理生成各项日志、记录。这些日志、记录对于流量分析、安全检验十分重要和宝贵。
●代理能灵活、完全控制进出流量与内容。通过采取一定措施,按照一定规则,用户可借助代理实现一整套安全策略,如可控制“谁”和“什么”,以及“时间”和“地点”。
●代理能过滤数据内容。用户可把一些过滤规则应用于代理,让其在高层实现过滤功能,如文本过滤、图像过滤,预防病毒或扫描病毒等。
●代理能为用户提供透明加密机制。用户通过代理控制数据的输入、输出,从而可让代理完成对数据加密、解密功能,方便用户,确保数据的机密性。这点在虚拟专用网中特别重要,代理可广泛用于企业外部网中,提供高安全性的数据通信。
●代理可方便地与其他安全手段集成。目前安全问题解决方案有认证、授权、账号、数据加密、安全协议(SSL)等。如把代理与这些手段联合使用,将大大增加网络安全性。
●代理速度较路由器慢。路由器只是简单察看TCP/IP报头,检查特定的几个域,不做详细分析、记录。而代理工作于应用层,要检查数据包内容,按特定应用协议(如HTTP)进行审查、扫描数据包内容,并进行代理(转发请求或响应),故其速度较慢。
●代理对用户不透明。许多代理要求客户端做相应改动或安装定制客户端软件,这给用户增加不透明度。由于硬件平台和操作系统存在差异,要为庞大的互异网络每一台内部主机安装和配置特定应用程序既耗时间,又易出错。
●对每项服务,代理可能要求不同服务器。可能需要为每项协议设置一个不同的代理服务器,因代理服务器不得不理解协议以便判断什么为允许或不允许,并且还承担对真实服务器来说是客户、对代理客户来说是服务器的角色。选择、安装与配置所有这些不同服务器也是一项规模较大、较复杂的工作。
●代理服务不能保证免受所有协议弱点的限制。作为安全问题解决方案,代理取决于对协议中哪些是安全操作的判断能力。每个应用层协议,或多或少存在安全问题,对于一个代理服务器来说,要彻底避免这些安全隐患几乎不可能,除非关掉这些服务。
●代理不能改进底层协议的安全性。因为代理工作在TCP/IP以上的应用层,所以不能改善底层通信协议能力。如IP欺骗,伪造ICMP消息和一些拒绝服务的攻击。
(6)网络地址转换(NAT)
代理系统是一种将信息从防火墙的一侧传送到另一侧的软件系统。新型防火墙采用两种代理机制,一种用于代理从内部网络到外部网络的连接,另一种用于代理从外部网络到内部网络连接。前者采用网络地址转换技术实现,后者采用非保密的用户定制代理或保密的代理系统技术来解决。
网络地址转换技术是一种用于把内部IP地址转换成临时的、外部的IP地址的技术。在内部网络通过安全网卡访问外部网络时,将产生一个映射记录。系统将外出的源地址和源端口映射为一个伪装的地址和端口,让这个伪装的地址和端口通过非安全网卡与外部网络连接,这样对外就隐藏了真实的内部网络地址,同时还意味着用户不需要为其网络中每台计算机取得注册IP地址。外部网络在通过非安全网卡访问内部网络时,并不知道内部网络连接情况,而只是通过一个开放的IP地址和端口请求访问,防火墙则根据预先定义的映射规则判断该访问是否安全,并确定是否接受该访问请求。网络地址转换的过程对于用户来说是透明的,无须用户进行设置,用户只进行常规操作即可。NAT工作过程如图10-20所示。
图10-20 NAT的工作过程
有些防火墙提供“内网到外网”和“外网到内网”的双向NAT功能。同时支持两种方式的网络地址转换,一种为静态地址映射,即外部地址和内部地址一对一的映射,使内部地址的主机既可访问外部网络,也可接受外部网络提供的服务;另一种是更灵活的方式,可支持多对一的映射,即内部的多台计算机可通过一个外部有效地址访问外部网络。让多个内部IP地址共享一个外部IP地址,就必须转换端口地址,这样内部不同IP地址的数据包就能转换为同一个IP地址而端口地址不同,通过这些端口对外部提供服务,这表明用户无须为其网络中每台计算机取得注册IP地址。利用NAT转换功能不仅可更有效地利用IP地址资源,解决IP地址短缺问题,而且可使系统管理员自行设置内部的地址而不必对外公开,隐藏内部网络真实地址,从而使外来黑客无法探知内部网络结构,同时使用NAT网络,与外部网络的连接只能由内部网络发起,极大提高内网安全性。
(7)网络状态监视器
状态监视器作为防火墙技术其安全特性最佳,它采用一个在网关上执行网络安全策略的软件引擎,称为检测模块。检测模块在不影响网络正常工作的前提下,采用抽取相关数据的方法对网络通信各层实施监测,抽取部分数据,即状态信息,并动态保存作为以后制定安全决策的参考。检测模块支持多种协议和应用程序,并可很容易实现应用和服务的扩充。
广泛使用的Intranet均采用共享信道方法,即把发给指定主机的信息广播到整个网上。在普通方式下,某台主机只能收到发给它的信息,然而只要这台主机将网络接口方式设成“杂乱”模式,就可接收到整个网络上的信息包。利用Intranet这个特性,将监视器接在用户网络环境某个特定位置,如Intranet与Internet连接出口处,则监视器可接收整网上的信息包。
当用户访问到达网关的操作系统前,状态监视器要抽取有关数据进行分析,结合网络配置和安全规定做出接纳、拒绝、鉴定或给该通信加密等决定。一旦某个访问违反安全规则,安全报警器就会拒绝该访问,记录并向系统管理器报告网络状态。状态监视器还可监测Remote ProcedureCall类的端口信息。状态监视器的主要缺点是配置很复杂,还会降低网速。
网络状态监视器基本功能。可按指定IP地址、特定域名或特定用户截取互联网上指定出口处流出信息,或截取全部数据包;把截获数据包重组,还原成用户传递的文件和明文(电子邮件、FTP文件或HTTP文件等);分析、处理截获的信息;用户可查询监控的最终结果,也可实时监视;具有系统操作数据访问安全控制的能力,并且有自动转储的备份机制和智能卡存取访问控制。
网络状态监视器作用。担当网络安全审计功能,利于事后分析、追查网络攻击、破坏、涉密等行为,便于检查网络运行状态和安全状况,可用做网络安全报警和保密检查。
(8)互联网关技术
防火墙必须支持用户享受所有互联网服务,同时还要防止与互联网服务有关的安全漏洞。要能以多种安全的应用服务器(FTP、Finger、Mail、Telnet和WWW等)实现网关功能。为确保其安全性,对所有文件和命令均要利用“改变根系统调用(chroot)”做物理上的隔离。在域名服务方面,采用两种独立域名服务器,一是内部DNS服务器,主要处理内部网络DNS信息;另一是外部DNS服务器,专门用于处理机构内部向互联网提供的部分DNS信息。在匿名FTP方面,服务器只提供对有限的受保护的部分目录的只读访问。在Web服务器中,只支持静态网页,不允许图形或CGI代码等在防火墙内运行;在Finger服务器中,对外部访问,防火墙只提供可由内部用户配置的基本文本信息,不提供任何与攻击有关的系统信息。SMTP与POP邮件服务器处理所有进、出防火墙的邮件,并利用邮件映射与标头剥除方法隐藏内部邮件环境信息。
(9)安全服务器网络
为适应更多用户向互联网上提供服务时对服务器保护的需要,防火墙采用分别保护的策略对用户上网的对外服务器实施保护,利用一张网卡将对外服务器作为一独立网络处理,对外服务器既是内网一部分,又与内部网关完全隔离,这就是安全服务器网络(SSN)技术。对SSN上的主机既可单独管理,也可设置成通过FTP、Telnet等方式从内网实施管理。
SSN技术提供的安全性要比传统的隔离区(DMZ)方法好,因SSN与外网之间有防火墙保护,与内网之间也有防火墙保护,而DMZ只是一种在内外网的网关间存在的防火墙。一旦SSN受破坏,内网仍会处于防火墙保护中,而一旦DMZ受到破坏,内网便暴露于攻击之下。
(10)用户鉴别与加密
为降低防火墙在Telnet、FTP等服务和远程管理上的安全风险,采用一次性使用口令字系统作为用户鉴别手段,并实现对邮件的加密。
(11)用户定制服务
为满足特定用户特定需求,防火墙在提供众多服务的同时,还为用户定制提供支持,这类选项有:通用TCP,出站UDP、FTP、SMTP等类,如某一用户需建立一个数据库的代理,便可利用这些支持来设置。
(12)隔离域名服务器
这种技术是通过防火墙将受保护网络的域名服务器与外部网络的域名服务器隔离,使外部网络的域名服务器只能看到防火墙的IP地址,无法了解受保护网络的具体情况,这样可保证受保护网络的IP地址不被外部网络获悉。
(13)邮件转发技术
当防火墙采用安全技术使外部网络只知道防火墙的IP地址与域名时,从外部网络发来的邮件,就只能送到防火墙上,这时防火墙对邮件进行检查,只有在发送邮件的源主机是被允许通过时,防火墙才对邮件的目标地址进行转换,送到内部的邮件服务器,由其进行转发。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。