我爱黑客网首页 设为首页
加入收藏
联系我们
 首 页  技术文章 下载中心 站长学院 交流论坛
 软件:
 文章:        教程:
 推荐: 我爱黑客网论坛
 
 
 
 
   
黑软: Q Q 软件 木马间谍 探嗅监听 溢出攻击 加密解密 漏洞扫描 脚本注入 远程控制 综合利用 聊天工具  
 
技术文章: 爱黑新闻 | 黑客攻防 | 安全防御 | 程序设计 | 系统操作 | 网络技术 | 本站动态 | 业界动态 | 安全公告 | 病毒公告
 
 
您当前的位置:我爱黑客网 -> 黑客攻防 -> 攻防实战 -> 文章内容  
栏目导航
· Q Q 攻防 · 黑客入门
· 攻防实战 · 安全初步
· 工具详解 · 黑客教程
· 漏洞研究 · 黑客编程
· 技术杂谈 · Exploit
热门文章
· 骇客学堂:简单入侵个..
· 轻松入侵个人免费空间..
· 教你入侵六合彩网拿会..
· 无线攻防:破解WEP密钥..
· 会员QQ重大漏洞
· 手把手教你入侵 win20..
· 怎样不用密码进入Wind..
· 我也做黑客:简单入侵个..
· 网吧冲钱从概念到实践..
· 黑客入门者如何获取肉..
· 黑客高手必懂基础内容..
· 我这样破解万象免费上..
相关文章

