一种用于网络安全产品的测试系统及测试方法

文档序号:7922308阅读:170来源:国知局
专利名称:一种用于网络安全产品的测试系统及测试方法
技术领域
本发明属于信息安全技术领域,涉及网络安全产品的测试,特别是涉及
一种防火墙、统一威胁管理(Universal Threat Management, UTM)和安全
网关的测试装置和测试方法。
背景技术
防火墙、UTM和安全网关等网络安全产品是计算机网络安全体系的重要组 成部分,部署在不同网络(如可信任的企业内部网络和不可信的公共网络) 或网络安全域之间。这些网络安全产品作为唯一的强制i方问控制点,根据网 络安全策略监控流经的网络数据,且自身具有较强的抗攻击能力。但即使这 些安全产品通过了权威测评机构的离线仿真测试,获得了认证证书,是合格 的安全产品,它们在实际的网络环境应用时,仍有很大的可能性存在管理配 置方面的脆弱性,例如,安全策略的配置不当,安全设备被攻击突破,升级 导致某些模块失效,等等。因此,随着防火墙、UTM和安全网关这些安全产品 的广泛应用,它们的管理配置脆弱性,即策略配置有效性、抗攻击渗透有效 性和升级更新有效性正逐渐成为网络安全管理部门和用户关心的问题,对相 关测试工具和方法的需求也更为迫切。
目前,在对防火墙、UTM和安全网关等安全产品的管理配置脆弱性测试方 面,各测试评估和安全检查机构普遍采用的方法是手工测试。测试员登录到 安全产品上,査看安全产品的管理配置和日志审计情况,以及人工产生各种
5网络访问连接来穿越安全产品,然后根据网络访问情况,来判断安全产品是 否存在管理配置脆弱性。这种手工的方法虽然能够对安全产品进行一定程度 的测试,但却存在以下的不足
一、 手工测试虽然可以产生穿越安全设备的网络流量,来对管理配置脆 弱性进行实时在线的测试,但存在效率低下、环境配置复杂,难以进行大批 量的测试或重复测试等诸多问题。
二、 手工测试在对网络安全产品进行实时在线的安全测试时,会受限于 目标网络提供的条件,例如,提供的网络服务较少,对目标网络不熟悉。
三、 手工测试需要利用目标网络的设备的来参与测试,在进行某些比如 传输恶意代码或执行恶意代码的测试时,可能会引入安全风险而对目标网络 造成损害。

发明内容
本发明的目的是提供一种用于对防火墙、UTM和安全网关等网络安全产品 的管理配置脆弱性进行测试的测试系统和测试方法,从而实现了对上述产品 的策略配置有效性、抗攻击渗透有效性和升级更新有效性的自动、实时在线 检测。
本发明的用于网络安全产品的测试系统,包括策略模块,用于测试策
略的管理,根据预先设置的规则参数填充测试规则的数据结构链表,生成具 体的测试用例,所述测试规则的数据结构包括访问方向、源IP、目的IP、访
问端口、规则类型、网络安全产品行为和用户自定义字段;会话生成模块, 用于产生测试的网络会话或网络攻击会话,该模块构建客户端和服务端程序,分别模拟网络安全产品所隔离的两个网络中的主机,客户端和服务端程序依 据定制的测试策略调用测试用例对应的测试插件,并把测试用例参数传递给 测试插件,测试插件实时生成相应的数据包,并传递给客户端或服务端进行 发送,从而生成网络会话或网络攻击会话;结果评判模块,用于评定测试结 果,确定网络安全产品的脆弱性,该模块根据网络会话或网络攻击会话的完 成情况,以及测试用例中的网络安全产品行为参数,共同评判测试用例的测 试结果;会话生成模块和结果评判模块在执行完一个测试用例后,会继续执 行测试策略中的下一个测试用例,待测试策略中所有测试用例执行完成以后, 此次测试完成;报告模块,用于根据测试结果,生成测试报告。
其中,该测试系统还进一步包括管理模块,用于测试环境和参数的配 置,以及测试策略的定制。
本发明的用于网络安全产品的测试方法,包括以下步骤
① 配置测试策略,根据预先设置的测试规则参数填充测试规则的数据结 构链表,生成具体的测试用例,所述测试规则的数据结构包括访问方向、源 IP、目的IP、访问端口、规则类型、网络安全产品行为和用户自定义字段;
② 生成网络会话,构建客户端和服务端程序,分别模拟网络安全产品所 隔离的两个网络中的主机,客户端和服务端程序依据定制的测试策略调用测 试用例对应的测试插件,并把测试用例参数传递给测试插件,测试插件实时 生成相应的数据包,并传递给客户端或服务端进行发送,从而生成网络会话 或网络攻击会话;
③ 结果评判,用于评定测试结果,确定网络安全产品的脆弱性,该模块根据网络会话或网络攻击会话的完成情况,以及测试用例中的网络安全产品 行为参数,共同评判测试用例的测试结果。
与现有网络安全产品的管理配置脆弱性测试方法相比,本发明采用计算 机自动测试技术,实现了对网络安全产品的策略配置有效性、抗攻击渗透有 效性和升级更新有效性的自动、实时在线检测,大大提高了测试的效率。


