《第6章入侵检测技术6.ppt》由会员分享,可在线阅读,更多相关《第6章入侵检测技术6.ppt(29页珍藏版)》请在三一文库上搜索。
1、6.1 采用多种信息源 6.2 采用多种检测方法,第6章 混合型的入侵检测技术,本章所指的混合型入侵检测技术,主要分为两种类型: 第一种类型是指采用多种信息输入源的入侵检测技术,例如同时采用网络数据包和主机审计数据作为数据来源,其中以DIDS系统为典型代表加以介绍;第二种类型则强调采用多种不同类型的入侵检测方法,例如同时采用统计分析的异常检测和基于专家系统规则的滥用入侵检测技术,其中以早期著名的IDES和NIDES系统为代表。,DIDS系统的开发始于20世纪90年代初期,在技术发展历程中,它是将网络入侵检测与主机入侵检测技术进行集成的首次尝试。,6.1 采用多种信息源,DIDS系统设计的目标环
2、境是一组经由以太局域网连接起来的主机,并且这些主机系统都满足C2等级的安全审计功能要求。DIDS所要完成的任务是监控网络中各个主机的安全状态,同时检测针对局域网本身的攻击行为。DIDS的系统设计架构如图6-1所示。,6.1.1 总体设计,图6-1 DIDS系统架构,如图6-1所示,因为DIDS要完成同时检测主机和网络安全状态的任务,所以,系统同时采用了网络数据和主机审计数据两种数据来源。 DIDS系统主要包括3种类型的组件: 主机监控器(host monitor)、局域网监控器(LAN monitor)和中央控制台(director)。 DIDS早期系统中采用的通信协议是ISO通用管理信息协议
3、(CMIP),该协议允许控制台与各个监控器组件之间进行双向的通信过程,即控制台既可以发送查询命令(如“GET”)来获取监控器的相关详细信息,又可以发送控制命令(如“SET”)来设置监控器的配置信息等。,如图6-1所示,主机监控器由主机事件发生器(HEG)和主机代理组成。HEG组件负责从所在主机系统中收集审计记录,并对其进行安全分析,而主机代理则负责与中央控制台的通信联系。 主机监控器首先从主机系统中读取C2审计数据文件,获取审计记录,然后将这些审计记录映射到DIDS系统定义的规范格式HAR上。之后,将这些统一格式的记录进行必需的过滤操作以去除冗余后,再进行各种分析检测工作,生成不同的异常事件报
4、告,交由主机代理发送到中央控制台。,6.1.2 主机监控器,同时,控制台也可以通过主机代理,对用于安全分析的模式库进行修改和调整操作,以便更好地执行分析逻辑。 图6-2 主机监控器的结构,与主机监控器类似,局域网监控器由局域网事件发生器(LEG)和局域网代理组成。局域网事件发生器负责观察网段内的所有来往数据包数据,并检测主机间网络连接,以及服务访问情况的安全状态,包括每个连接内的数据流量等。局域网代理将所发现的异常事件发送到中央控制台,同时接受控制台的控制命令,负责提供更进一步的详细信息。 LEG组件必须从当前网络数据包中构建所需的网络审计记录(NAR)。LEG组件主要审计主机之间的连接、所访
5、问的服务类型以及每个连接的数据流量情况。,6.1.3 局域网监控器,LEG组件采用多个简单分析手段来分析构建好的NAR记录,包括检测敏感的服务访问情况(例如rlogin等),以及未安装检测组件的主机活动情况等。同时,LEG还建立和维护当前网络行为的正常模型,并检测当前网络使用情况与正常模型的偏离情况。,控制台主要包括3个部分: 通信管理器、专家系统和用户接口。通信管理器的主要任务是提供专家系统和用户接口与底层各个监控器之间的双向通信通道。具体说来,专家系统可以通过通信管理器要求底层监控器提供更多的事件记录信息,同时,通信管理器负责将返回的记录提交给专家系统。同样,用户接口也可以通过通信管理器查
6、询特定主机系统上某个特定用户的登录等活动情况。 控制台的专家系统,在收集来自各个监控器事件记录的基础上,执行关联分析和安全状态评估的任务。专家系统的核心部分是用于进行推理工作的规则库,DIDS专家系统用Prolog语言编写所有的检测规则。,6.1.4 控制台,用户接口的主要任务是以友好的方式实时地提供用户关心的系统信息,包括实时的异常事件显示、整个系统的安全状态信息等;同时,它还提供用户进行特定控制和查询功能的接口。 DIDS中央控制台组件能够解决两个关键的问题: 网络环境下对特定用户和系统对象(例如文件)的跟踪问题。为此,DIDS提出了网络用户标识(NID)的概念,目的是惟一标识在目标网络环
7、境中多台主机间不断移动的用户。 不同层次的入侵数据抽象问题。DIDS系统提出了一个6层的入侵检测模型,并以此模型为基础和指导,构造了专家系统的检测规则集合。DIDS的入侵检测模型如表6-1所示。,如表6-1所示的入侵检测模型中,最底层的是原始的主机审计数据和网络数据包;往上一层就是经过变换后的标准主机审计记录(HAR)和网络审计记录(NAR);再上一层就是主体标识层,对每个事件都赋予一个惟一的主体标识,其中关键的组成部分是NID标识。之后的上层模型,负责处理各种事件在系统当前上下文中所呈现的状态。然后,模型计算出所有事件的威胁程度,最后,所有主体的相关事件所产生的威胁程度值,经过一定的函数计算
8、,得出最后一个反映系统当前安全状态的分数值。分数值越大,则表明当前系统的安全状态越异常。,本节主要介绍IDES和NIDES系统的总体结构及各个组件的情况,重点关注两者实现多种检测方法的混合式架构设计的技术特点。,6.2 采用多种检测方法,入侵检测专家系统(IDES)是一个混合型的入侵检测系统,使用一个在当时来说是创新的统计分析算法来检测异常入侵行为,该系统还使用一个专家系统检测模块来对已知的入侵攻击模式进行检测。 NIDES系统继承了IDES系统设计的基础思路,同时做出若干改进更新,以适应更高的用户需求。 最初版本的IDES系统仅仅支持一个单独的目标主机系统,后继版本扩充了系统设计架构,从而可
9、以支持任意数目的异构目标系统。IDES的系统设计模型如图6-3所示,可分为4个部分: 目标系统域、邻域接口、处理引擎和用户接口。,6.2.1 系统设计架构,图6-3 IDES系统设计模型,在如图6-3所示的设计模型中,IDES目标系统域通常包含一组邻域,而每个邻域又包含多台目标主机。 IDES处理引擎负责处理从目标系统域中多个邻域内获得的审计数据信息。处理引擎将接收到的审计数据分发给多个分析检测组件,并由这些检测组件对每个审计数据进行分析处理。这些检测组件又可称为“事件子系统”(Event System)。在IDES系统中实现了两个检测组件: 一个基于统计分析的方法,另外一个基于规则分析的方法
10、。后面将对这两个检测组件加以介绍。,IDES的邻域接口是连接IDES邻域和IDES检测组件的桥梁,该接口由两部分组成: 一部分驻留在目标主机系统上(邻域客户),另一部分位于IDES处理引擎所在的本地主机上(邻域服务器)。 IDES的用户接口允许用户观察在系统中所产生和处理的任何信息,包括系统各个组件的状态和活动情况。这里用户接口独立于基本的IDES数据处理过程,其有利于进行更好的模块化设计。 IDES系统功能结构如图6-4所示,从中可以看出各个组件之间的关系。,图6-4 IDES系统结构,从IDES系统设计模型可以看出,每个组件的具体实现都可以在不用对系统架构进行基本修改的前提下加以改变,即高
11、度模块化的设计架构允许IDES系统的底层实现结构与上层的内核功能实现分隔开来。IDES系统实际由以下功能组件构成: 邻域接口、统计异常检测器、专家系统异常检测器和用户接口。 以上的每个组件都实现为一个独立的进程,以便使用分布式并行计算技术来提供尽可能实时的入侵检测能力。 NIDES系统在总体设计上具备自己的独到特点,整个系统被设计成为一组客户机和服务器的集合,如图6-5所示。其中包括3种服务器: SOUI服务器、Analysis服务器和Arpool服务器。,图6-5 客户机/服务器模型,其中,SOUI服务器负责实现用户接口功能,并由与之相关的7个客户机代理执行各种具体的接口功能,包括管理目标监
12、控主机、发送警报信息等。分析服务器负责接收统计分析组件和规则分析组件的分析结果,并负责通过特定代理向SOUI服务器提供警报信息。Arpool服务器则负责管理来自目标主机的审计数据,并提供给后继的检测组件客户进程。,IDES的邻域接口定义了IDES系统与目标监控系统之间的交互接口。邻域接口包括两个主要部件: 目标系统中的客户组件(Agen)和IDES系统中的服务器组件(Arpool)。 在IDES系统中,分析处理单元被视为Arpool组件的客户。二者之间的通信都是基于RPC机制。每个客户组件(统计分析组件和专家系统组件)都可以使用RPC过程从Arpool中获取审计数据,然后处理它们,最后将其从A
13、rpool中删除。,6.2.2 邻域接口,IDES统计异常检测引擎观测在所监控计算机系统上的活动行为,自适应地学习主体的正常行为模式。 IDES统计异常检测引擎维护一个主体的统计知识库,其中包含主体的档案。 IDES中所使用的用来确定一个行为是否异常的推导进程是建立在统计数值的基础上的,这些统计值由动态调节的参数来控制,其中的许多参数是针对特定主体类型的。被审计的活动用一个经计算所得的入侵检测变量向量来描述,对应于在档案中记录的测量值。IDES评价整个使用行为模式,而不是仅仅考虑主体行为的单个测量值的情况。,6.2.3 统计分析组件,IDES系统的基于规则分析组件采用一组规则来评价活动事件(即
14、审计记录流),从而对用户的当前行为是否正常做出评价。 基于规则分析组件的知识库中,包含了大量已知的系统脆弱性知识、已知入侵模式的信息和其他与入侵相关的直觉知识。IDES基于规则分析组件是一个基于规则的前向链系统,即系统是由输入到知识库中的事实进行驱动的,而非用户设定的目标驱动。 IDES系统采用PBEST专家系统工具来编写检测规则库。PBEST编译器将用户编写的规则库转换为C语言代码,进一步编译后就可构建一个实用的可执行程序。,6.2.4 专家系统组件,在IDES系统中,规则分析组件和统计分析组件是独立并行工作的。它们共享相同的审计记录来源,并生成各自的分析报告;在后继的NIDES系统中,引入
15、一个解析器组件来合并分析这两个组件的输出结果。 解析器组件分析由统计分析组件和基于规则分析组件所各自发出的警报信号,并报告去除冗余后的警报信号。解析器组件中定义的数据结构如下所示。 typedef enum SAFE, /* Everything is okay */ CRITICAL, /* Critical Alert */ ia_result_code;,6.2.5 解析器,typedef struct audit_record_info ia_timeval timestamp; /* time audit record was generated */ ia_seqno rseq;
16、/* sequence number of audit record */ string host; /* name of target host generating the audit record */ string subject; /* name of subject (user) generating the audit record */ audit_record_info; typedef struct Rulebase_Analysis ia_result_code result_code; /* see enumerated types */ string signific
17、ance; /* significance of rule firing */ string rule_name; /* name of rule that fired and generated this record */ Rulebase_Analysis; typedef struct Stats_Analysis ia_result_code result_code; /* see enumerated types */ float scores; /* scores of current record */ Stats_Analysis; typedef struct Stats_
18、result Stats_Analysis Analysis; /* statistical Analysis */,audit_record_info ar_info; /* audit record information */ Stats_result; typedef struct Rulebase_result Rulebase_Analysis Analysis; /* rulebase Analysis */ audit_record_info ar_info; /* audit record information */ Rulebase_result; typedef str
19、uct Alert string message; /* string of n terminated lines */ Alert; 解析器具有如下所示的函数接口。 Status resolve(const Stats_result *stats_result, const Rulebase_result *rulebase_result, Alert *resolver_rec),该函数解析从统计分析组件报告的分析结果(stats_result)和基于规则分析组件所报告的分析结果(rulebase_result),并将解析结果放入resolver_rec中。解析器在进行工作时,无论是统计分析组件还是规则分析组件指示的警报信息,只要满足下列任何一个条件,则解析器生成一条最终的警报消息: 当前主体的前一个审计记录中没有异常情况; 当前主体的前一个审计记录有一个不同的最大测量值; 当前审计记录所计算出的统计分析分数值至少是该主体上一次所报告分数值的1.5倍。,
链接地址:https://www.31doc.com/p-2910210.html