一种面向下一代防火墙的测试系统和测试方法

文档序号:7796481阅读:146来源:国知局
一种面向下一代防火墙的测试系统和测试方法
【专利摘要】本发明公开了一种面向下一代防火墙的测试系统及测试方法。测试系统由管理、策略、会话生成、结果评判和报告等五个模块组成。测试方法包括:(a)测试策略配置,根据预先设置的参数填充测试规则的数据结构链表,生成具体的测试用例;(b)网络会话生成,构建独立的客户端和服务端程序,分别模拟攻击主机和防火墙所保护网络中的主机,然后分别调用测试用例对应的插件,并把步骤a生成的测试用例参数传递给插件;插件实时生成数据包,并交给客户端或服务端发送,从而生成网络会话或网络攻击会话;(c)测试结果评判,根据会话的完成情况,以及防火墙的行为参数与告警信息,评判测试结果。应用本发明,可实现对下一代防火墙的自动化测试与评估。
【专利说明】一种面向下一代防火墙的测试系统和测试方法
【技术领域】
[0001]本发明属于信息安全【技术领域】,涉及针对下一代防火墙的测试,特别是涉及下一代防火墙的应用识别、用户控制、内容安全、Web攻击防护和未知木马攻击防御等主要安全特征的测试装置和测试方法。
【背景技术】
[0002]防火墙是计算机网络安全体系的重要组成部分,部署在不同的网络(如可信任的企业内部网络和不可信的公共网络)或网络安全域之间。防火墙作为不同网络之间唯一的连接点,根据网络安全策略监控流经的网络数据,且自身具有较强的抗攻击能力。
[0003]随着网络攻击水平的显著提高,具有集团组织甚至国家背景的网络威胁的介入,传统防火墙简单的网络层过滤和应用层协议控制已无法阻止网络攻击的成功渗透,各大网络安全厂商纷纷发布下一代防火墙产品。2009年,Gartner在《Defining theNext-Generation Firewall)) 一文中首次定义了下一代防火墙(NGFW)术语。他认为,NGFW是一种多功能集成式线速网络安全处理平台,应用的识别、控制和可视化是其重要的核心特性,NGFff至少应具备以下特征:
I线速的处理性能。NGFW采用高性能平台,具备千兆、万兆甚至更高的线速处理性能。
[0004]I高度融合的IPS (入侵防护系统)功能。防火墙与IPS引擎高效的整合,实现安全策略实时更新,一次解包完成所有安全控制工作。
[0005]I应用层精细控制。独立于端口、协议的应用层应用识别,可以分辨同一会话连接中的不同应用,基于内容的安全,并使用安全策略加以控制,进一步地,可以对从防火墙内部向外部的SSL连接进行解析和控制。
[0006]I传统防火墙功能。具备目前常规防火墙具有的功能,例如网络地址转换(NAT)、包过滤、状态包检测、流量统计和VPN等功能。
[0007]目前,NGFW厂商不约而同地将目光定位在了应用识别方面,将应用的安全精细识别与控制、内容安全作为NGFW的主要技术特征。这在大大提升防火墙安全防护能力的同时,也给安全测试带来了新的需求和挑战,即如何进行其应用层和内容层安全控制能力的测试与评价。
[0008]目前,针对下一代防火墙主要安全特征的测试,还没有形成系统规范的方法,各测评机构仍然沿用原来针对上一代防火墙的测试系统和测试方法,然后以手工为主,配合一些辅助应用层测试工具。这虽然能够对下一代防火墙进行一定程度的测试,但却存在以下的不足:
一、针对性不强。无法对NGFW的鲜明技术特点进行测试,NGFW针对网络攻击技术的发展,大大强化了应用层的细粒度控制能力,应用识别、内容安全和入侵防御已成为其核心功能,但现有测试手段的重点仍然集中在网络层和传输层层次。
[0009]二、无法进行细粒度的应用层和内容层测试。过去的测试手段,应用层和内容层面的测试内容很少,只有基本的应用层协议识别和少量的URL、关键字过滤等内容,大量网络应用和数据层面的内容无法测试,因而难以有效对下一代防火墙进行准确测试与评估。
[0010]三、缺乏基于应用层的网络攻击测试。现有的攻击测试手段基于网络层的居多,应用层攻击测试缺乏,例如基于协议伪装的木马攻击、Web攻击等等,因而难以对下一代防火墙的安全技术特征进行有效评测。

【发明内容】

