入侵检测系统模型的设计与实现

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:lu_bright_zhang
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:入侵检测系统是一种对网络进行动态监测,在发现入侵行为时发布预警的主动网络安全技术,该文首先介绍了通用入侵检测系统的组成架构,然后介绍了两种常用的入侵检测分析技术,最后设计并实现一个具有实际应用价值的入侵检测系统模型。
  关键词:入侵检测系统;IDS
  中图分类号:TP393文献标识码:A文章编号:1009-3044(2012)22-5318-03
  The Design and Implementation of Intrusion Detection System Model
  YANG Li-yang
  (Motorola Mobility Nanjing Software Center, Najing 211102,China)
  Abstract:As a proactive network security technology, Intrusion Detection System dynamically monitor network state and send out alert once find intrusion behavior. This paper first introduce common architecture of Intrusion Detection System, then introduce two major intrusion detection analysis technology, finally design and implement a full Intrusion Detection System mode which can be actually applied.
  Key words: intrusion detection system; IDS
  网络安全日益成为人们关注的焦点,而构建一个安全的网络系统却十分困难,首先,操作系统和网络系统软件越来越复杂,导致软件设计者无法预测程序实际运行中的全部状态,系统漏洞是难以完全避免的;其次,目前网络上的主要安全控制方法是身份认证和访问控制等,然而,木马程序可以轻易地窃取用户的身份认证信息,黑客可以利用系统漏洞提升权限而绕过访问控制,这些攻击都会使得精心构建的网路安全防御体系失效,所以一个完善的网络安全体系,仅仅防御是不够的,入侵检测系统(IDS)因此被提出。
  作为一种主动的网络安全防护技术,入侵检测系统可以用来发现外部攻击和合法用户滥用特权,它智能地对数据进行采集,分析和预警,可以有效地发现可疑的入侵行为,并警示系统管理员及时发现和处理。
  1入侵检测系统的组成架构
  通用的入侵检测系统主要包括数据采集模块,入侵分析引擎和用户界面三大模块,有的系统可能还有安全知识库和数据存储等功能模块,从而可以提供更加完善的安全检测和数据分析功能。
  1)数据采集模块:数据采集模块在入侵检测系统中处于基础地位,负责从网络和系统中采集可能包含入侵行为线索的数据,如IP包,系统日志和资源使用状态等。同时数据采集模块还会对采集来的数据进行过滤和预处理,然后将这些原始的审计数据发送到入侵分析引擎做进一步的分析处理。
  2)入侵分析引擎:入侵分析引擎从数据采集模块接收数据,调用预先设定的算法对数据进行分析并确定是否发生了非法的入侵行为以及入侵行为的类别,如果有入侵行为,则生成一个预警信号并发送到用户界面模块,警示网络管理员,预警信号中包含采集的入侵行为证据和判断依据,这样可以允许网络管理员做进一步的判断,排除误警报。
  3)用户界面模块:用户界面主要将入侵分析引擎检测到的入侵行为以可视化的方式通知网络管理员,帮助网络管理员对入侵行为作出主动或者被动的响应。
  2入侵检测系统的分析技术
  入侵分析引擎在整个入侵检测系统中居于核心位置,其决定了整个系统的智能化程度,目前入侵分析引擎中广泛应用的技术主要是误用检测与异常检测两种。
  2.1误用检测
  误用检测属于基于标志的检测,它将已知攻击方法的特征进行提取,然后定义生成入侵模式库,入侵检测系统通过监测网络中是否出现与库中所存储的入侵模式相匹配的行为来判断是否发生入侵行为。误用检测依据入侵行为的特征库来进行判断,所以准确度高,但缺点是有些具体的入侵行为很难抽象成入侵模式,而且其检测的范围也仅仅限于已有模式库中的入侵行为。
  2.2异常检测
  异常检测属于基于行为的检测,它不依赖于具体的入侵模式是否出现,而只是根据用户行为和资源使用状况是否正常来判断是否发生入侵。异常检测具有较强的通用性,甚至可以检测出从未出现过的攻击方法,其缺点是误检率比较高,因为对于一个用户众多的网络系统来说,用户行为和资源使用状况可能会频繁改变,难以界定什么范围属于正常状况,什么范围属于发生了入侵行为。
  在实际的系统中,误用检测和异常检测具有互补性,所以可以将它们结合在一起使用,对不同的数据来源,采用不同的检测方法,如对系统日志可以使用异常检测,而对网络数据包则更适合使用误用检测。
  3入侵检测系统模型的设计及实现
  基于入侵检测系统的原理,我们设计并实现了一种可实际应用的入侵检测系统模型,图1描述了该模型依据功能划分的系统架构图。该入侵检测系统采集的数据信息来源于三个部分:系统日志,系统调用和网络数据。
  
  图1入侵检测系统架构图
  3.1数据信息采集
  在我们的模型中,数据信息的获取和预处理都是由数据采集模块来完成的,根据数据源的不同,我们设计了三种不同的数据采集模块:网络数据采集模块,系统调用采集模块,系统日志监控模块。
  1)网络数据采集模块使用抓包工具Tcpdump从网络中获取IP包,并对这些抓获的IP包按照协议层进行分析和记录,这样可以获得整个网络的IP通信数据。
  2)系统调用采集模块里,我们通过修改Linux系统下的序列跟踪程序Strace,来收集特定进程的系统调用序列号。
  3)系统日志监控模块里,我们通过对系统中的一些关键日志进行实时监控,来提取出可疑或越权的用户行为。
  数据采集模块除了采集相关的数据以外,还要对采集来的数据进行预处理和特征属性提取后,然后再把它们保存到各自的数据库中。
  3.2入侵分析引擎
  由于该模型系统中每一个数据源分析处理的方式都不同,我们为每一个数据源设计了一个相应的数据分析引擎。
  3.2.1网络数据分析引擎
  网络数据分析的主要目的是监测是否发生探测攻击,拒绝服务攻击和分布式攻击。
  探测攻击和拒绝服务攻击具有一个共同特征,那就是是在短时间内会发出大量数据连接请求包,所以我们通过模拟探测攻击和拒绝服务攻击,可以记录下攻击发生时的网络连接记录作为原始数据集,然后采用遗传算法对这些原始数据集进行训练,从而生成三类网络连接数据特征库:探测攻击数据特征库,拒绝服务攻击数据特征库,正常的数据特征库。这些特征库以后可以被用来与实际检测网路的特征进行匹配来判断是否发生攻击。
  分布式攻击是针对整个网段的攻击,所以这里我们采用关联分析的数据挖掘Apriori算法来训练得出网段内各个主机之间的关联规则,然后在入侵监测阶段就可以利用这些关联规则来判断是否发生了分布式攻击。
  3.2.2系统调用分析引擎
  系统程序中由于有条件及循环语句,所以其实际的调用序列具有一定的随机性,但如果将系统调用序列划分成一定窗口大小的子序列后,随着子序列的增加,这些子序列的系统调用关系将逐步呈现出稳定性。当发生异常攻击时,这种稳定性将会被打破,所以在我们的系统中,通过对系统调用的子序列运用挖掘算法,就可以生成正常的子序列调用集合和不正常的子序列调用集合。在入侵监测过程中,如果发现系统调用子序列发生异常,并与不正常的子序列调用集合匹配,即可判断发生了可疑入侵行为。
  3.2.3用户行为分析引擎
  作为一个完整的入侵检测系统,除了要能够检测出来自外部的攻击行为,另外一个重要的任务就是检测出内部合法用户的越权行为,事实上,后者由于具有合法权限往往能够造成更严重的后果。本系统中,我们专门设计了一个用户行为分析引擎,用于对内部用户的行为进行监测分析,以发现可疑的用户行为。
  用户行为分析引擎根据用户的权限和正常行为特征建立用户行为模式库,在实际监测中,通过分析系统日志来提取出用户当前的行为特征并与模式库进行匹配来发现可以行为。
  建立模式库所选用的主要参数包括:失败登录次数,是否试图执行su及尝试次数,登录源IP地址是否来自外部,尝试访问系统敏感文件的次数,是否获得根Shell等。
  3.3用户界面与入侵预警
  用户界面与入侵预警模块在入侵分析引擎发现入侵行为后,通过可视化的用户界面及时向网络管理员发出预警。我们的系统中,对预警的级别进行了分类,如果入侵分析引擎肯定当前发生入侵行为则发出一级红色警报,如果发现可能的入侵行为,则发出二级黄色警报,如果仅仅发现一些轻度异常的状况,则将这些信息存入入侵检测系统日志,以备网络管理员日后查验。
  一级和二级预警的通知方式为窗口报警,向管理员屏幕弹出告警对话框,该对话框除告知入侵检测系统的判断结论外,还列出与入侵相关的各种广泛性数据,帮助管理员主观性地对入侵行为进行分析判断,防止发生过高的误警率。
  4结束语
  该文中我们所设计和实现的入侵检测系统模型较完整地体现了入侵检测系统的主动防护功能,能有效地检测和预警探测攻击,拒绝服务攻击,分布式攻击,异常系统调用以及用户的越权行为等,但同时我们也看到,由于目前的网络安全体系尚存在许多的缺陷,导致入侵检测系统具有较高的误警率,识别入侵的方法缺乏智能化,入侵检测系统作为网络安全的一个方向还有很多技术需要完善。
  参考文献:
  [1] Mukherjee B, Heberlein T L, Levitt K N. Network intrusion detection[J]. IEEE network 1994,8(3):26-41.
  [2] Anderson, Computer Security Threat and Surveillance, 1980.
  [3] Denning D E. An Intrusion-detection model[J]. IEEE Transaction on Software Engneering , 1987,13(2):222-232.
  [4] Theuns Verwoerd, Ray Hunt. Intrusion detection techniques and approaches[J]. Computer Communication ,2002(25):1356 -1365.
