摘要:提出了一种分布式IDS系统模型,其采集单元基于已有集中式IDS,仅增加后台信息转换组件,将其告警信息转换为标准的IDMEF格式;数据分析单元基于各种已有关联算法,对各集中式IDS上报的IDMEF信息进行关联和汇聚;采集单元和分析单元采用自治Agent实现;节点间信息的传递基于订阅的模式。使用该模型能较为迅速并经济地搭建一个性能良好的分布式IDS系统。
关键词:
关联;代理;订阅;入侵检测
0引言
随着网络的普及,网络的安全性逐渐被人们所认识和接受。如何建立一套高效、安全、健壮的网络系统,对国家和企业、单位都具有十分重要的战略意义。入侵监测系统(Intrusion Detection Systems,IDS)作为网络安全系统中的一个重要组成部分,受到越来越多人的关注。IDS被认为是防火墙之后的第二道闸门,希望在无法完全阻止入侵时,能尽快实时检测出入侵,以便及时做出响应。传统的集中式IDS根据数据来源的不同分为基于主机和基于网络的IDS,如著名的免费软件Snort[1]等,但是集中式IDS很难满足大型网络的安全需求,特别的难以发现攻击者通过分布式协同方式展开的攻击,因此往往用于中小型网络。分布式IDS可以发现整个网络范围内的入侵,因此成为目前的研究热点。
所有的分布式IDS基本上遵循一个基本标准,即公共入侵检测框架模型(Common Intrusion Detection Framework,CIDF)[2],将IDS分为四个基本组件:事件产生器(数据采集单元)、事件分析器(数据分析单元)、响应单元和事件数据库。分布式IDS体系结构方面的研究主要集中在如何有效协调数据采集单元以及数据分析单元,以及如何把分析结果实时告知网络中所有相关节点。
本文提出一种分布式IDS系统模型,其采集单元基于已有集中式IDS,仅增加后台信息转换组件,将其告警信息转换为标准的IDMEF格式(Intrusion Detection Message Exchange Format)[3];数据分析单元基于各种已有关联算法,对各集中IDS上报的IDMEF信息进行关联和汇聚;采集单元和分析单元采用自治Agent实现;节点间信息的传递基于订阅的模式;使用该模型能较为迅速并经济的搭建一个性能良好的分布式IDS系统。
1相关工作
EMERALD[4]系统提出了网络分层思想,将整个系统物理上分为三层,每层可接受更高一层的管理和控制。AAFID[5]也对网络分层,但是基于自治代理的分布式IDS框架,其有三个重要的部件,分别是代理(Agent)、收发器(Transceiver)和监视器(monitor)。每台主机上的唯一收发器负责监督和控制该主机上所有的代理,对代理上报的分析结果和告警信息进行关联和汇聚,向一个或多个监视器报告结果以避免由于单个监视器故障导致的单点失效。监视器监督和控制多个收发器,从而可以进行高层协调,检测整个网络范围的入侵,同时监视器也可以构成分层的结构。
EMERALDS、AAFID等系统的数据采集单元采用软件代理的思想,每个代理对应某类行为的检测,即使某个代理不工作,那么也仅仅是损失了一部分功能而已,可以认为是微模式。本文模型是一种巨模式,即充分利用基于网络的优秀集中式IDS(它们已经能比较好的检测出中小型网络的入侵行为),通过对它们产生的告警信息进行关联和汇聚并及时传播给网络中相关节点,则我们可以较为经济并迅速地搭建一个性能较好的分布式IDS。
Indra[6],CSM[7]是基于P2P网络的分布式IDS,利用P2P网络来迅速交换告警信息和分析结果,但是它们难以检测分布式协同攻击。马恒太[8]等人提出了一种基于Agent的分布式IDS框架,它与AAFID不同在于没有中央控制节点,实现了数据收集、入侵检测以及实时响应的分布化。由于该模型没有信息融合汇聚点,同样很难检测出攻击者的分布式协同攻击。还有一些其他的分布式IDS系统属于比较简单的IDS,同样无法检测分布式协同攻击,如NADIR[9]和GrIDS[10]。
本文模型在分析单元部分依据AAFID的思想采用自治代理+汇聚节点的模式作为关联和汇聚组件,一种自治代理负责处理一种集中式IDS的数据关联和汇聚(相当于该IDS的后台),不能处理的数据发给汇聚节点进一步分析,处理后的数据也通过汇聚节点传播到其他汇聚点,一个汇聚节点管理多个自治代理,通过一个子网内放置若干不同集中式IDS做数据采集单元可以综合各个IDS的优点,汇聚节点之间的信息传播使用Emerald[4]提出的基于订阅的方式来减少通信负载。分析单元采用自治代理的好处在于可以比较方便的与底层各种集中式IDS进行接口,同时可以把通信功能与分析功能逻辑上分离开来,具有很强的自适应性和灵活性,同时具备AAFID[5]提到的其他优点。
分布式IDS要实现全网范围的检测,必须综合分析不同IDS上报的告警信息,即告警信息的关联和汇聚。穆成坡[11]等对目前的告警信息关联和汇聚算法做了综合调查,主要包括一种聚合算法和两种关联算法。聚合算法用于比较不同告警信息的相同属性,把具有相似属性的告警组合为告警集合,用一条超告警来表示一个集合。关联算法主要处理经过聚合后的告警,即超报警。一类方法基于已知的攻击过程进行事件关联,攻击过程往往通过机器学习或数据挖掘等方法来得到,由若干规则组成。把这些已知的攻击过程作为模板与超告警做比较,来产生关联结果。一类基于事件的因果关系。比如说一次远程缓冲溢出攻击的前因是有相应漏洞的服务存在,结果即攻击者取得管理员权限。Peng Ning[12]对单独的入侵活动定义其前因和后果,通过比较较早发生的入侵活动的后果与较晚发生的入侵活动的前因即可重现整个攻击过程。该方法不用预先定义整个攻击过程,还可以识别和报告不同攻击组合形成的新攻击过程。本模型的关联汇聚模块拟综合使用这三类算法来获取较高的性价比。
2系统模型
图1描述了整个分布式系统的体系结构。
整个系统可以划分为两大组件,一是本地组件,二是网络组件,图中用虚线框起来的部分表示框内所在的Agent必须位于同一主机。本地组件又可以分为五大模块:1)集中式IDS指已经存在的基于网络的IDS如Snort[1],WebIDS[13]等。一个汇聚节点下可管辖多个不同集中式IDS,因为各个IDS的检测能力以及偏重方向不同,有的入侵可能Snort检测不出来。但是WebIDS却能检测出来,因此在单个汇聚点管辖的网络内放置多个不同的集中式IDS将综合各集中式IDS的优点,获得最大的性能。2) 后台转换Agent负责将告警信息由各IDS的自有格式转换为标准的IDMEF格式信息,作为汇聚和关联组件的统一输入,每种集中式IDS对应一类后台转换Agent,两者不需要在同一主机,如果集中式IDS支持将告警信息输出到网络或者数据库。3) 本地汇聚和关联Agent必须与后台转换Agent位于同一主机,针对来自单一IDS的告警信息先行做汇聚和关联处理。因为基于网络的IDS可能有大量的伪警报和重复告警,在上报至汇聚节点之前在本地先做预处理,可以提高汇聚节点的性能,使其专注于发现网络上的协同攻击,而简单的攻击检测就尽量放到本地完成,这实际上把汇聚和关联功能分散化了,充分利用分布式系统的资源。该Agent还负责通知响应Agent需要做出哪些动作,由响应Agent通知集中式IDS做出相应动作。4)响应Agent与集中式IDS位于同一主机,接收本地通信代理发过来的响应动作命令,负责修改目标主机的配置,对攻击做出及时响应。5) 本地通信Agent主要完成:a) 将本地预处理过后的告警信息发送到汇聚节点;b)接收本地和汇聚节点发送的响应动作,通知响应Agent;c)接收汇聚节点发送的配置命令,及时修改本地配置。
图1基于关联和自治代理的分布式系统模型
网络组件主要包括:a) 网络汇聚和关联Agent从通信Agent接收经过预处理的告警信息,应用各种关联和汇聚算法,检测其所管辖范围内的网络入侵行为,得到的检测结果以及产生的响应动作,通过通信Agent传递给本地组件或者其他网络;其关联和汇聚算法与本地汇聚和关联模块相同;b) 汇聚点通信Agent主要完成功能包括:将来各本地通信Agent的告警信息转发给网络汇聚和关联 Agent;将响应动作通知本地组件;与其他汇聚点Agent通信,收发告警信息和响应动作;汇聚节点之间的信息备份;c)响应Agent接收动作请求,负责修改主机配置,做出相应防御动作。
图1中有一虚线框起来的备份单元,该单元与网络组件的模块相同,即作为汇聚节点信息的冗余备份,避免单点失效,实时备份汇聚节点的所有需要存贮的信息,一旦汇聚节点因物理故障或者安全问题导致崩溃,则备份单元将成为新的汇聚节点,管理所有本地组件并与其他汇聚点通信,增加了整个分布式系统的可靠性和健壮性。
2.1IDMEF格式
IDMEF是由互联网工程任务组(ieTF) 的入侵检测工作组(IDWG) 制定的标准草案,其目标之一是满足报警之间的关联需求并用于检测分布式协同攻击,目前绝大部分IDS产品都支持IDMEF格式。
IDMEF数据模型如图2所示。其以面向对象形式表示告警信息,所有信息均继承自IDMEFMeesage类。就告警关联而言,主要关注Alert子类及其子类CorrelationAlert和对应的聚合类,这些类基本覆盖了当前关联和汇聚算法需要的所有属性,而且由于XML可扩展,我们可以再引入CorrelationAlert的子类来描述需要的其他属性。总之,系统中所用到的集中式IDS,其告警信息都必须置于统一的命名方案内。
图2IDMEF数据模型
目前,一些传统集中式IDS已经可以直接输出IDMEF格式的告警信息, 如Snort的插件SnortIDMEF[14]。本模型中的后台转换Agent可基于这些已有的插件,减少开发工作量。图3关联和汇聚Agent功能模块
2.2关联和汇聚Agent
关联和汇聚是分布式IDS检测分布式协同攻击的最重要组件,基于CRIM[15]框架,我们将该组件划分成为分类、聚合以及关联三个功能模块,最终根据识别的攻击者意图,形成相应的响应动作。如前所述,本地汇聚和关联Agent的功能模块与网络汇聚和关联Agent的功能模块示完全一样的,只是本地Agent处理单一IDS,网络Agent处理不同IDS的信息。原始告警信息数据库对于本地Agent来说是单一IDS的告警信息经过后台转换Agent之后形成的IDMEF格式的告警信息;对于网络Agent而言是若干IDS上报的基于IDMEF格式的告警信息,它们处于统一的命名方案内。告警分类模块根据IDMEF信息中Classification,Source,Target和DetectTime,CreateTime等属性的相似性,将告警信息数据库中的所有数据划分为若干个类(Cluster)。告警聚合模块则为每个类生成一条超告警信息,该条信息代表了
排行
- 公司治理结构与会计信息披露:一
- 存货跌价准备审计全程精解
- 对法航货机穿越中国领空“壮举”
- 农产品出口突破技术贸易壁垒的思
- 浅谈电子商务中的安全问题
- 数控技术专业数控机床编程与加工
- 公司治理模型的发展与评价
- 熟悉的陌生人—浅析鲁迅笔下的三
- 李清照词在不同时期所表达的情感
- 分配理论的陈述——与卫兴华、谷
- 网络经济中的“赢家通吃”现象与
- 关于“文化产业”定义的一些思考
- 从认知语言学看名词临时作量词的
- 百花齐放 异彩纷呈----浅析《红楼
- 数控技术发展趋势及对策
- 论我国夫妻财产制的不足与完善
最近更新
一种基于关联和代理的分布式入侵检测模型


联系我们
返回 计算机论文 列表