[0011]本发明的目的是提供一种用于对下一代防火墙主要安全技术特征的测试系统和测试方法,通过应用层与内容层细粒度的网络会话和网络攻击会话生成,实现对其应用识另|J、用户控制、内容安全、Web攻击防护和木马防御能力的自动化测试与评估。
[0012]本发明的用于下一代防火墙的测试系统,包括:策略模块,用于测试策略的管理,根据预先设置的规则参数填充测试规则的数据结构链表,生成具体的测试用例,所述测试规则的数据结构包括访问方向、源目的IP、源目的端口、源目的MAC地址、协议类型和具体测试数据;会话生成模块,用于产生测试的网络会话或网络攻击会话,该模块构建客户端和服务端程序,分别模拟攻击主机和防火墙所保护网络中的主机,客户端和服务端程序依据定制的测试策略调用测试用例对应的测试插件,并把测试用例参数传递给测试插件,测试插件实时生成相应的数据包,并传递给客户端或服务端进行发送,从而生成网络会话或网络攻击会话;结果评判模块,用于评定测试结果,确定网络安全产品的脆弱性,该模块根据网络会话或网络攻击会话的完成情况,防火墙的告警和日志信息,以及测试用例中的防火墙行为参数,共同评判测试用例的测试结果;会话生成模块和结果评判模块在执行完一个测试用例后,会继续执行测试策略中的下一个测试用例,待测试策略中所有测试用例执行完成以后,此次测试完成;报告模块,用于根据测试结果,生成测试报告。
[0013]其中,该测试系统还进一步包括:管理模块,用于测试环境和参数的配置,以及测试策略的定制。
[0014]本发明的用于下一代防火墙的测试方法,包括以下步骤:
(1)测试策略配置,根据预先设置的测试规则参数填充测试规则的数据结构链表,生成具体的测试用例,所述测试规则的数据结构包括访问方向、源目的IP、源目的端口、源目的MAC地址、协议类型和具体测试数据;
(2)网络会话生成,构建独立的客户端和服务端程序,分别模拟攻击主机和防火墙所保护网络中的主机,客户端和服务端程序依据定制的测试策略调用测试用例对应的测试插件,并把测试用例参数传递给测试插件,测试插件实时生成相应的数据包,并传递给客户端或服务端进行发送,从而生成网络会话或网络攻击会话;
(3)测试结果评判,用于评定测试结果,确定下一代防火墙具备的安全功能和抗攻击能力,该模块根据网络会话或网络攻击会话的完成情况,防火墙的告警和日志信息,以及测试用例中的防火墙行为参数,共同评判测试用例的测试结果。
[0015]
【专利附图】