其他文献
该文以和欣手机系统平台为基础,在CAR构件运行平台之上,论述了构件化彩信引擎的必要性,详细描述了构件化彩信引擎的设计以及实现过程,并最终给出了测试实例。该文所提出的构
摘要:在如今信息化与数字化的潮流中,档案管理工作也从传统的纸质档案管理模式,转向了信息化、数字化的档案管理模式。档案管理工作的核心是数据的存储与查询,在具体的工作中,管理员将花费了大量的精力来管理和维护数据,在这里将介绍如何使用VBA来帮助管理员来提高数据处理的效率与自动化程度。  关键词:VBA;宏;信息化;档案管理;办公自动化  中图分类号:TP391 文献标识码:A 文章编号:1009-30
该文以中国国家博物馆建筑设备监控系统为背景,通过对博物馆内温湿度、空气质量及节能效果的控制分析,总结了博物馆类建筑在建筑设备监控系统应用的特点及难点,对实际类似工
摘要:文章以湖南省高校数字图书馆为例,通过综合分析数字资源使用统计在图书馆的作用和意义,阐释数字资源绩效评估相关的统计数据,提出数字资使用统计在实践中的现状和建议。  关健词:数字图书馆;数字资源;统计数据  中图分类号:G25 文献标识码:A 文章编号:1009-3044(2012)31-7431-02  1 数字资源统计的作用  数字资源给读者所提供信息的高效快捷越来越被人们所重视,特别是数字
摘要:软件和信息技术服务业是关系国民经济和社会发展全局的基础性、战略性、先导性产业,具有技术更新快、产品附加值高、应用领域广、渗透能力强、资源消耗低、人力资源利用充分等突出特点,对经济社会发展具有重要的支撑和引领作用。人才需求最大、增长最快的是外包型软件企业,所以按就业为导向的思想,高职院校以培养外包型软件企业所需人才为目标的软件开发、测试实训室非常必要。  关键词:软件开发;实训;外包;测试  
自1958年梁羽生的武侠小说《白发魔女传》问世以来,同名电影历经了十余次翻拍。1993年张国荣、林青霞主演的同名电影《白发魔女传》堪称电影史上的佳作;2014年,范冰冰、黄晓
目的:综合分析中西医结合(combine traditional Chinese and western medicine)治疗冠心病(coronary heart disease)心绞痛的临床效果,为治疗提供科学的数据参考。方法:选取在2014
RPGMakerXP是一款主要用来制作角色扮演类游戏的软件,该软件本身带有很多地图元件、角色图像、角色动画等素材,我们可以通过这些素材设计出比较好的游戏。该文适应教学改革的需要,为实现"寓教于乐"的目的,利用该软件设计了一款基于初中化学的角色扮演类教育游戏,目的是让初三的学生在玩游戏的同时学到相应的知识,到达良好的学习效果。该文在最后把设计的游戏在学生中进行测试,达到了良好的效果。
利用直流磁控溅射法,采用氧化锌铝(98%ZnO+2%Al2O3)为靶材,在普通载玻片上制备了AZO(Z n O:Al)薄膜。采用X射线衍射仪、场扫描电镜对薄膜的结构及表面形貌进行了分析,采用分