图l为本发明的用于实时在线测试防火墙、UTM和安全网关的测试系统的 结构框图。
图2为本发明的测试系统在测试时的连接示意图。 图3为本发明的测试方法的工作流程图。
具体实施例方式
下面结合附图和具体实施方式
对本发明作进一步详细的说明。 图l是本发明的用于测试防火墙、UTM和安全网关的测试系统的结构框图。
该测试系统包括以下模块
(1)管理模块
该模块提供基于图形界面的人机接口,用于测试环境和参数的配置,以 及测试策略的定制。其中,测试环境和参数包括客户端和服务端的IP地址和 对应的网关IP地址,以及客户端与服务端所处的网络位置和被测设备的工作
模式(路由、交换或混合模式)等;用户还可以通过策略模板来定制测试策 略,根据测试内容,选择具体的测试策略,并对策略中的规则进行配置,生 成测试用例。(2)策略模块
该模块用于测试策略的管理。策略是网络会话或网络攻击会话产生的依 据。本发明支持三种类型的安全测试策略,分别为安全策略配置有效性、抗 攻击渗透有效性和升级更新有效性策略,而且,所述三种类型的测试策略可
具体到包过滤策略、应用服务访问策略、IP/MAC绑定策略、NAT转换策略、
代理策略、信息过滤策略、恶意代码策略以及升级检测策略等。进一步地, 策略通过规则来体现,每一个具体的策略可包含多条规则,并可进行扩展以
提升测试能力,例如,包过滤策略目前就定义了TCP、 UDP、 ICMP三种规则类
型。而对每一种具体的规则,根据测试的需要,可生成一至多个测试用例,
例如,对TCP规则,可生成针对不同应用协议或IP地址的测试用例。
所有测试策略的规则都采用相同的数据结构,包括以下字段访问方向、
源工P、目的IP、访问端口、规则类型、网络安全产品行为及4个备用字段。其
中,访问方向用于确定网络会话是服务端访问客户端还是客户端访问服务端,
O表示客户端向服务端发起访问,l表示服务端向客户端发起访问;规则类型
用于指明具体的规则类型;网络安全产品行为字段则用于说明被测安全设备
对此条测试策略的行为。其数据结构如下所示-Struct Rule
励RD dwDerection long ISrcIP; long IDesIP; Short uPort;
〃访问方向 〃源IP 〃目的IP 〃访问端口
9DWORD dwTyoe; DWORD dwAction; char szParal[255]; char szPara2[255]; DWORD dwParal; DWORD dwPara2; Struct Rule* pNext
配置策略时,根据用户设置的测试参数,来填充这个规则的数据结构链 表,就能够生成具体的测试用例。策略中的测试用例可以增加、删除和修改, 同时也可以将本次配置好的策略予以保存,以便以后调用。 (3)会话生成模块
该模块用于产生测试的网络攻击会话。它首先构建客户端和服务端程序, 分别模拟网络安全产品所隔离的两个网络中的主机;客户端和服务端程序依 据定制的测试策略调用测试用例对应的测试插件,并把测试用例参数传递给 测试插件;测试插件实时生成相应的数据包,并传递给客户端或服务端进行 发送,从而生成网络会话或网络攻击会话;执行完成后,客户端或服务端程 序从测试插件中获取网络会话或网络攻击会话的完成情况。
所述测试插件是支撑网络会话生成的动态链接库,它与策略中的规则对 应,每种规则类型对应一个测试插件。测试插件由外部接口、数据包生成、 数据包发送接收和应答包分析四个模块组成。外部接口模块负责接收外部传 入的参数,以及把测试结果提交给插件调用者。数据包生成模块负责生成测 试需要的各个数据包,如果插件被客户端调用,就会生成客户端需要的各个
〃规则类型,指明是哪种类型的检测 〃网络安全产品行为 〃根据dwTyoe不同填充的参数 〃根据dwTyoe不同填充的参数 〃根据dwTyoe不同填充的参数 〃根据dwTyoe不同填充的参数数据包;如果被服务端调用,则会生成服务端需要的各个数据包。数据包发
送与接收模块负责把生成的数据包按照一个完整会话的顺序依次发送出去, 发送一个数据包,在接收到期望的应答包后,再发送下一个数据包。应答包 分析模块负责分析收到的应答包,对应答包的类型(是连接建立时的应答包, 还是数据传送时的应答包,还是中断连接的应答包,等等)和数据内容进行 判断,并把分析结果反馈给数据包发送与接收模块。数据包发送与接收模块 会据此来决定是否终止数据包的发送与接收,并把会话的完成情况通过外部 接口模块提交给插件的调用者。
(4) 结果评判模块
该模块用于评定测试结果,确定网络安全产品的脆弱性;它根据网络会 话或网络攻击会话的完成情况,以及测试用例中的网络安全产品行为参数, 共同评判该测试用例的测试结果。
上述会话生成模块和结果评判模块在执行完一个测试用例之后,会继续 执行测试策略中的下一个测试用例,待测试策略中所有测试用例执行完成以 后,此次测试完成。
(5) 报告模块
该模块用于产生测试结果报告。在测试完成之后,根据每个测试用例的 测试结果,生成测试报告。测试报告从安全策略配置有效性、抗攻击渗透有 效性和升级更新有效性三个方面,评估网络安全产品的脆弱性,以饼状图和 柱状图的形式来显示测试结果,并导出PDF或WORD格式的文档。
图2是本发明的测试系统在测试时的连接示意图。测试系统基于双宿主机平台,可以是具有两个网络接口的笔记本电脑、PC主机或服务器;客户端C和 服务端S是测试系统的实时产生网络会话或网络攻击会话的两个通信实体,分
别绑定在不同的网络接口上;接口1和接口2是防火墙等安全产品上的内网、 外网或DMZ中的任意两个接口;端口1和端口2是与防火墙等安全产品的接口1 和接口2相连的路由器或交换机上的两个任意端口。
测试时,测试系统的客户端C和服务端S同时与同安全产品接口1或接口2 相连的路由器或交换机上的两个任意端口连接,分别模拟网络安全产品所隔 离的两个网络中的主机。这样,测试设备所产生的网络会话或网络攻击会话 将穿越网络安全产品,并在测试设备上形成闭环。作为测试仪器,测试系统 的客户端C和服务端S没有主机内的数据转发,从而确保测试时不存在回路。
图3是本发明的用于网络安全产品测试的测试方法,包括以下步骤
① 配置测试策略,根据预先设置的测试规则参数填充测试规则的数据结 构链表,生成具体的测试用例,所述测试规则的数据结构包括访问方向、源
IP、目的IP、访问端口、规则类型、网络安全产品行为和用户自定义字段;
② 生成网络会话,构建客户端和服务端程序,分别模拟网络安全产品所 隔离的两个网络中的主机,客户端和服务端程序分别调用测试用例对应的测 试插件,并把步骤①生成的测试用例参数传递给测试插件;测试插件实时生 成相应的数据包,并传递给客户端或服务端进行发送,从而生成网络会话或 网络攻击会话;
③ 测试结果评定,根据网络会话或网络攻击会话的完成情况,以及测试 用例中的网络安全产品行为参数,共同评判测试用例的测试结果。这里,我们通过一个基本的包过滤测试策略的测试过程来进行详细说明。 首先假设现在要对某单位的一台防火墙进行测试,此防火墙隔离内外网 络,它承担的功能是使内网可以访问外网,外网不能访问内网,防火墙内网
段为192. 168. 1.1/32,外网段为IO. 10. 10. 1/32。这台防火墙的策略规则比较 简单,对它进行安全性测试只需要配置这样的测试策略从内网到外网和从 外网到内网两个方向的包过滤策略,且每个方向都包含TCP、 UDP、 ICMP三种 协议的规则,内网到外网的访问允许,而外网到内网的访问禁止。 (1)测试策略配置
策略体现在规则上,配置规则就是填充下面这个数据结构链表,从而生
成具体的测试用例。对于此台防火墙的测试,需要配置6次规则的数据结构,
生成6个测试用例,其中TCP、 UDP和ICMP三种协议各配置2个, 一个是从内网
访问外网的, 一个是从外网访问内网的。例如,生成一个从内网访问外网的
TCP策略规则的测试用例,需要把规则结构中的参数进行如下配置 Rule
DWORD dwDerection = 0; 〃访问方向为内网访问外网
long ISrcIP = 192. 168. 1. 167; 〃源IP
long IDesIP = 10. 10. 10. 13; 〃目的IP
Short uPort = 80; 〃访问端口为http服务
DWORD dwTyoe = 1; 〃规则类型为TCP包过滤检测
DWORD dwAction = 0; 〃防火墙行为是允许
char szParal [255]; 〃空,包过滤检测不需要额外的参数了
char szPara2[255]; 〃空,包过滤检测不需要额外的参数了DWORD dwParal; 〃空,包过滤检测不需要额外的参数了
DWORD dwPara2: 〃空,包过滤检测不需要额外的参数了
Struct Rule氺 pNext;
根据这个测试用例生成具体的数据包时,这些参数会传递给对应的测试 插件,测试插件生成数据包时需要改变的内容在这些参数中体现,不需要改 变的内容直接存储在测试插件本身中,测试插件根据这个结构中的参数和测 试插件中存储的内容生成一个个具体的测试数据包。 (2)网络会话生成
生成测试用例之后即可进行测试,客户端和服务端会根据测试用例对应 的规则结构中的参数来生成具体的数据包。这里,访问方向dwDerection字段 为0,表示是客户端首先向服务端发起访问。数据包会试图穿越防火墙到达对 方,每发送一个数据包都会等待对方的应答包,只有收到期望的应答包后才 会发送下一个数据包(若防火墙不拦截数据包,每发送一个数据包是肯定会 收到期望的应答包的),否则,在等待一段时间后中断数据包的发送。 (3)测试结果评定
根据网络会话是否成功,以及测试用例所对应的规则的网络安全产品行 为字段,来共同确定防火墙的规则是否生效。假设网络会话成功地完成,那 么如果行为字段为允许,则表明防火墙的这条规则生效,测试结果为"通过"; 如果行为字段为拒绝,则表明防火墙的这条规则失效,测试结果为"不通过"。 假设网络会话没有成功地完成,那么如果行为字段为允许,则表明防火墙的 这条规则失效,测试结果为"不通过";如果行为字段为拒绝,则表明防火墙的这条规则有效。这里,该测试用例的行为字段为允许,如果网络会话没有 成功地完成(数据包被防火墙拦截或修改),那么就可以判定防火墙的这条规 则是失效的,或是说存在这方面的脆弱性。 一个功能运行正常,没有安全脆 弱性的防火墙,其测试结果应都为通过。
权利要求
1. 一种用于网络安全产品的测试系统,包括策略模块,用于测试策略的管理,根据预先设置的测试规则参数填充测试规则的数据结构链表,以生成具体的测试用例;会话生成模块,用于产生测试的网络会话或网络攻击会话;该模块首先构建客户端和服务端程序,分别模拟网络安全产品所隔离的两个网络中的主机;客户端和服务端程序依据定制的测试策略调用测试用例对应的测试插件,并把测试用例参数传递给测试插件;测试插件实时生成相应的数据包,并传递给客户端或服务端进行发送,从而生成网络会话或网络攻击会话;结果评判模块,用于评定测试结果,确定网络安全产品的脆弱性;该模块根据网络会话或网络攻击会话的完成情况,以及测试用例中的网络安全产品行为参数,共同评判该测试用例的测试结果;所述会话生成模块和结果评判模块在执行完一个测试用例之后,会继续执行测试策略中的下一个测试用例,待测试策略中所有测试用例执行完成以后,此次测试完成;报告模块,用于根据测试结果,生成测试报告。
2. 根据权利要求l所述的测试系统,其特征在于,所述测试规则的数据 结构包括访问方向、源IP、目的IP、访问端口、规则类型、网络安全产品行 为和用户自定义字段。
3. 根据权利要求l所述的测试系统,其特征在于,所述测试插件是支撑 网络会话生成的动态链接库,它与策略中的规则对应,每种规则类型对应一个测试插件;测试插件由外部接口、数据包生成、数据包发送接收和应答包分析四个模块组成;外部接口模块负责接收外部传入的参数,以及把测试结 果提交给插件调用者;数据包生成模块负责生成测试需要的各个数据包,如 果插件被客户端调用,就会生成客户端需要的各个数据包,如果被服务端调 用,则会生成服务端需要的各个数据包;数据包发送与接收模块负责把生成 的数据包按照一个完整会话的顺序依次发送出去,发送一个数据包,在接收 到期望的应答包后,再发送下一个数据包;应答包分析模块负责分析收到的 应答包,对应答包的类型和数据内容进行判断,并把分析结果反馈给数据包 发送与接收模块;数据包发送与接收模块会据此来决定是否终止数据包的发 送与接收,并把会话的完成情况通过外部接口模块提交给插件的调用者。
4. 根据权利要求1或2或3所述的测试系统,其特征在于,所述测试策 略包括包过滤策略、应用服务访问策略、IP/MAC绑定策略、NAT转换策略、 代理策略、信息过滤策略、恶意代码策略以及升级检测策略。
5. 根据权利要求1或2或3所述的测试系统,其特征在于,所述测试系 统进一步包括管理模块,用于测试环境和参数的配置,以及测试策略的定制。
6. —种用于系统网络安全产品的测试方法,包括以下步骤① 配置测试策略,根据预先设置的测试规则参数填充测试规则的数据结 构链表,生成具体的测试用例,所述测试规则的数据结构包括访问方向、源 IP、目的IP、访问端口、规则类型、网络安全产品行为和用户自定义字段;② 生成网络会话,构建客户端和服务端程序,分别模拟网络安全产品所 隔离的两个网络中的主机;客户端和服务端程序依据定制的测试策略调用测试用例对应的测试插件,并把测试用例参数传递给测试插件;测试插件实时 生成相应的数据包,并传递给客户端或服务端进行发送,从而生成网络会话 或网络攻击会话;③测试结果评定,根据网络会话或网络攻击会话的完成情况,以及测试 用例中的网络安全产品行为参数,共同评判测试用例的测试结果。
全文摘要
本发明公开了一种用于网络安全产品的测试系统及测试方法,该测试系统包括策略模块、会话生成模块、结果评判模块和报告模块。该测试方法包括以下步骤(a)填充测试规则的数据结构链表,生成具体的测试用例;(b)构建客户端和服务端程序,分别模拟网络安全产品所隔离的两个网络中的主机,并通过客户端和服务端程序调用测试用例对应的测试插件以实时生成相应的数据包,并传递给客户端或服务端进行发送,从而生成网络会话或网络攻击会话;(c)根据会话完成情况及测试用例中的网络安全产品行为参数,评判测试用例的测试结果。应用本发明,可实现对网络安全产品的策略配置有效性、抗攻击渗透有效性和升级更新有效性的自动、实时的在线检测。
文档编号H04L12/26GK101447898SQ20081018100
公开日2009年6月3日 申请日期2008年11月19日 优先权日2008年11月19日
发明者何金勇, 云 唐, 力 钟 申请人:中国人民解放军信息安全测评认证中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1