【附图说明】
[0016]图1为本发明的用于测试下一代防火墙的测试系统的结构框图。
[0017]图2为本发明的测试系统在测试时的连接示意图。[0018]图3为本发明的测试方法的工作流程图。
【具体实施方式】
[0019]下面结合附图和【具体实施方式】对本发明作进一步详细的说明。
[0020]图1是本发明的用于测试下一代防火墙的测试系统的结构框图。该测试系统包括以下模块:
(I)管理模块
该模块提供基于图形界面的人机接口,用于测试环境和参数的配置,以及测试策略的定制。其中,测试环境和参数包括客户端和服务端的通信端口、IP地址和对应的网关IP地址,以及客户端与服务端所处的网络位置和防火墙的工作模式(路由、交换或混合模式)等;用户还可以通过策略模板来定制测试策略,根据测试内容,选择具体的测试策略,并对策略中的规则进行配置,生成测试用例。
[0021](2)策略模块
该模块用于测试策略的管理。策略是网络会话或网络攻击会话产生的依据。本发明支持五种类型的安全测试策略,分别为应用识别策略、用户控制策略、内容安全策略、Web攻击策略和木马攻击策略。进一步地,策略通过规则来体现,每一个具体的策略可包含多条规贝U,并可进行扩展以提升测试能力,例如,Web攻击策略目前就定义了 SQL注入、跨站脚本、Web服务漏洞利用和会话劫持等四种规则类型。而且,对每一种具体的规则,根据安全测试的需要,可生成一至多个测试用例,例如,对SQL注入规则,可根据注入方法的不同,生成不同的测试用例。
[0022]所有测试策略的规则都采用相同的数据结构,包括以下字段:访问方向、源目的IP、源目的端口、源目的MAC地址、协议类型和具体测试数据。其中,访问方向用于确定网络会话是服务端访问客户端还是客户端访问服务端,O表示客户端向服务端发起访问,I表示服务端向客户端发起访问;源、目的MAC地址分别是测试系统客户端或服务端网卡的MCA地址;测试数据根据不同的测试策略,指向不同的具体规则的数据结构。策略结构如下所示:
typedef struct Rule
{
int nDirect; //访问方向,客户端访问服务端nDirect = O;服务端访问客户端 nDirect = I
char szSrcIP[4*4]; // 源 IP char szDestIP [4*4] ; // 目的 IP unsigned short uSrcPort;//源端口 unsigned short uDestPort; // 目的端口 char szSrcMAC[13] ; // 源 MAC 地址 char szDesMAC[13] ;// 目的 MAC 地址
int nProto; // 协议类型,TCP 协议 nProto=l,UDP 协议 nProto = 2,ICMP 协议nProto = 3
pPROTOCONTROL pProtoCtrol; //应用层协议控制,数据结构指针 pCONTENTSECURITY pContentSecurity;// 内容安全,数据结构指针
【权利要求】
1.一种面向下一代防火墙的测试系统,包括: 策略模块,用于测试策略的管理,根据预先设置的测试规则参数填充测试规则的数据结构链表,以生成具体的测试用例; 会话生成模块,用于产生测试的网络会话或网络攻击会话;该模块首先构建独立的客户端和服务端程序,分别模拟攻击主机和防火墙所保护网络中的主机;客户端和服务端程序依据定制的测试策略调用测试用例对应的测试插件,并把测试用例参数传递给测试插件;测试插件实时生成相应的数据包,并传递给客户端或服务端进行发送,从而生成网络会话或网络攻击会话; 结果评判模块,用于评定测试结果,确定防火墙具备的安全功能和抗攻击能力;该模块根据网络会话或网络攻击会话的完成情况,防火墙的告警和日志信息,以及测试用例中的防火墙行为参数,共同评判该测试用例的测试结果; 所述会话生成模块和结果评判模块在执行完一个测试用例之后,会继续执行测试策略中的下一个测试用例,待测试策略中所有测试用例执行完成以后,此次测试完成; 报告模块,用于根据测试结果,生成测试报告。
2.根据权利要求1所述的测试系统,其特征在于,所述测试规则的数据结构包括访问方向、源目的IP、源目的端口、源目的MAC地址、协议类型和具体测试数据。
3.根据权利要求1所述的测试系统,其特征在于,所述测试插件是支撑网络会话或网络攻击会话生成的动态链接库,它与策略中的规则对应,每种规则类型对应一个测试插件;测试插件由外部接口、数据包生成、数据包发送接收和应答包分析四个模块组成;外部接口模块负责接收外部传入的参数,以及把测试结果提交给插件调用者;数据包生成模块负责生成测试需要的各个数据包,如果插件被客户端调用,就会生成客户端需要的各个数据包,如果被服务端调用,则会生成服务端需要的各个数据包;数据包发送与接收模块负责把生成的数据包按照一个完整会话的顺序依次发送出去,发送一个数据包,在接收到期望的应答包后,再发送下一个数据包;应答包分析模块负责分析收到的应答包,对应答包的类型和数据内容进行判断,并把分析结果反馈给数据包发送与接收模块;数据包发送与接收模块会据此来决定是否终止数据包的发送与接收,并把会话的完成情况通过外部接口模块提交给插件的调用者。
4.根据权利要求1或2或3所述的测试系统,其特征在于,所述测试策略包括应用识别策略、用户控制策略、内容安全策略、Web攻击策略和木马攻击策略。
5.根据权利要求1或2或3所述的测试系统,其特征在于,所述测试系统进一步包括管理模块,用于测试环境和参数的配置,以及测试策略的定制。
6.一种面向下一代防火墙的测试方法,包括以下步骤: (1)测试策略配置,根据预先设置的测试规则参数填充测试规则的数据结构链表,生成具体的测试用例,所述测试规则的数据结构包括访问方向、源目的IP、源目的端口、源目的MAC地址、协议类型和具体测试数据; (2)网络会话生成,构建独立的客户端和服务端程序,分别模拟攻击主机和防火墙所保护网络中的主机;客户端和服务端程序依据定制的测试策略调用测试用例对应的测试插件,并把测试用例参数传递给测试插件;测试插件实时生成相应的数据包,并传递给客户端或服务端进行发送,从而生成网络会话或网络攻击会话;(3)测试结果评判,根据网络会话或网络攻击会话的完成情况,防火墙的告警和日志信息,以及测试用例中的 防火墙行为参数,共同评判测试用例的测试结果。
【文档编号】H04L12/26GK103746885SQ201410041805
【公开日】2014年4月23日 申请日期:2014年1月28日 优先权日:2014年1月28日
【发明者】钟力, 何金勇, 姚兰, 阮强 申请人:中国人民解放军信息安全测评认证中心, 钟力
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1