基于环境模拟的入侵检测系统测试方法
时间:01-24
来源:互联网
点击:
1 引 言
在保障网络的安全性时,入侵检测系统已经成为必选的技术和手段,因为它比起其他的安全技术存在着很多优势。用户在选用IDS时,总是从各自不同的需要来考虑。要衡量IDS的优劣,就需要明确IDS应该具备的性能指标,设计有效的方法来测试。实际上入侵检测系统的测试是一个难度较大的问题,也是一件费时耗力的工作。对于这一工作,许多研究机构都进行了相应的研究,给出了自己的测试方法和测试结果。例如MIT的林肯实验室分别在1998年和1999年进行了 IDS的两次测试,这两次测试的结果曾受到广泛的关注。IBM的苏黎世研究院和其他一些研究机构也做过相似的工作。他们的工作都专注于IDS评估和测试的本身,没有过多考虑到开发者的需要,而且他们的方法实现起来代价都很大。本文既考虑到测试的目的,又考虑了开发者的需要,尽量能够保证测试环境和开发环境的融合,提出模拟现实的网络环境,然后搭建软件平台进行IDS测试的方法。该方法比较容易实现,可控制性强,能够满足IDS测试的多种需要,随后的仿真测试说明该方法是有效的。
2 IDS测试目的及指标
入侵检测系统是一个软硬件结合体系,可以借鉴软件测试方法来测试和评价入侵检测系统,但是纯粹的软件测试方法并不能很好地满足IDS测试的需要。首先要确定应该以什么样的标准来测试IDS,也就是选择测试指标。根据IDS的特点采取定量的测试方法,这些测试指标侧重于那些定量的测量,以及与检测准确度相关的项目。
IDS的主要目的就是有效地检测出入侵行为,并进行及时处理。检测率用来确定在一个时间段内及在给定的环境中IDS可以正确检测到攻击的比率。当系统将正常的行为确认为人侵行为时就是发生误报(False Positive)。误报率用来确定在一个特定的时间段内及在给定环境中IDS所产生的误报比率,大多数产生误报的原因是正常的非恶意的后台流量引起的。当系统将入侵行为确认为正常行为时,则发生漏报(False Negatire)。漏报率用来衡量一个特定的时间段及在给定环境中IDS所产生的漏报比率。
检测率和误报率是紧密相关的,受试者行为特性曲线(Receiver Operating Characteristic,ROC)反映了这两者之间的关系。ROC曲线的横轴是IDS的误报次数,纵轴为检测率,该曲线准确地刻画了IDS的检测率与误报率情况。利用ROC曲线还可以找出IDS的检测和误报之间的平衡点,但是为了获得这个点需要预先做很多工作。
除了上面的几项指标外,还有几项重要的指标需要加以考虑。它们包括:自身安全性(抵抗对于入侵检测系统本身的攻击)、处理高数据流量的能力、事件关联能力、检测未知攻击的能力、确认攻击是否成功的能力等。
3 IDS测试环境
测试环境是对IDS进行评估和测试的基础,因为它直接关系到测试的结果,也直接影响测试的真实性和客观性。无论何种类型的IDS,其运行的真实环境总是一个具体的网络。但是测试中环境却不拘泥于是否是在某种特定的网络里,IDS的部署和配置总是根据它所在的网络环境而千差万别,建立的测试环境应该能够满足 IDS测试中多样性的需要,使它不仅能对测试环境进行灵活的调整,又能在现实网络中使其流量要求与技术指标相符合。测试环境分为三种:现实网络环境、纯软件模拟环境和模拟网络环境。
3.1 现实网络环境和模拟环境
现实网络环境就是本地现有的正在实际使用的网络环境。整个因特网就是一个最大的现实的网络测试环境,如图1所示。
在内网中布置了IDS,该IDS可以是基于主机(Host-based IDS)的,也可以是基于网络(Network-based IDS)的。发起攻击的主机(产生攻击行为的主机,这样的主机可以是一台也可以是多台)可以在网内,也可以在网外。网内和网外是一个相对而言的概念,把与 IDS同在一个局域网中的设备和节点看作网内,其他情况称为网外。发起攻击测试的主机如果是在网内,那么它们应该与所要测试的IDS在同一个局域网内,如果这台主机是在网外,那么它的位置跨度可以很大,它们可以是因特网上的任何机器。
另外,还有一种完全用软件来模拟的方法。这种方法类似于虚拟机技术(如Vmware)和网络仿真技术(如OPNET,ns2)的结合。用一台单主机模拟出一个完备的网络环境,在此虚拟网络环境中部署IDS,然后再配合测试软件就可以进行IDS的测试。这种方法有一定的可行性,因为它的环境单一性使得测试人员能够方便地测试一些轻量级的IDS或者测试IDS某个特定的功能方面。但是这种测试环境下测试效果的好坏还有待于进一步的研究和试验证明。
现实环境的优点是不需要专门建立,实时性高,对特定类型的IDS测试时其测试结果的可信度高;但是也有很多缺点,最主要就是可控性不高,所能测试的IDS范围比较窄,种类比较少。纯软件环境因其本身的运行,十分消耗资源,因此难以胜任较大规模的IDS测试工作。
在保障网络的安全性时,入侵检测系统已经成为必选的技术和手段,因为它比起其他的安全技术存在着很多优势。用户在选用IDS时,总是从各自不同的需要来考虑。要衡量IDS的优劣,就需要明确IDS应该具备的性能指标,设计有效的方法来测试。实际上入侵检测系统的测试是一个难度较大的问题,也是一件费时耗力的工作。对于这一工作,许多研究机构都进行了相应的研究,给出了自己的测试方法和测试结果。例如MIT的林肯实验室分别在1998年和1999年进行了 IDS的两次测试,这两次测试的结果曾受到广泛的关注。IBM的苏黎世研究院和其他一些研究机构也做过相似的工作。他们的工作都专注于IDS评估和测试的本身,没有过多考虑到开发者的需要,而且他们的方法实现起来代价都很大。本文既考虑到测试的目的,又考虑了开发者的需要,尽量能够保证测试环境和开发环境的融合,提出模拟现实的网络环境,然后搭建软件平台进行IDS测试的方法。该方法比较容易实现,可控制性强,能够满足IDS测试的多种需要,随后的仿真测试说明该方法是有效的。
2 IDS测试目的及指标
入侵检测系统是一个软硬件结合体系,可以借鉴软件测试方法来测试和评价入侵检测系统,但是纯粹的软件测试方法并不能很好地满足IDS测试的需要。首先要确定应该以什么样的标准来测试IDS,也就是选择测试指标。根据IDS的特点采取定量的测试方法,这些测试指标侧重于那些定量的测量,以及与检测准确度相关的项目。
IDS的主要目的就是有效地检测出入侵行为,并进行及时处理。检测率用来确定在一个时间段内及在给定的环境中IDS可以正确检测到攻击的比率。当系统将正常的行为确认为人侵行为时就是发生误报(False Positive)。误报率用来确定在一个特定的时间段内及在给定环境中IDS所产生的误报比率,大多数产生误报的原因是正常的非恶意的后台流量引起的。当系统将入侵行为确认为正常行为时,则发生漏报(False Negatire)。漏报率用来衡量一个特定的时间段及在给定环境中IDS所产生的漏报比率。
检测率和误报率是紧密相关的,受试者行为特性曲线(Receiver Operating Characteristic,ROC)反映了这两者之间的关系。ROC曲线的横轴是IDS的误报次数,纵轴为检测率,该曲线准确地刻画了IDS的检测率与误报率情况。利用ROC曲线还可以找出IDS的检测和误报之间的平衡点,但是为了获得这个点需要预先做很多工作。
除了上面的几项指标外,还有几项重要的指标需要加以考虑。它们包括:自身安全性(抵抗对于入侵检测系统本身的攻击)、处理高数据流量的能力、事件关联能力、检测未知攻击的能力、确认攻击是否成功的能力等。
3 IDS测试环境
测试环境是对IDS进行评估和测试的基础,因为它直接关系到测试的结果,也直接影响测试的真实性和客观性。无论何种类型的IDS,其运行的真实环境总是一个具体的网络。但是测试中环境却不拘泥于是否是在某种特定的网络里,IDS的部署和配置总是根据它所在的网络环境而千差万别,建立的测试环境应该能够满足 IDS测试中多样性的需要,使它不仅能对测试环境进行灵活的调整,又能在现实网络中使其流量要求与技术指标相符合。测试环境分为三种:现实网络环境、纯软件模拟环境和模拟网络环境。
3.1 现实网络环境和模拟环境
现实网络环境就是本地现有的正在实际使用的网络环境。整个因特网就是一个最大的现实的网络测试环境,如图1所示。

