版权归原作者所有,如有侵权,请联系我们

[科普中国]-防火墙测试

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

简介

近几年防火墙产品在许多信息技术应用领域得到了广泛发展,防火墙技术也经过了几代发展,这些技术主要包括IP包过滤技术、应用代理技术、状态检测包过滤技术、NP技术等。而怎样正确评价一款防火墙系统,如何对一款防火墙进行正确测试,一直是信息安全领域非常关心的问题。从目前对防火墙的评价体系来看,主要包括四个方面:可管理特性、实现功能、能够达到的性能指标以及在安全性上的具体表现。理论上,防火墙的可管理性越简单、逻辑关系越清楚越好,功能越多越好,性能越高越好,安全性越强越好1。

但实际上,这四个方面之间却往往相互矛盾。比如功能多管理就不能非常简单,同时,安全性好且功能多的防火墙往往对性能产生影响。因此,几乎所有研发防火墙产品的厂商都专门成立防火墙测试组,通过对产品的全方位测试后才定型并投放市场面向用户,而最终用户却无法了解整个产品的技术指标,当系统全部安装上防火墙后才知道能不能满足自己的网络应用,这样,在厂商和用户之间就需要一个双方都信赖的测试机构进行网络应用的评估和产品的测试,基于第三方的测试客观地了解产品的特性,选择最终产品。例如银行、证券、保险等行业都成功地采用了这种方式来选择防火墙。防火墙的测试涉及到的内容较多,包括测试的网络环境、测试的方法、测试的工具以及测试的准则等。研发过程中的测试各个厂商都在进行,但由于测试环境和测试工具的限制,大多数只能进行一些功能实现、管理界面的设置和调整等,对吞吐能力、数据延迟以及抵抗攻击等方面还不能进行完全测试,因此,也不能保证对自己产品的完全了解。对于第三方测试机构的测试,虽然也建立了测试环境、具有较高端测试工具、测试方法和准则,但只能对产品的应用进行测试,无法对系统代码进行测试。例如代码编写时由于疏漏可能出现缓存溢出漏洞等,例如国外某著名硬件防火墙就出现了这样的漏洞,经过多个测试机构都无法测试到这样的结果。

因此,第三方的测试主要是应用测试,深层次的测试仍然无法进行。总体来说,防火墙测试在国内还是一个新的领域,测试方法和手段仍不完善,专门测试机构仍在探索科学的测试方法和测试工具,但无论如何,通过测试,能够检测出防火墙系统存在的某些问题,不但帮助厂商完善了防火墙系统,还推动了防火墙新技术的推广和应用,同时,也有利于整个信息安全产业的发展。1

测试方法防火墙的测试主要包含以下几个方面:

建立测试准则防火墙测试准则包含的内容较多,但主要体现在防火墙测试规范的形成上,它一直是信息安全关注的焦点。规范的建立应包含包过滤防火墙、应用级防火墙及复合型防火墙产品或系统的安全技术要求,并适用于防火墙安全功能的研制、开发、测试、评估和产品采购,同时也适用于对各类防火墙的测试。