· [图文] 用IDS(入侵检..
· 九招突破Ids入侵检测..
· 突破Ids入侵检测系统..
· 九种突破IDS入侵检测..
· 解读IDS入侵检测系统..
· Discuz! 2.5 $sid S..
· Wireless Tools 26 ..
· linux/x86 setuid/p..
· linux/x86 setuid(0..
· phpBB = 2.0.17 “s..
查看更多与IDS入侵检测系统的测试与评估相关内容

IDS入侵检测系统的测试与评估
作者:我爱黑客网  来源:http://www.5ihack.com/  发布时间:2008-8-5 21:50:06  发布人:ghostfire

减小字体 增大字体



5、 对IDS进行测试评估一利用的相关数据

  对IDS进行测试评估,也就是让IDS对进入到受保护系统的数据进行检测,以确定检测系统能否发现其中的入侵。要测试评估IDS,最准确的数据当然是根据实际运行环境产生的数据,但这通常是行不通的。因为各机构的数据中都包含一些隐私信息,他们不愿公开这些数据,并且即使有机构愿意公开自己的数据,也不大适合用来做通用测试,因为特定机构的数据都带有明显的特有的一些特性,具有一定的局限性,可重复性也不好。为此,在具体测试的时候,大都采用一些测试工具。通过这些工具来生成IDS的测试数据。

  测试评估数据的生成需要满足下面几个条件,即数据的生成必须能自动完成,不需要人为的干预;要具有一定的可重复性,也就是说需要时可以产生相同的数据;要有一定的健壮性,可在无人监控的条件下,可运行较长时间。

  测试评估IDS的数据包括两部分,一部分是训练数据,另外一部分是实际测试数据。这两部分数据中都包括正常数据和入侵数据。只有在正常数据的背景下,对IDS的测试评估结果才是客观和全面的。入侵行为在背景数据的掩护下,被检测系统发现的机率会大大降低。而IDS也可能将正常的流量行为误判为攻击,产生虚警。训练数据用来帮助IDS建立正常行为的模型,调整IDS各参数的设置。在训练数据中,入侵数据是明确标明的。测试数据用来对检测系统进行测试,其中的入侵数据没有标明。

  通常使用下面三种方法生成既包含正常通信数据又有攻击的可公用的数据:抓取正常情况和被受控攻击时的运行通信数据。由于隐私和安全问题这显然行不通;从实际运行数据中清除秘密信息。并在其中加入攻击,这也行不通,因为很难清除秘密信息;在一个内部网中重建正常通信和攻击数据,这是我们采用的方法。

  重建正常通信和攻击数据也就是仿真用户操作、模拟入侵。仿真用户操作即生成用户各种各样的正常使用模式,这些模式帮助基于异常检测的IDS建立正常行为的模型,并且以用户正常模式数据作为检测入侵的背景通信数据,对于确定IDS正常运行时的检测率和虚警率是非常必要的。模拟入侵应尽可能地覆盖多种类型,新的攻击只在测试数据一出现。设计攻击要考虑很多问题。要分析攻击的机制,并在测试系统中试验以便于分析和调节。分析要确定攻击在测试环境中能否工作,是否需要新软件或服务的支持。设计新奇的攻击以用来发现未利用的系统或网络漏洞。下面对用户正常模式的仿真和入侵仿真分别进行讨论。

  目前,大多采用下面三种方法来仿真网络用户行为,即通用会话生成工具、测试软件包和录制重放实际数据。通用会话生成工具方法基于有限自动机来生成用户所有可能的操作。每种操作都有一定的操作规程,比如FTP操作,首先它要完成TCP三步握手初始化连接,然后要输入用户名和密码,用户名密码通过之后再浏览FTP服务器上的内容、下载或者上传,所有操作完成后离开服务器,结束TCP会话。根据这种通用规程,就可生成通用的会话,模拟用户操作。但是,这种方法只适用于测试有限的命令集,比如可仿真FTP客户,但不能仿真shell客户,并且这种仿真存在一些问题,因为用户操作的顺序和服务器端的响应都是不确定的,仿真并不能完全模拟用户的操作状况。操作系统开发商自带测试软件包是比较简单的模拟方法,通常用于测试评估操作系统服务的性能和应用服务软件是否按设计说明来实现。但是这种测试不能给出用户进行什么样的操作,只能告诉我们系统对正常请求的响应行为。录制重放方法是记录各种用户正常活动的数据,然后在测试平台上重放用户的活动过程。这种方法要求用户活动记录要足够多。

  用户正常行为的仿真主要包括网络流量仿真、主机正常使用仿真。大多数的网络IDS或者网络IDS的大部分都工作于网络层或网络层之上,它们对网络上的数据分组根据不同的协议进行相应的分析。因此,在仿真网络流量时,要仿真各种协议的各种应用的流量。通常,对实际流量进行分析,经统计计算,得到各个协议按时间的流量概率分布,以此为模型,分别仿真各个协议的流量。

  主机的使用可以分为两个部分:主机所提供的网络服务的使用和主机的直接使用,即用户在主机上执行命令。相应的主机正常使用的仿真要分为两部分,即主机网络服务正常使用的仿真和主机直接使用的仿真。对主机提供的网络服务的正常使用进行仿真,可以采用两种方法。一是遍历法,即找出某个服务允许的所有正常使用模式,再由仿真程序,按这些模式依次对该服务进行访问。二是实际采样法,取得真实网络环境中某个服务的实际使用情况数据,分析出现的使用模式,再根据分析结果建立仿真模型进行仿真。此方法与网络流量仿真的方法类似。这两种方法各有优缺点、仿真实现中,应根据被仿真服务的具体情况进行选择。由于用户的行为因工作性质不同,会有很大差别,所以主机直接使用的仿真应将用户分为不同的种类(比如管理员、普通用户),根据不同的用户类型编写不同的脚本,实现主机直接使用的仿真。由于不同用户使用习惯变化很大,并且即使同一用户使用习惯也带有很大的随机性,这使得仿真的难度大大增加。在实际测试评估IDS时,一般只是仿真主机正常使用的一个具有代表性的子集。

  攻击仿真是评估环境的核心,也是对IDS进行测试的关键。攻击仿真要尽可能多地搜集各种攻击方法。由于各种攻击的数量过于庞大,不可能对所有的攻击都进行仿真。参考软件测试领域中的等价划分方法(equivalence partitioning),在进行攻击仿真时,一般先将攻击分类,然后选择每种类别中典型的攻击方法进行仿真试验。选择好攻击类型后,在仿真时根据入侵者进行攻击的步骤进行仿真。在构造攻击数据时还要注意新式攻击。攻击方式隐秘的攻击、并行进行的攻击等方面。相对于旧式攻击、攻击方式明显的攻击以及串行进行的攻击而言,这些攻击方式对检测结果的影响可能会更大。

  目前,测试数据所采用的格式大多采用Tcpdump数据格式和BSM数据格式,由于Windows系统广泛应用,Windows NT的日志格式也逐渐考虑进来。在测试数据方面,麻省理工学院林肯实验室的数据比较完备,它包括一定时间的训练数据和用于最后实际测试的检测数据。用于网络流量仿真的工具有Anzen公司开发的nidsbench以及加利福尼亚大学开发的入侵检测测试平台。nidsbench包括tcpreplay和fraqrouter两部分。tcpreplay的功能是将tcpdump复制的数据分组重放,还原网络的实际运行状态;而fraqrouter的功能是通过构造一系列躲避IDS检测的攻击以测试检测系统的正确性和安全性。加利福尼亚大学的IDS软件测试平台使用Tcl-DP(TooL Command Language Distributed Programming)工具开发实现。它共包含四组命令:基本的会话命令集、同步命令集、通信命令集、记录重放命令集。这些命令集分别用来仿真入侵者的基本操作,按指定要求产生事件,实现并发进程的通信以及记录用户会话期间的操作命令序列再重放这些记录。此外,麻省理工学院林肯实验室也开发了非实时IDS性能评估工具,该工具可动态重放大量的数据。

6、 测试评估IDS的环境配置与框架

  在测试评估IDS时,很少会把IDS放在实际运行的网络中,因为实际网络环境是不可控的,并且实际网络环境的专用性也太强,很难对IDS进行准确的系统测试。所以一般要构建专用的网络的环境。

  受保护系统模拟主机正常运行状况,网络负载生成器模拟内部网之间以及内部网与外部网之间的网络通信。攻击模拟用来模拟入侵者发起的攻击。IDS即为待检测的系统。由于有时实际的网络环境很大,有很多安装各种各样操作系统、应用软件的主机服务器,要求测试环境完全按照实际网络进行配置并不是很实际,所以在测试中一般采用虚拟主机技术。通常使用一些软件工具或者编写可自动运行的脚本来模拟各种主机的各种行为,相当于在一台物理主机上运行多台虚拟主机,每个虚拟主机模拟不同硬件上运行的不同操作系统、不同应用程序。一般来说,受保护主机要包含运行常用操作系统(比如Windows、Linux、SunOS)的主机。内部网网络负载生成器要模拟内部的网络流量以及内部的攻击,而外部位网络负载生成器要模拟外部的网络流量(比如访问Web页面,下载文件)以及外部的攻击。实际构建测试环境的过程是个复杂过程,它直接关系到评测的成功与否。

7、 IDS测试评估现状以及存在的问题

  虽然IDS及其相关技术已获得了很大的进展,但关于IDS的性能检测及其相关评测工具、标准以及测试环境等方面的研究工作还很缺乏。

  Puketza等人在1994年开创了对IDS评估系统研究的先河,在他们开发的软件平台上可以实现自动化的攻击仿真。1998年Debar等在IDS实验测试系统的研究中,指出在评估环境中仿真正常网络流量是一件非常复杂而且耗时的工作。林肯实验室在1998年、1999年进行的两次IDS离线评估,是迄今为止最权威的IDS评估。在精心设计的测试网络中,他们对正常网络流量进行了仿真,实施了大量的攻击,将记录下的流量系统日志和主机上文件系统映像等数据,交由参加评估的IDS进行离线分析。最后根据各IDS提交的检测结果做出评估报告。目前美国空军罗马实验室对IDS进行了实时评估。罗马实验室的实时评估是林肯实验室离线评估的补充,它主要对作为现行网络中的一部分的完整系统进行测试,其目的是测试IDS在现有正常机器和网络活动中检测入侵行为的能力以及IDS的响应能力及其对正常用户的影响。IBM的Zurich研究实验室也开发了一套IDS测评工具。此外,有些黑客工具软件也可用来对IDS进行评测。

  目前,市场上以及正在研发的IDS很多,各系统都有自己独特的检测方法。攻击描述方式以及攻击知识库,还没有一个统一的标准。这大大加大了测试评估IDS的难度,因为很难建立一个统一的基准,也很难建立统一的测试方法。

  测试评估IDS中存在的最大问题是只能测试已知的攻击。在测试评估过程中,采用模拟的方法来生成测试数据,而模拟入侵者实施攻击面临的困难是只能掌握已公布的攻击,而对于新的攻击方法就无法得知。这样的后果是,即使测试没有发现IDS的潜在弱点,也不能说明IDS是一个完备的系统。不过,可以通过分类选取测试例子,使之尽量覆盖许多不同种类的攻击,同时不断更新入侵知识库,以适应新的情况。

  并且,由于测试评估IDS的数据都是公开的,如果针对测试数据设计待测试IDS,则该IDS的测试结果肯定比较好,但这并不能说明它实际运行的状况就好。

  此外,对评测结果的分析使用也有很多问题。理想状况是可以自动地对评测结果进行分析,但实际上很难做到这一点。对IDS的实际评估通常既包含客观的也包含主观的,这和IDS的原始检测能力以及它报告的方式有关。分析人员要在IDS误报时分析为什么会出现这种误报,在给定的测试网络条件下,这种误报是否合理等问题。评测结果的计分方式也很关键,如果计分不合理的话,得出的评测结果可信度也就不可能很高。比如,如果某个IDS检测不出某种攻击或对某种正常行为会产生虚警,则同样的行为都产生同样的结果,正确的处理方法是应该只计一次,但这很难把握,一旦这种效果被多次重复考虑的话,该IDS的评测结果肯定不是很理想,但实际上该人侵检测总体检测效果可能很好。

8、总结
  
  入侵检测作为一门正在蓬勃发展的技术,出现的时间并不是很长;相应地对IDS进行评测出现得更晚。它肯定有很多不完善和有待改进的地方,这需要进一步的研究。其中几个比较关键的问题是:网络流量仿真、用户行为仿真、攻击特征库的构建、评估环境的实现以及评测结果的分析。 

上一页  [1] [2] 

查看更多与IDS入侵检测系统的测试与评估相关内容

[ ] [返回上一页] [打 印] [收 藏]
上一篇文章:
下一篇文章:
      DBO权限日志备份专用一句话木马       经典入侵检测术语全接触
∷相关文章评论∷   (评论内容只代表网友观点,与本站立场无关!) [发表评论]
 
 
 
 
晋ICP备05008232   维护网络安全、传播安全技术才是我们的目标! 
 
关于本站 - 网站帮助 - - 下载声明 - 友情连接 -网站地图