
| 出版日期:2005-06-27 总期号:1423 本年期号:46 |
|
谁最“火”“墙”
——2005防火墙大型 横向评测 文/赛迪评测硬件与网络测试中心 互联网的发展为我们的信息获取和传播提供了前所未有的便利,极大地促进了社会政治、经济、文化等各个领域的发展进步,随着政府、企业及个人对于互联网依赖程度的不断加深,网络安全问题就越来越受到人们的重视。而目前的实际的网络应用环境又不尽如人意,蓄意的攻击、病毒和垃圾邮件的传播对于用户的数据安全、正常的网络应用构成了极大威胁。 基于这一状况,防火墙、防病毒、入侵检测系统、反垃圾邮件、安全审计等一大批网络安全产品从不同角度和层面担负起了网络安全防护的重任,其中,作为可信与非可信网络间重要安全屏障的防火墙以其广泛的市场认知度,常常是用户保护网络安全的首选产品。据CCID数据显示,2004年中国网络安全市场中,防火墙所占份额达43.7%,在网络安全产品层出不穷的今天几乎占到市场总额的一半,可见防火墙在网络安全领域中的重要地位。 目前市场上防火墙品牌型号众多,用户在进行产品选购时常会感到无所适从,为了普及防火墙知识,让用户了解当前防火墙的技术状况,使用户在产品选择时更为理性,中国计算机报联合赛迪评测对市面上十几款防火墙产品进行了横向评测。文中刊登了部分优秀产品。以下是赛迪评测的评测师分别对来自安氏、西安交大捷普、深信服、CheckPoint、WatchGuard等8个国内外厂商的十几款产品进行了测试。测试主要从功能、管理、安全性以及性能等几个方面来考查。 产品如何分类 对于防火墙的分类方式有好多种,可以从硬件架构、所采用的技术等进行不同的分类,而对于最终用户选购产品来讲,其最关心的是防火墙在管理、自身抗攻击性以及功能和性能等方面能否满足实际应用需求,因此,此次防火墙横向测试主要以产品的应用特点和适用的网络规模和来进行分类,这样更便于用户根据自身的实际情况快速定位适于自己应用的产品。首先按照网络应用环境分为千兆防火墙和百兆防火墙两大类,千兆防火墙按照典型的应用分为大型企业级和中型企业级两大类,百兆防火墙中又按照产品适合的网络规模分为中型企业级和中小型企业级两大类。按照产品的实际情况以及各厂商对各自产品的市场定位,8款参加此次评测的产品分类如下表所示。 不同规模的企业对于防火墙产品的各方面要求不太一样,对于一个只有100-200节点的中小型企业来说,由于网络规模不是太大,一般只是采用ISDN方式与外界连接,网络流量较低,对于产品的性能要求不是太高,出于综合成本方面的考虑,防火墙所能实现的功能可以尽可能齐全一些,像防病毒、抗攻击、垃圾邮件过滤等功能可以集成在一起,另外在管理方面应该简单易用。 而对于那些用户规模由几百甚至上千的中型企业,由于网络应用较多,面临的风险会更大,而且在接入方式方面会有更多要求,这时就需要全面考虑防火墙的数据处理能力、可管理性以防火墙自身的安全性及稳定性。此时并不要追求功能上面面俱到,相应像防病毒、垃圾邮件过滤等可以采用另外的解决方案。 对于节点规模更多的大中型企业来说,地域分布广、网络结构复杂,这样对于产品的可靠性、性能及功能就提出了更高要求,要保证产品性能不会成为整网性能瓶颈,而且需要防火墙要能适应复杂的网络环境,在管理上要支持集中和远程管理,要求防火墙必须达到一定的冗余能力,包括对双机热备、负载均衡、多机集群等的支持。 如何进行测试 从哪些方面入手才能较为全面评判一款防火墙是否适用是用户特别通过关心的问题,赛迪评测在多年的网络通信、安全产品测试以及系统性能测试、安全评估中,从用户的实际应用需求出发,结合防火墙的应用特点,总结认为在其众多的评价指标中,可管理性、功能设计、安全性、适用性、稳定性、性能等都会对用户的应用产生影响。 可管理性 对于网络安全来说管理的重要性是非常突出的,所谓三分技术七分管理真不为过。防火墙作为保障网络安全非常重要的设备,对它管理的重要性自然不容忽视,用户要使用一个安全的防火墙系统,就需要实行一套安全的防火墙策略,要根据网络实际情况适时进行策略的修订,这一方面要求防火墙管理人员具备一定的素质,同时对于防火墙管理功能的设计水平也提出了很高要求。防火墙本身的易管理性、认证加密的程度以及日志审计的完整性是反映防火墙管理性好坏的重要标志。 功能设计 从目前市场中防火墙总的功能设计状况来看,大多数产品在这方面已经非常完备,如内容过滤、地址转换、路由、透明代理、地址绑定等。功能设计源自应用需要,用户选择时只能根据实际需要针对性地进行功能点考察。此次测试中我们只对产品的功能点进行了有选择的验证。 安全性 对于防火墙这一保障网络安全的设备来讲,其安全性如何是至关重要的。抗攻击能力可以很好反映出防火墙对各种攻击的抵抗能力。防火墙作为网络的单一通道,要保证受保护网络的安全,它本身应具有抗攻击能力。抗攻击能力的大小反映了它本身的安全性,是网络安全的保证,也是用户购买防火墙的重要参考指标。 为了对防火墙产品在抗DoS能力上有一个比较好的量化,本次测试采用了Smartbits 6000B的Websuite2.6组件进行,Smartbits模拟实际攻击流量由内网向防火墙发送攻击数据包,检测外网口是否能收到数据来判断防火墙可否阻挡DoS攻击。利用Websuite2.6组件可针对Syn flood、Smurf attack、Ping of death、Teardrop attack、Land-based attack、Ping sweep、Ping flood、udp flood、tcp扫描、arp攻击以及jolt2等十多种攻击等进行抵抗性测试。对于本次测试所选用的攻击原理详见“攻击技术简介”部分。 性能测试 作为一种单一网络接入设备,防火墙在保障网络安全的基础上,还应最大程度减少对网络性能的影响。可以反映防火墙性能的指标参数主要有吞吐量、吞吐延迟、并发连接数、每秒新建连接速率、有效带宽等。由于实际中应用环境较为多样,不同的规模、不同应用对于防火墙性能的要求差异很大,一些用户的出口带宽可能只有几兆,日常工作时所需的并发连接数仅几万,对于边界防火墙的性能要求就不会太高,此时在进行防火墙选购时如果盲目追求高吞吐量、高并发连接数并没有太大实际意义,因此对于防火墙的性能用户应有一个理性认识。 在本次防火墙性能测试中,我们采取了在IP层进行吞吐量、吞吐延迟测试,基于应用层进行并发连接数、每秒新建连接数、以及在DDoS攻击下的防火墙性能测试,赛迪评测认为,分别从网络层和应用层两个层面上进行基准和实际应用性能测试可以更全面地反映出产品的真实性能。 在基于IP层的吞吐量、延迟性能测试中,我们使用了SmartBits 6000B的smartflow测试组件,并采用RFC建议,测试采用双向数据流、整个测试时长为120秒,并设置多流的情况进行吞吐率测试。多流设置为双向-100流-UDP(即内、外网的地址共200个且互不相同),源和目标地址都同时变化。由于防火墙功能各异且硬件架构以及技术实现不完全相同,当处于不同工作模式下时性能表现也往往会出现较大差异。为了能全面反映出产品在不同应用模式下的性能状况,我们分别进行了透明、路由和NAT三种常用模式下防火墙的性能测试。另外考虑到通常防火墙在应用中规则数多集中在100条以内,为此使测试结果更贴近实际我们除了测试防火墙在单条规则下的性能外,还进行了加载100条规则后的性能测试。 此次由于测试周期短,并发连接数、每秒新建连接数、有效通过率以及在DDoS攻击下的性能等基于应用层的性能只做了部分测试。 另外,这次评测活动得到广大参测厂商和合作伙伴特别是得到了SPIRENT公司的大力支持,其提供的SmartBits 6000B及相关测试组件和技术支持,使这次防火墙的测试顺利完成,在此表示衷心感谢。 攻击技术有哪些 syn flood攻击 syn flood攻击的测试原理是向防火墙发送大量伪装连接的请求包,这些请求包的发起地址设置为目标不可到达的地址,这样对被攻击对象的第二次握手没有主机响应,造成被攻击对象主机内部存在大量的半开连接,以至于新的正常连接不能进入从而造成服务的停顿甚至死机。 ping of death 攻击 向被攻击主机发送大量的碎片包,使这些碎片组装起来后构成一个超出最大限制的ping 请求包从而造成被攻击主机的缓冲区溢出。 land 攻击 land 攻击是向防火墙发送源地址和目标地址相同的tcp 数据包,利用Smartbits 的攻击包发生器产生该攻击流量从外部网攻击防火墙,考察系统的运行情况是否正常。 Tear Drop 攻击 Tear Drop 攻击是利用了IP 数据片断重组上的弱点。IP数据包在Internet 上传递时,数据包可以分成更小的片断。每个片断看起来都象原来的IP 数据包,不同之处在于,每个片断里都包含一个偏移字段。Teardrop 程序可以生成一系列IP片断,这些IP片断的偏移字段彼此重叠。当这些IP片断到达目标主机,进行重组的时候,某些系统就会崩溃、挂起或重启动。 ping flood 攻击 ping flood 攻击是该攻击在短时间内向目的主机发送大量ping包,造成网络堵塞或主机资源耗尽。 Smurf 攻击 Smurf 攻击是一种强力攻击,针对的是IP标准的一个功能,叫做直接广播寻址。Smurf攻击向路由器发送大量的ICMP(Internet控制信息协议) echo请求数据包(大量的ping)。因为每个包的目标IP地址都是网络的广播地址,所以路由器会把ICMP echo请求以广播形式发给网络上的所有主机。如果有大量主机,那么这种广播就会造成巨大的ICMP echo请求及响应流量。所以它比ping of deaih的流量高出一或两个数量级。如果在发送ICMP echo请求数据包时,使用了假冒的源IP地址,那么攻击造成的ICMP流量不仅会阻塞网络从而产生该攻击流量。 udp flood 攻击 udp flood 攻击是采用发送udp 包的工具从外部网攻击防火墙,考察系统的运行情况是否正常。 jolt2 攻击 jolt2攻击是在一个死循环中不停的发送一个ICMP/UDP 的IP 碎片,可以使Windows 系统的机器死锁。jolt2的影响相当大,通过不停的发送这个偏移量很大的数据包,不仅死锁未打补丁的Windows 系统,同时也大大增加了网络流量。 ARP请求/响应攻击 ARP请求攻击是某机器A要向主机B发送报文,会查询本地的ARP缓存表,找到B的IP地址对应的MAC地址后就会进行数据传输。如果未找到,则广播A一个ARP请求报文,ARP请求攻击就是发送这样大量的ARP请求报文的攻击。 ARP响应攻击是ARP协议并不只在发送了ARP请求才接收ARP应答。当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP和MAC地址存储在ARP缓存中。因此,当局域网中的某台机器B向A发送一个自己伪造的ARP应答,而如果这个应答是B冒充C伪造来的,即IP地址为C的IP,而MAC地址是伪造的,则当A接收到B伪造的ARP应答后,就会更新本地的ARP缓存,这样在A看来C的IP地址没有变,而它的MAC地址已经不是原来那个了。由于局域网的网络流通不是根据IP地址进行,而是按照MAC地址进行传输。所以,那个伪造出来的MAC地址在A上被改变成一个本不存在的MAC地址,这样就会造成网络不通,从而形成ARP响应攻击。 TCP扫描攻击 TCP SYN scan:这种技术也叫half-open scanning,因为它没有完成一个完整的TCP连接。这种方法向目标端口发送一个SYN分组(packet),如果目标端口返回SYN/ACK,那么可以肯定该端口处于检听状态;否则,返回的是RST/ACK。 TCP FIN scan:这种方法向目标端口发送一个FIN分组。按RFC793的规定,对于所有关闭的端口,目标系统应该返回RST标志。这种方法通常用在基于UNIX的TCP/IP堆栈。 TCP Xmas Tree scan:这种方法向目标端口发送一个含有FIN, URG,和PUSH标志的分组。根据RFC793,对于所有关闭的端口,目标系统应该返回RST标志。 TCP Null scan:这种方法向目标端口发送一个不包含任何标志的分组。根据RFC793,对于所有关闭的端口,目标系统应该返回RST标志。 |
|||||||||||||||||||||||||