目前国家实行的标准有GB/T18019一1999、GB/T18020一1999和GB/T17900一1999。GB/T18019一1999《信息技术包过滤防火墙安全技术要求》规定了包过滤防火墙的最低安全需求,指出该类防火墙应对付的威胁,定义其实现的安全目标及环境,提出安全功能和安全保证要求。GB/T18020一1999((信息技术应用级防火墙安全技术要求》规定了应用级防火墙在低风险(敏感但不保密)环境下的最低安全要求。明确了应用级防火墙应阻止的威胁,定义了它的安全目标和使用环境,提出了应用级防火墙的安全功能和安全保证要求。同时,说明了防火墙安全目标及功能和保证要求的基本原则。GB/T17900一1999((网络代理服务器的安全技术要求》规定了网络代理服务器在低风险环境下的最低安全要求。指出由该类代理服务器所能防止的威胁,定义其实现的安全目标、使用环境以及安全功能和安全保证要求。总的来说,这些国家标准是防火墙产品最基本的要求,大多数防火墙开发商研制、开发的防火墙功能、性能、安全性等各方面都超过了这两个标准所规定的指图功能及管理测试环境示意图被测防火墙控制·暴到SmartBits6000B图性能及安全性测试环境示意图标,而这些指标的测试目前国内尚无一个完整的规范来描述、衡量和比较,这也正是防火墙测试准则建立的任务所在。

从目前的防火墙测试来看,赛迪评测已经修订完《防火墙测试规范》第二版,作为目前防火墙测试的依据,它根据新的网络应用对防火墙的更高安全需求,针对目前防火墙类型现状编写测试准则对于防火墙的测试是非常重要的。

搭建测试环境防火墙测试环境的搭建应能满足各种网络应用的需求,图一和图二是一个典型的测试环境。对防火墙性能及安全性测试采用Spirent公司的网络性能分析仪smartBits6000B及相应的测试软件在测试时,用双绞线把SmartiBts6000B上的两个测试端口分别与防火墙的两个测试接口相连,在防火墙上进行相应的规则配置,运行SmartiBst6000B控制台上相应的应用程序,从SmartiBst6000B的一个端口发送一定类型和数量的数据包通过防火墙,另一个端口监测并记录接收到的数据,进行测试,自动生成测试结果。

确定测试项目确定测试项目是防火墙测试的重要内容之一,一定程度上是对一款防火墙产品的定位,通过测试,能够确定出对用户网络应用产生的影响。下面就主要测试内容分别进行讨论。工作模式的测试是针对用户常见的网络环境及实际需求而进行。测试模式有两种:一种是路由模式,另一种是桥接模式。防火墙工作模式切换时,要求如果防火墙必须重启参数才能生效,防火墙应该给出必要的提示信息,并由用户来选择是否重启防火墙。NAT测试分正向NAT和反向NAT两个方面进行测试。正向NAT测试内容包括将多个内部地址转换为同一个外部地址;将多个内部地址转换为多个外部地址;将每一个内部地址转换为不同的外部地址。反向NAT测试内容包括将一个外部地址转换为一个内部地址;将一个外部地址的服务端口转换为一个内部地址的服务端口;将一个外部地址的端口动态转换为一组内部地址的同一个服务端口。

应用代理测试主要包含以下内容:HTTP代理测试主要包含对HTTP协议的支持、数据完整性测试、容错能力测试、服务器兼容性测试、客户端兼容性测试。SMTP代理测试主要包括对SMTP协议的支持、对多种媒体格式的支持、数据完整性测试、容错能力测试、服务器兼容性测试、客户端兼容性测试。POP3代理测试主要包括对POP3协议的支持、对多种媒体格式的支持、数据完整性测试、容错能力测试、服务器兼容性测试、客户端兼容性测试。

Telnet代理测试主要包括对Telnet协议的支持、对多种媒体格式的支持、容错能力测试、服务器兼容性测试、客户端兼容性测试。FTP代理测试包括对FTP协议的支持、数据完整性测试、容错能力测试、服务器兼容性测试、客户端兼容性测试等。内容过滤测试主要包括HTTP内容过滤;FTP内容过滤;SMTP内容过滤等。

VPN功能测试主要包括防火墙与防火墙之间隧道的建立和通过客户端与防火墙隧道的建立,密钥算法不在测试内容内。防火墙与IDS(人侵检测系统)联动,可以对网络进行动静结合的保护,对网络行为进行细颗粒的检查,并对网络内外两个部分都进行可靠管理。主要测试其有效性。

流量控制测试防火墙一般是通过对IP地址、用户、服务、时间、协议等进行流量统计,并可以与管理界面实现挂接,实时或者以统讨一报表的形式输出结果,从而方便管理员查看和分析网络的运行情况,也非常容易实现流量计费。双机热备测试主要包括当主防火墙发生意外DOWN机、网络故障、硬件故障等情况时,主从防火墙自动切换工作状态,从防火墙代替主防火墙正常工作,从而保证了网络的正常使用。负载均衡可看作动态的端口映射,它将一个外部地址的某一TCP或UDP端口映射到一组内部地址或安全服务区的某一端口,它所适用的某项服务如:HTTP、FTP等分摊到内部或SSN区的服务器上实现负载均衡。

防火墙管理测试指具有对防火墙管理权限的管理员的行为和防火墙对运行状态的管理。管理员的行为主要包括:通过防火墙的身份鉴别,编写防火墙安全规则,配置防火墙的安全参数,查看防火墙日志。在管理测试中还包括管理方式、管理分级、管理认证、远程管理、通信加密、安全措施、集中管理、日志审计、日志分类、日志分析、日志管理、状态监控、系统升级等。

安全性测试主要包含稳定性与可靠性、操作测试、自身抗攻击等。防火墙在授权管理员的正确配置下,应该能抵抗多数对受保护网络内部和自身系统的攻击,即防火墙应该具有人侵检测的能力,这壑攻击包括IP地址欺骗攻击、ICMP攻击、IP分片攻击、DoS(拒绝服务)攻击、口令字探询攻击、邮件诈骗攻击等。防火墙应该具备防御外部攻击(人侵检测)的能力,以达到保护内部网络系统的目的,同时记录安全事件日志,向管理员报警,切断入侵源的连接。

性能测试性能测试是参照RFC建议,从包转发性能和并发连接数对防火墙的性能进行评测,其中防火墙包转发性能包括吞吐量、延迟、丢包率和背对背包等。包转发性能是假定提供给防火墙的数据和防火墙转发的数据之间为一对一的通信,并不包括防火墙提供多播服务的清况。

测试平台为Spirent公司的网络性能分析仪SmartBist 6000B及相应的软件。由于SmartBits测试仪的限制,防火墙性能(包括:吞吐量、延迟、丢包率、背对背包和并发连接数)的测试是针对包过滤防火墙而言的。应用级防火墙的性能测试比较复杂,需要一些专门的软件和工具,不提供具体的作为网络中的访问控制设备,可以通过在防火墙上配置规则集或称访问控制表(ACL)来实现安全策略。防火墙处理规则时需要占用一定的系统资源,为了比较安全规则对包转发性能的影响,要在防火墙上加载多条规则和一条规则,分别测试其吞吐量。

延迟是指按照防火墙的规则集应该转发的数据包最后一个比特进入防火墙接口到该数据包第一比特出现在正确的目的接口上的时间间隔。所测试的延迟是指测试仪发出数据包到经过防火墙后收到该数据包的时间间隔。延迟有两种:存储转发延迟和直通转发延迟,是在给定的速率下(保证防火墙在此速率下不丢包)考察防火墙存储转发的延迟。丢包率是指防火墙在持续负载下,由于缺少资源,应该被转发而没有被转发的数据包占全部数据包的百分比。

丢包率测试是在给定速率下对防火墙进行测试的,并规定对给定速率的设置必须满足在每一种帧长下的吞吐量速率大于或等于给定丢包率速率。根据RFC建议,背对背包的定义为:对于给定的传输媒介,从空闲状态开始,以最小的合法时间/帧间隔发送连续的固定长度的数据帧。背对背包反映了防火墙设备缓冲数据包的能力。在实际应用中,使用NFS协议进行远程磁盘数据存取、数据备份和路由更新等之类的操作,会导致网络上出现较大数据流量,造成网络拥塞,防火墙的缓冲可以减小这种突发数据造成网络拥塞的不良影响。因此,进行此项测试可以考查防火墙缓冲数据包的能力。

并发连接数是指穿越防火墙的主机之间或主机与防火墙之间能同时建立的最大连接数。最大并发连接数指的是防火墙能够同时处理的点对点连接的最大数目。它反映了防火墙对多个连接的访问控制能力和连接状态跟踪能力,以及防火墙对业务信息流的处理能力。并发连接是指能同时转发数据的连接,如果在某个连接上不能传送数据,那么该连接就不能计人并发连接数中去。所指的连接不仅仅指TCP连接,虽然UDP是无连接的协议,但在主机发送UDP数据包穿过防火墙到另一主机的过程中,如果目的主机正在正确的UDP端口监听,它就能收到UDP数据包,规定认为这是一个连接1。

评测结果点评管理技术水平目前防火墙的管理方式分为三种:

一是基于浏览器的Web界面管理方式;

二是基于管理端软件的GUI界面;

三是基于命令行的CLI管理方式。

Web管理方式,提供了简单的管理界面,适合那些功能不是很多的防火墙的管理工作;GUl的管理方式比较直观,适合对防火墙进行复杂的配置,管理多台防火墙,同时支持丰富的审计和日志的功能;CLI管理方式,不太适合对防火墙进行管理,事实上,不太可能通过命令行的方式对一个具有复杂功能的防火墙进行很好的配置,它比较适合高级用户或者厂商对防火墙进行调试,以确定防火墙故障所在。

安全性技术水平目前防火墙的安全性主要表现在运行的稳定、未发现安全漏洞。从目前对国内防火墙产品的测试结果来看,国内市场上防火墙产品的抗攻击能力表现良好。

功能技术水平目前防火墙功能除包过滤和代理功能以外,其附加功能主要有:NAT(网络地址转换)功能、VPN(虚拟局域网)功能、带宽管理功能、URL过滤功能旧志分析功能、内容扫描功能、防病毒功能、负载均衡功能、双机热备功能等。