防火墙技术概论及其发展趋势
摘要:本文将结合国内外最新的防火墙技术现状,从全面的角度对当今的防火墙产品及实现技术进行总结归纳性的阐述,并且将根据互联网时代进一步发展和企业网络安全需求发展的角度,从防火墙的体系结构、检测机制、功能集成、防护位置等各个主要方面论述防火墙技术的未来发展趋势。
前言:
从互联网时代发展之初到今天,防火墙技术一直是网络安全领域中最为重要的、活跃的安全技术,这是由防火墙的部署位置和实现机制而决定的,防火墙永远是网络安全防护体系中的第一道屏障,是企业保障网络安全,保护企业资产的重要手段,也是企业实现网络安全时最先考虑的安全设备。自从1986年美国Digital公司在Internet上安装了全球第一个商用防火墙系统,提出了防火墙概念之后,防火墙技术就一直在飞速的发展,经历了单纯包过滤、应用代理、状态检测、深度检测等一代又一代技术变革之后,防火墙已经演变成一个集成了众多安全技术和安全防范能力的全方位安全设备,并且随着互联网时代的进一步发展,防火墙技术将仍然继续扮演网络安全领域中第一重要的角色。本文将从防火墙的体系结构、检测机制、防护深度、应用感知力、防护位置、功能集成度、组网能力、安全管理等各个主要方面总结与论述防火墙技术现状和发展趋势。
一、体系结构: 告别X86时代
这里所说的体系结构,不是软件设计模型中所说的概念,而指的是防火墙设备的体系结构,或者说是硬件平台的体系结构。 目前,纯软件型防火墙已经基本被淘汰,硬件形态的防火墙按照体系结构的差别主要分为三种:Intel X86结构防火墙、NP防火墙和专用ASIC防火墙。
Intel X86 防火墙目前仍然是防火墙市场的主流,因为X86防火墙具有技术门槛低,生产成本低的优势,因此对于国内400多家防火墙生产厂商的防火墙产品来说,不说全部也有99%的产品是基于X86结构,甚至很多国外的产品如Cisco PIX、 Nokia IP系列、Checkpoint Secure Platform 等都属于这种结构。X86结构又叫公控机结构或PC 结构,使用通用的PC零配件组装或直接使用通用的服务器硬件平台,在上面安装通用操作系统如BSD、Linux或经过优化后的BSD或Linux,之后再在上面安装各家开发的防火墙软件,实际上就是一种软件防火墙。虽然技术及生产成本低,但X86结构的缺陷也是显而易见的,由于X86结构的硬件并非为了网络数据传输而设计,它对数据包的转发能力相对较弱,通用主板的BISO漏洞增加了不稳定的隐患,并且最关键的是x86结构的“中断”调用机制和单总线资源抢占机制不可避免的导致了整体设备在大任务量下的性能和稳定性的集聚下降,而其一旦发生问题,这种通用服务器平台+操作系统+防火墙软件式的X86防火墙在查错时将会非常复杂和令人困饶。有些X86防火墙采用在主板上插ASIC卡来处理流量转发或VPN加密的运算,声称自己也属于ASIC防火墙,其实这种结构属于伪ASIC 结构,其核心仍然还是X86,仍然没有解决单总线资源抢占和中断机制对稳定性的致命影响,并且拼凑性的解决方案更加带来了安全及可靠性上的隐患。 因此在未来的网络环境下,传统的基于x86体系结构的工控机防火墙已不能满足宽带网络高吞吐量、低时延、多业务、高稳定性的要求,而网络处理器(Network Processor)和专用集成电路(ASIC)防火墙技术则是未来硬件防火墙的发展方向。
图1. Intel X86防火墙拼凑式方案和单总线资源抢占机制
网络处理器(NP)是专门为处理数据包而设计的可编程处理器,它的特点是内含了多个数据处理引擎,这些引擎可以并发进行数据处理工作,在处理2到4层的分组数据上比通用处理器具有明显的优势,能够直接完成网络数据处理的一般性任务,采用NP结构设计的防火墙性能好且可以用多组处理器处理复杂的运算。但NP防火墙目前最大的问题就是技术新、代码移殖困难、技术发展不成熟。NP技术前几年刚出现时,人们非常看好,有人预测它在今后几年能在全球带来的总收益可以到20亿美元,但几年过去后,NP技术的发展并不理想,在全球内带来的收益(不光包括防火墙领域)仅有几千万美元。并且,在防火墙领域,NP 技术的发展更是初期,国外大厂的NP防火墙尚且不够成熟,代码移植的困难导致防火墙厂商在X86上积累的经验无法运用到NP产品上,Cisco的FWSM 就是个很好的例子,PIX防火墙上的很多功能FWSM都没有,甚至连管理界面和配置方法都是截然不同的。 国内的NP防火墙更是刚刚开始发展,存在很多功能缺失和软件缺陷(Bug),因此虽然NP是未来防火墙技术的一个发展方向,但目前还尚未成熟,甚至相差很远,用户在目前阶段在关键网络使用NP防火墙存在很大的风险。
相比之下,ASIC 技术在国外已经历了10多年的发展,技术成熟稳定。ASIC防火墙采用多组专门的ASIC芯片处理不同任务,如Session表维持、查找、防拒绝服务攻击、VPN加解密、应用层检测等资源耗用严重的任务,CPU配合处理一些简单功能调用。并且有的发展成熟的ASIC防火墙采用系统多总线结构设计,数据总线与控制总线分开,互不影响,在大任务量大流量环境下,ASIC防火墙可以保持一致的稳定性和性能,是关键网络中有保障的防火墙技术。有很多人对 ASIC防火墙有个说法就是认为它的功能扩展性差,功能扩展不灵活。但实际上,由于ASIC技术的成熟度以及与FPGA配合处理的机制,ASIC防火墙的功能集成度和扩展性是相当好的,并且有的发展成熟的ASIC厂商的产品,如Netscreen防火墙从推出至今,其功能集成度和扩展速度一直保持领先。因此,ASIC 防火墙不但是防火墙技术的发展方向,并且是目前阶段发展成熟的先进的防火墙技术。
二、检测机制: 仍然以状态检测为基础
这里所说的检测机制指的是防火墙的过滤引擎技术,是防火墙的最主要功能——“访问控制”的技术实现机制。 综观防火墙技术的发展史,防火墙的过滤引擎技术经历了以下三个阶段:
第一阶段: 包过滤技术
包过滤防火墙工作在网络层,对数据包的源及目地 IP 具有识别和控制作用,对于传输层,也只能识别数据包是 TCP 还是 UDP 及所用的端口信息。包过滤的优点是工作层次低,速度快,但缺陷是不能跟踪会话状态,如当它配置了仅允许从内到外的 TCP 访问时,一些以 TCP 应答包的形式从外部对内网进行的攻击仍可以穿透防火墙,所以其TCP/UDP端口级别的控制实际上很难或无法实施。当然包过滤还有很多缺陷,如无法理解上层协议,无法防应用层攻击等等,这些最基本的缺陷就不在这里多说了。因此在现阶段,做为专用安全产品的防火墙来说,纯包过滤机制的防火墙都已经被淘汰,目前仅在一些路由器、 Switch Router 以及某些操作系统中做为辅助手段使用。
第二阶段:应用代理网关技术
应用代理网关防火墙彻底隔断内网与外网的直接通信,内网用户对外网的访问变成防火墙对外网的访问,然后再由防火墙转发给内网用户。所有通信都必须经应用层代理转发,访问者任何时候都不能与服务器建立直接的 TCP 连接,应用层的协议会话过程必须符合代理的安全策略要求。应用代理网关的优点是可以检查应用层协议特征,检测深度好,但缺陷也非常突出,包括配置复杂、速度慢,无法支持大规模并发连接等,并且在 IT 领域中,新应用、新协议层出不穷,代理防火墙这种对应用协议需要1对1专门定制开发的特点很难适应这种局面。因此,在现阶段,纯应用代理型防火墙已经基本被淘汰。
第三阶段: 状态检测技术
状态检测防火墙摒弃了包过滤防火墙仅考查数据包的 IP 地址、端口等几个参数,而不关心数据包连接状态变化的缺点,在防火墙内部建立状态表,利用状态表跟踪每一个会话状态,对于UDP、IP、ICMP等非面向连接的协议,防火墙也会为其建立和维持虚拟的状态项。“基于会话”的过滤而不是基于每一个包的过滤,是状态检测的核心特点,它会在状态项中记录很多参数,如连接地址、端口对、序列号、标志等等,对于属于这个会话的数据包,不用检查策略而直接通过(所有状态检测的工作机制都是先查状态表后查规则表,见下图状态检测的处理流程)。状态检测的工作层次仍然是网络层和传输层,并且不是所有包都去检查规则表,所以处理速度很快。它与包过滤相比增加了对会话状态的检查,因此可以真正做到对传输层的完整控制。
图2. 状态检测机制流程图
对于大量的网络层和传输层的攻击,状态检测是目前最好的、最有效率的检测方法,因此状态检测技术是目前所有防火墙过滤引擎技术的核心,也就是说,目前几乎所有的防火墙都是基于状态检测技术。状态检测的缺陷在后面的章节中也会具体谈到,因此目前的主流防火墙不会只采用状态检测技术,多数的防火墙采用在状态检测的基础之上辅助以应用层代理技术、ALG技术、深度检测技术等弥补其不足。 但不管怎样,状态检测的优势决定了它仍会是目前甚至未来几年内防火墙过滤引擎技术的基础。
三、防护深度: 深度检测技术的兴盛
状态检测技术的最大的问题就是检测深度不够,不能防范隐藏在应用层中的攻击。随着互联网技术的发展,目前企业面临着越来越多的应用层攻击。很多成熟的防火墙厂商早在两年前就已经在自己的产品中,在状态检测基础之上加入了深度检测功能,用于识别和拦截应用层攻击。在Netscreen率先推出了DI(Deep Inspection)技术之后,Checkpoint随后推出了AI技术(Application Intelligence),国内厂商也开始向深层检测发展,如天融信的核检测技术、东软的流探测等等,虽然各家起的名字不同,实际上都是为了同一个目的。
深度检测技术为防火墙提供了应用层的防护能力,增强了网络的整体安全性。它在保留状态检测的优点的情况下,可以迅速对网络流量做出分析判断,对状态检测允许的流量进行深层检测,根据应用层信息做出进一步的处理。深度检测技术可以对常见的应用协议如HTTP, SMTP, IMAP, POP, FTP和DNS进行的应用层攻击防护,并且可在将来简单地扩展更多的协议支持。深层检测技术采用和数据接收方相同的方式来理解应用层信息,为了精确地理解,深度检测机制实施包碎片重组,次序重组,去除无用信息和信息正常化处理,当成功重组出了应用层信息后,它就用协议异常检测和服务域攻击特征匹配的方法来对流量里的攻击进行检测和拦截。
图3. 深层检测工作机制示意图
深层检测技术目前已有两年的发展成熟度,在防火墙里集成深度检测技术已经越来越多的得到人们的认可。深度检测技术不但可以进行应用层攻击防范,还可以作到应用层命令控制等一系列的上层协议安全控制手段。实际上深度检测技术就是IDS技术在防火墙中的集成,有人也把具备这种功能的防火墙称为IPS(入侵防御系统)。深度检测技术弥补了状态检测无法保护上层协议的不足,但最大的问题就是处理速度和误报导致的正常业务的误杀。但目前,成熟的防火墙厂商已经对这两个问题有了解决办法,例如Netscreen已经实现了利用专门的ASIC模块实现深度检测,做到进行消耗资源的应用层检测的同时,不影响防火墙的性能和稳定性。另外,对于误报问题,可以通过先报警、再确认、然后再封杀的逐步实施的方法解决。
衡量深度检测技术成熟度的标准主要有应用协议支持数量、应用层攻击检测机制数量、应用层检测效率、攻击特征库数量和特征库更新频率等,未来的深度检测技术的发展,也将会针对以上几个方面进行,并且深度检测也将成为下一代防火墙必不可少的功能。
四、应用感知: ALG技术的需求
状态检测技术的另一个不足就是无法感知应用控制协议,无法跟踪某些动态端口协议的会话,防火墙对一些动态端口协议(常见的如FTP、H.323)不能在防火墙上动态的开放通道,导致这些协议的正常通讯受到影响。应用感知实际上还是一个理解深度的问题,但它又与深度检测技术解决的问题不同。深度检测主要为了进行应用层攻击检测和拦截,而应用感知是为了对应用控制协议的理解,使防火墙能够根据协议控制通讯的内容进行理解,知晓应用将在后续的数据传输中使用什么通道(端口),以便能够在防火墙上及时动态的开放这些通道,待通讯结束后,防火墙自动将这些通道关闭,如果防火墙不能感知这些应用的控制信息,就无法动态的开放通讯通道,影响应用的正常通讯。如果不想影响应用通讯,则必须在防火墙上静态的永久开放多余的端口,一般来讲是从1024~65535的一大段端口范围,给网络或应用服务器带来巨大的安全隐患。
为解决这一问题,防火墙厂商发展了ALG( Application Layer Gateway)技术对特定应用的控制协议进行理解,以便能跟踪这些特殊协议的后续会话通道。最早实现的ALG技术解决的是FTP的应用,因为FTP的应用最广泛,随着网络时代的发展和网络应用的发展,越来越多的应用使用了这种动态端口协议,如前文所提到的FTP、H.323外还有MS-RPC, SUN-RPC,SQL Net,SIP等等,当今广泛流行的视频会议和网络电话等应用都是采用这种协议。这就要求防火墙技术的发展能够不断适应新生的这些动态复杂的应用。下图是防火墙感知H.323通讯并动态开放通道的示意图。
图4. H.323等动态端口协议要求防火墙能配合将端口动态开放
应用感知的另外一个用途就是识别应用通讯的真实性。我们知道,由于防火墙的工作层次低,无法辨别上层协议通讯内容,比如说,如果防火墙允许A到B的HTTP协议通过,那么所有A到B的针对TCP 80的流量都将被放行,即使是具备深度检测功能的防火墙,也只能检测在TCP 80的通讯中是否含有攻击,而不会去管A到B的TCP 80的通讯是不是真正的HTTP通讯,而具备应用感知能力的ALG技术,就可以帮助防火墙确认协议通讯的真实性,检查应用通讯的协议符合性,只有真正的HTTP通讯才允许放行,这样大大增强了网络访问的安全性。
五、防护位置: 从外部边界向全网防护的转变
什么是全网防护?这里所讲到的全网防护是指在整个空间层面上对包括企业内部网、外联网以及企业互联网外部边界在内的所有区域以及他们的子区域的全面保护。全网防护必将成为防火墙技术下一步发展的急迫趋势,因为它是以网络安全发展需求为导向的。也许大家听的过多的一句话就是“绝大部分的安全威胁来自网络内部”,70%也好80%也好,这句话说的再准确一些,应该是“安全威胁来自全网的所有区域,威胁是全方向性的”,而目前人们的安全意识和大多数防火墙的设计思想只集中在了网络边界。更不幸的是,随着互联网应用的不断发展,企业的业务模式也在发生着变化,电子商务、电子政务以及网上银行等的出现,导致了企业网络结构发生了变化,我们已经发现有很多企业的内网已经延伸到了合作伙伴的网络,顾问团网络,甚至是客户的网络,这就给企业网络的安全问题带来了新的挑战,这时内、外网的边界已经变的很模糊了,我们再去找边界可能已经不那么容易找到了,这时边界型防火墙或专门的内网防火墙,已经不能再适应当今的安全需求了。
具备全网防护技术的防火墙的设计思想就是能对全网进行细粒度的安全区段划分,形成蜂窝状的隔离防护体系,大家都知道,其实安全漏洞是难免存在的,误操作是难免存在的,攻击行为也是难免存在的,全网防护的蜂窝状防御体系的目的就是要把这些威胁辐射点限制在最小范围内,不对其它区域造成影响。另外,安全威胁是全方向性的,各个方向上的威胁所能造成的资产损失的严重度是以实际网络的情况与资产部署情况相关的,因此全网防护防火墙技术具有对等性,它对划分的每一个区域都提供了最全面最完整的配置能力,实际蜂窝壁的防御强度是用户可以根据自身的安全需求而灵活设置的。这样,整个网络就形成了以防火墙为防护核心,以蜂窝防御体系为基础,辅助以IDS、蠕虫病毒防御、认证、审计、调查取证(forensic)等其它安全手段的全防卫防护体系。全网防护防火墙技术应该具备以下特点:
1. 支持多安全域的划分,可根据实际网络需求定制出任意多个安全区域
2. 支持高密度的物理接口和VLAN子接口,接口与域是互相独立的,用户可以随意的将某些接口(物理、逻辑)划分到某个安全域中,在同一安全域中可支持分配任意多个接口,提供复杂网络环境部署便利
3. 每个域的职能或安全等级并非事先被绑定的,而是根据企业安全策略的实际需求来自行定义的
4. 在所有区域上都提供等同的,完整的防护能力。无论是网络的各个区域都可以起用例如VPN隧道,Anti-DoS,NAT,认证,审计等全面的安全功能。
5. 由于防护位置从低带宽的边界转向了高带宽和高稳定性要求的内网区域,因此对防火墙的性能和稳定性提出了更高的要求。这也从另一方面反映出了ASIC技术的优势和发展必须性。
六、功能集成: “胖”防火墙更胜一筹
目前在防火墙业界对防火墙的发展普遍存在着两种观点,即所谓的胖瘦防火墙之争。一种观点认为,要采取分工协作,防火墙应该做得精瘦,只做防火墙的专职工作,其它的安全手段由其它安全产品来解决;另一种观点认为,把防火墙做得尽量的胖,把所有安全功能尽可能多地附加在防火墙上,成为一个集成化的网络安全平台。从概念上讲,所谓“胖”防火墙是指安全功能大而全的防火墙,它力图将安全功能尽可能多地包含在内,提供一个集成化的多层安全防护体系。“胖”防火墙的优势是明显的,利用单一的设备实现众多的安全功能,可以在减少投资的基础上还能简化维护和管理,并且由于多种安全技术在内部的有机集成,可以很容易的实现可种安全机制之间的通讯和联动,形成一个真正的全方位的动态防御体系,这是靠许多专职安全产品联动所无法或很难达到的结果。 目前的主流防火墙都属于胖型防火墙,很多成熟的防火墙产品集成了访问控制、VPN、抗拒绝服务攻击、入侵防护、内容安全、认证/授权/审计等安全体系中全面的技术。目前 ,阻碍“胖”防火墙发展的唯一问题就是多功能启用后的性能和稳定性问题,因此很多发展不成熟的病毒功能防火墙、入侵检测防火墙等只敢用于小规模或非重要网络。但目前已经有成熟的防火墙产品,利用多组AISC 模块分别处理不同的安全功能,成功的解决了胖防火墙的致命问题,做到在多功能同时启用后,对设备性能稳定和稳定性没有影响。更多的安全功能的集成,更快的处理效率也将是未来防火墙技术发展的主要趋势。
图5. 先进的ASIC 模块结构解决安全与性能之间的矛盾
七、组网能力: 网络安全产品必须与网络无缝集成
防火墙属于网络安全设备,自然就离不开组网能力的需求。再好的网络安全设备如果不能部署到网络中,也无法发挥它的作用。因此,防火墙技术的一个主要发展方向就是扩充组网功能,比如路由、透明、混合等各种工作模式的支持、PPPoE的支持,DHCP(客户端、服务端、中继)的支持等等。防火墙以路由模式部署到动态路由网络中,需要对相应的动态路由协议(如RIP、OSPF、 BGP等)提供支持,部署在视频会议系统前,则有可能要求对组播协议、组播路由协议(IGMP, PIM-SM, PIM-SSM)提供支持,部署在IPv6网络中,则需要对IPv6协议进行支持,甚至今后的发展方向还包括了对无线网络的支持等等,随着网络技术的发展,防火墙必须能与之适应,因此丰富的组网功能必将是防火墙技术发展的一个重要方向。
八、安全管理:从分散管理向集中管理的转变
在防火墙发展之初,对防火墙系统的管理才用分散式的单独管理,一般使用SSH、Telnet命令行方式或基于IE浏览器或专用客户端的图形界面管理。随着防火墙应用的发展,这种分散单独的管理方式已经越来越无法满足大规模的防火墙系统的部署,需要有统一的集中管理平台对防火墙系统进行统一部署和配置,减少实施复杂度和分散单独配置带来的安全策略的不统一,并且可以进行安全日志的统一收集和信息挖掘,对安全事件进行关联分析,帮助企业发现系统中隐含的威胁,通过及时的调整策略以适应不断变化防护需求。
结论:
随着互联网时代的进一步发展和网络安全需求的发展,防火墙技术也将随之进行一代又一代的变革,目前防火墙已经演变成一个集成了众多安全技术和安全防范能力的全方位安全设备,由于防火墙的部署位置和技术机制,防火墙仍然会在很长一段时间能继续扮演网络安全领域中第一重要的角色。