入侵检测系统的测试与评估
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
随着入侵检测系统的广泛应用,对入侵检测系统进行测试和评估的要求也越来越迫切。开发者希望通过测试和评估发现产品中的不足,用户希望测试和评估来帮助自己选择合适的入侵检测产品。本文根据目前的相关研究,介绍了入侵检测系统测试评估的标准、指标,方法步骤、数据来源、环境配置、测试评估的现状以及其中存在的一些问题。
1 引言
随着人们安全意识的逐步提高,入侵检测系统(IDS)的应用范围也越来越广,各种各样的IDS也越来越多。那么IDS能发现入侵行为吗?IDS是否达到了开发者的设计目标?什么样的IDS才是用户需要的性能优良的IDS呢?要回答这些问题,都要对IDS进行测试和评估。和其他产品一样,当IDS发展和应用到一定程度以后,对IDS进行测试和评估的要求也就提上日程表。各方都希望有方便的工具,合理的方法对IDS进行科学。公正并且可信地测试和评估。对于IDS的研制和开发者来说,对各种IDS进行经常性的评估,可以及时了解技术发展的现状和系统存在的不足,从而将讲究重点放在那些关键的技术问题上,减少系统的不足,提高系统的性能;而对于IDS的使用者来说,由于他们对IDS依赖程度越来越大,所以也希望通过评估来选择适合自己需要的产品,避免各IDS产品宣传的误导。IDS的用户对测试评估的要求尤为迫切,因为大多数用户对IDS本身了解得可能并不是很深入,他们希望有专家的评测结果作为自己选择IDS的依据。
总地来说,对IDS进行测试和评估,具有以下作用:
·有助于更好地刻划IDS的特征。通过测试评估,可更好地认识理解IDS的处理方法、所需资源及环境;建立比较IDS的基准;领会各检测方法之间的关系。
·对IDS的各项性能进行评估,确定IDS的性能级别及其对运行环境的影响。
·利用测试和评估结果,可做出一些预测,推断IDS发展的趋势,估计风险,制定可实现的IDS质量目标(比如,可靠性、可用性、速度、精确度)、花费以及开发进度。
·根据测试和评估结果,对IDS进行改善。也就是发现系统中存在的问题并进行改进,从而提高系统的各项性能指标。
本文首先介绍了测试评估IDS性能的标准,然后介绍了测试评估的方法步骤,并且介绍测试评估的具体指标、所需的数据源、测试评估环境配置与框架,最后介绍了测试评估现状以及其中存在的一些问题。
2 测试评估IDS性能的标准
根据Porras等的研究,给出了评价IDS性能的三个因素:
·准确性(Accuracy):指IDS从各种行为中正确地识别入侵的能力,当一个IDS的检测不准确时,就有可能把系统中的合法活动当作入侵行为并标识为异常(虚警现象)。
·处理性能(Performance):指一个IDS处理数据源数据的速度。显然,当IDS的处理性能较差时,它就不可能实现实时的IDS,并有可能成为整个系统的瓶颈,进而严重影响整个系统的性能。
·完备性(Completeness):指IDS能够检测出所有攻击行为的能力。如果存在一个攻击行
为,无法被IDS检测出来,那么该JDS就不具有检测完备性。也就是说,它把对系统的入侵活动当作正常行为(漏报现象)。由于在一般情况下,攻击类型、攻击手段的变化很快,我们很难得到关于攻击行为的所有知识,所以关于IDS的检测完备性的评估相对比较困难。
在此基础上,Debar等又增加了两个性能评价测度:
·容错性(Fault Tolerance):由于IDS是检测入侵的重要手段/所以它也就成为很多入侵者攻击的首选目标。IDS自身必须能够抵御对它自身的攻击,特别是拒绝服务(Denial-of-Service)攻击。由于大多数的IDS是运行在极易遭受攻击的操作系统和硬件平台上,这就使得系统的容错性变得特别重要,在测试评估IDS时必须考虑这一点。
·及时性(Timeliness):及时性要求IDS必须尽快地分析数据并把分析结果传播出去,以使系统安全管理者能够在入侵攻击尚未造成更大危害以前做出反应,阻止入侵者进一步的破坏活动,和上面的处理性能因素相比,及时性的要求更高。它不仅要求IDS的处理速度要尽可能地快,而且要求传播、反应检测结果信息的时间尽可能少。
3 IDS测试评估的方法步骤
前面我们已经讨论了IDS测试评估的性能指标,具体测试主要就是围绕这些指标来进行。大部分的测试过程都遵循下面的基本测试步骤:
·创建、选择一些测试工具或测试脚本。这些脚本和工具主要用来生成模拟的正常行为及入侵,也就是模拟IDS运行的实际环境。
·确定计算环境所要求的条件,比如背景计算机活动的级别。
·配置运行IDS。
·运行测试工具或测试脚本。
·分析IDS的检测结果。
美国加州大学的Nicholas J.Puketza等人把测试分为三类,分别与前面的性能指标相对应,即入侵识别测试(也可以说是IDS有效性测试)。资源消耗测试、强度测试。入侵识别测试测量IDS区分正常行为和入侵的能力,主要衡量的指标是检测率和虚警率。资源消耗测试(Resource Usage Tests)测量IDS占用系统资源的状况,考虑的主要因素是硬盘占用空间、内存消耗等。强度测试主要检测IDS在强负荷运行状况下检测效果是否受影响,主要包括大负载、高密度数据流量情况下对检测效果的检测。
4 测试评估IDS的性能指标
在我们分析IDS的性能时,主要考虑检测系统的有效性、效率和可用性。有效性研究检测机制的检测精确度和系统检测结果的可信度,它是开发设计和应用IDS的前提和目的,是测试评估IDS的主要指标,效率则从检测机制的处理数据的速度以及经济性的角度来考虑,也就是侧重检测机制性能价格比的改进。可用性主要包括系统的可扩展性、用户界面的可用性,部署配置方便程度等方面。有效性是开发设计和应用IDS的前提和目的,因此也是测试评估IDS的主要指标,但效率和可用性对IDS的性能也起很重要的作用。效率和可用性渗透于系统设计的各个方面之中。本节从检测的有效性、效率以及可用性角度,对测试评估IDS的性能指标进行分析讨论。
4.1 检测率、虚警率及检测可信度