在内网中布置了IDS,该IDS可以是基于主机(Host-based IDS)的,也可以是基于网络(Network-based IDS)的。发起攻击的主机(产生攻击行为的主机,这样的主机可以是一台也可以是多台)可以在网内,也可以在网外。网内和网外是一个相对而言的概念,把与 IDS同在一个局域网中的设备和节点看作网内,其他情况称为网外。发起攻击测试的主机如果是在网内,那么它们应该与所要测试的IDS在同一个局域网内,如果这台主机是在网外,那么它的位置跨度可以很大,它们可以是因特网上的任何机器。
另外,还有一种完全用软件来模拟的方法。这种方法类似于虚拟机技术(如Vmware)和网络仿真技术(如OPNET,ns2)的结合。用一台单主机模拟出一个完备的网络环境,在此虚拟网络环境中部署IDS,然后再配合测试软件就可以进行IDS的测试。这种方法有一定的可行性,因为它的环境单一性使得测试人员能够方便地测试一些轻量级的IDS或者测试IDS某个特定的功能方面。但是这种测试环境下测试效果的好坏还有待于进一步的研究和试验证明。
现实环境的优点是不需要专门建立,实时性高,对特定类型的IDS测试时其测试结果的可信度高;但是也有很多缺点,最主要就是可控性不高,所能测试的IDS范围比较窄,种类比较少。纯软件环境因其本身的运行,十分消耗资源,因此难以胜任较大规模的IDS测试工作。
仿真 相关文章:
- 基于速度匹配软件的网络芯片仿真方法(11-06)
- 使用NI PXI和LabVIEW实时模块有效简化硬件在环仿真系统(06-14)
- PCI总线智能GJB289A仿真卡设计(01-06)
- 导入灵活的FPGA验证方法(06-21)
- 测试SDRAM控制器的PDMA(01-04)
- 安捷伦展示3D-EM软件版本整合电路设计流程(05-27)
