(计算机软件与理论专业论文)snort入侵检测系统的研究及其性能改进.pdf_第1页
(计算机软件与理论专业论文)snort入侵检测系统的研究及其性能改进.pdf_第2页
(计算机软件与理论专业论文)snort入侵检测系统的研究及其性能改进.pdf_第3页
(计算机软件与理论专业论文)snort入侵检测系统的研究及其性能改进.pdf_第4页
(计算机软件与理论专业论文)snort入侵检测系统的研究及其性能改进.pdf_第5页
已阅读5页,还剩51页未读 继续免费阅读

(计算机软件与理论专业论文)snort入侵检测系统的研究及其性能改进.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 论文题目:s n o r t 入侵检测系统的研究及其性能改进1 学科专业:计算机软件与理论 研究生:谢少春 指导教师:张亚玲副教授 摘要 签名: 签名: 计算机和网络技术的快速发展给人类生产和生活带来了革命性的变化,这也使得人类 面临着网络安全这种新的威胁。传统的加密和防火墙技术已经不能完全满足信息安全的需 求,入侵检测技术作为一种必要的安全手段,在网络安全领域发挥着其独到的作用。 s n o r t 作为典型的轻量级网络入侵检测系统( n i d s ) ,是一个免费的开源项目。对s n o r t 设计原理和实现特点的研究,可以作为其他商用入侵检测系统的研发基石,有较强的学术 意义和较高的商业价值。 本文以s n o r t 系统为研究对象,通过剖析其源代码,系统地研究了s n o r t 整体体系架构, 以及详细分析了其中的多模式快速匹配模式集、快速检测引擎、字符匹配算法等,然后, 本文围绕模式匹配部分展开对提高s n o r t 性能的关键技术研究。 以s n o r t 新特性的分析和现存多种规则匹配方法研究为基础,考虑到大量s n o r t 规则在 一定时间内只有一小部分规则是活跃的,提出了基于活跃规则集的s n o r t 规则匹配方法, 通过把每个端口下的规则分成活跃规则集与不活跃规则集,结合反馈规则匹配频度的思 想,实时更新规则匹配顺序和控制活跃规则集大小,从而提高规则匹配速度。根据本文提 出的改进方法,针对s n o r t2 4 进行了规则匹配算法的改进。经过采用来自林肯实验室的国 际标准化入侵检测样本数据对改进系统进行对比测试分析,实验结果表明,改进后的算法 规则匹配效率提高了6 - - - 2 1 。最后,本文说明了s n o r t 匹配性能改进的进一步工作,并 对s n o r t 和i d s 技术的发展作了展望。 频度 关键词:基于网络的入侵检测系统( n 1 d s ) ;规则树;活跃规则集;规则匹配;匹配 1 本研究得到陕西省教育厅2 0 0 6 年计划资助项目( 项目编号:0 6 j k 2 3 1 ) 的资助 篮趟毖 a b s t r a c t t i t l e :r e s e a r c ha n dp e r f o r m a n c ei m p r o v e m e n to ns n o r ti n t r u s i o n d e t e c t io ns y s t e m m a j o r :c o m p u t e rs o f t w a r ea n dt h e o r y n a m e :s h a o c h u nx i e s u p e r v i s o r :a s s o c i a t ep r o f y a l i n gz h a n gs i g n a t u r e : a b s t r a c t w i t ht h er a p i dd e v e l o p m e n ti nt h et e c h n o l o g yo fc o m p u t e ra n dt h en e t w o r kt e c h n o l o g y , t h es e c u r i t yp r o b l e mi nn e t w o r ki si n c r e a s i n g l yo u t s t a n d i n g b u tt h et r a d i t i o n a le n c r y p t i o na n d f i r e w a l lt e c h n i q u e sc a n tf u l l ym e e tt h ee x p e c t a t i o n s a so n eo fn e wm e t h o d s ,t h ei n t r u s i o n d e t e c t i o ns y s t e m ( i d s ) p l a y sa ni m p o r t a n tr o l ei nn e t w o r ks e c u r i t yt o d a y w i t hi t s c h a r a c t e r i s t i c ,i d ss h o u l dc o n t r i b u t em o r et ot h ei n f o r m a t i o ns e c u r i t y s n o r ti saf r e e o p e n s o u r c e , l i g h t w e i g h t ”n e t w o r k b a s e di n t r u s i o nd e t e c t i o ns y s t e m ( n i d s ) t h a th a sm a n yc a p a b i l i t i e s b ys t u d y i n gs n o r t sc h a r a c t e r i s t i c sa n di m p l e m e n t a t i o n t e c h n i q u e s ,t h ep e o p l ec a nl e a r na b o u ti d s sk n o w l e d g ea n ds n o r t sa d v a n t a g es ot h a tt h e yc a n d os o m e t h i n gf o ri d sa n ds n o r t s t u d y i n gs n o r ti so fa c a d e m i cs i g n i f i c a n c ea n dc o m m e r c i a l v a l u e i nt h i st h e s i s ,t h ea u t h o rl o o k si n t ot h es n o r t sc o d e ,a n a l y z e st h eg l o b a la r c h i t e c t u r e , m u l t i r u l ei n s p e c t i o ne n g i n eo fs n o r t ,t h ef a s td e t e c t i o ne n g i n e ,a n dt h ea l g o r i t h m so fs n o r t s t r i n gm a t c h i n g i nt h ef o l l o w i n gw ec a no b t a i nt h ek e yt e c h n o l o g yo fi m p r o v i n gs n o r t p e r f o r m a n c eb ys t u d y i n gp a t t e r nm a t c h i n g a f t e rt h ea n a l y s i so fn e wc h a r a c t e r i s t i c sa n ds e v e r a li m p r o v e m e n tm e t h o d so fs n o r tr u l e m a t c h i n g ,a n db yc o n s i d e r i n go fw h i c ho n l yas m a l lp a r to fr u l e si nm a s s i v es n o r tr u l e sa r e a c t i v ei nc e r t a i nt i m ep e r i o d ,an e ws n o r tr u l em a t c h i n gm e t h o db a s e do na c t i v er u l es e t si s p r o p o s e di nt h i sp a p e r b yd i v i d i n gr u l es e t su n d e rt h ee a c hp o r ti n t ot h ea c t i v er u l es e t sa n dt h e i n a c t i v er u l es e t s ,c o m b i n i n gw i t hf e e d b a c ko ft h er u l em a t c h i n gf r e q u e n c y , r u l em a t c h i n go r d e r i sr e n e w e di nr e a lt i m ea n dt h es i z eo fa c t i v er u l es e t sa r el i m i t e d ,s ot h er u l em a t c h i n gs p e e d c a nb ei m p r o v e d a c c o r d i n gt h em e t h o dp r o p o s e d ,w eh a v ei m p r o v e dt h er u l em a t c h i n g a l g o r i t h mf o rs n o r t2 4 ,a n dt e s tt h ei m p r o v e ds y s t e mu s i n gi n t e r n a t i o n a ls t a n d a r d i z e di n t r u s i o n d e t e c t i o ns a m p l ed a t af r o mm i tl i n c o nl a b t h ec o n t r a s tr e s u l to ft h et e s ts h o we f f i c i e n c yo f t h en e ws y s t e mi se n h a n c e df o r6 - 21 _ a tt h ee n d ,t h i sa r t i c l eh a sp o i n t e do u tt h ef u r t h e r w o r ko fs n o r tm a t c hp e r f o r m a n c ei m p r o v e m e n t ,a n de x p l a i n e dt h ep r o s p e c to fs n o r ta n di d s t e c h n o l o g y k e yw o r d s :n i d s ;a c t i v er u l es e t s ;r u l et r e e ;r u l em a t c h i n g ;m a t c h i n gf r e q u e n c y 独创性声,明 秉承祖国优良道德传统和学校的严谨学风郑重申明;j 本人所呈交的学位论文是我 一 ,。r 一 个人在导师指导下进行的研究工作及取得的成果t 尽我所知,除特别加以标注和致谢 。j 的地方外,论文中不包含其他人的研究成果。,与我一同工作的同志对本文所研究的工 作和成果的任何贡献均已在论文中作了明确的说明并已致谢。 。 本论文及其相关资料若有不实之处j 由本人承担一切相关责任 论文作者签名:遁主芝羞 汐多年多月多,舀 学位论文使用授权声明 本人:逸兰羞在导师的指导下创作完成毕业论文。本人已通过论文的答辩, 并已经在西安理工大学申请博士硕士学位。+ 本人作为学位论文著作权拥有者,同意 授权西安理工大学拥有学位论文的部分使用权j 即:1 一) 已获学位的研究生按学校规定 提交印刷版和电子版学位论文,学校可以采用影印、缩印或其他复制手段保存研究生 上交的学位论文,可以将学位论文的全部或部分内容编入有关数据库进行检索;2 ) 为 教学和科研目的,学校可以将公开的学位论文或解密后的学位论文作为资料在图书馆、 资料室等场所或在校园网上供校内师生阅读、浏览。 本人学位论文全部或部分内容的公布( 包括刊登) 授权西安理工大学研究生部办 理。 ( 保密的学位论文在解密后 适用本授权说明) 论文作者签名:翅立2 蓥导师签名:霎差亚皂d 扩年月引白 1 前言 1 前言 1 1 研究背景 计算机和互联网技术正在飞速地发展,网络应用日益普及且更加复杂,网络安全问题 也成为互联网和网络应用发展中面临的重要问题。中国国家计算机网络应急技术处理协调 中心( c n c e r t c o ) 公布的“2 0 0 4 年网络安全工作报告”f l 】显示,c n c e r t c c 在2 0 0 4 年共 收到报告的网络安全事件6 4 0 0 0 多件,同2 0 0 3 年相比,网络安全事件报告数量大大增加。 从调查报告公布的数据和状况可以看出,各种网络安全漏洞大量存在和不断地被发 现,网络攻击行为日趋复杂,各种方法相互融合,网络安全问题变得错综复杂,使网络安 全防御更加困难。然而由于现代计算机和网络自身设计的一些问题,当前还不具有一种能 保证计算机和网络绝对安全的技术【2 】。 为了尽量保障计算机和网络系统特别是关键部门的信息安全,市场上涌现出了各种安 全技术和产品,包括防火墙、安全路由器、身份认证系统、v p n 设备等,这些技术和产 品对系统有一定的保护作用,但都属于静态安全技术范畴,不能主动跟踪入侵者【3 l ,也不 能积极有效地防止来自网络内部的非法行为。为了确保网络的安全,网络系统中拥有的网 络安全性分析系统应该能对系统进行漏洞扫描,同时还要能对网络安全进行实时监控、攻 击与反攻击。入侵检测系统( i n t r u s i o nd e t e c t i o ns y s t e mi d s ) 应用而生。 入侵检测系统是一种通过收集和分析计算机系统或网络中关键点的信息,以检查计算 机或网络中是否存在违反安全策略的行为和被攻击的迹象,并对此做出反应,从而保护网 络和主机安全的系统。入侵检测系统能识别外部对计算机或者网络资源的恶意企图和行 为,以及内部合法用户超越使用权限的非法行为【4 1 。 近年来,i d s 在理论研究、实际应用上都有很大发展,如各种检测模型、检测方法的 提出,信息安全公司提供的各种i d s 产品。 s n o r t 是一个用c 语言编写的开放源代码、免费的轻量级入侵检测工具,它在共享的网 络上捕获网络传输数据包,分析捕获到的数据包,匹配入侵行为的特征或者从网络活动的 角度检测异常行为,完成对入侵的预警或记录。根据g p l ( g n up u b l i cl i c e n s e ) 协议,只要 遵循g p l ,任何组织和个人都可以自由使用或者修改s n o r t 。本文采用s n o r t 2 4 版本,作为 论文的分析、实验的基础。 s n o r t 是免费开源的,相对于其他i d s 昂贵的费用,这是最大的优势。众多爱好者对s n o r t 的支持,方便的插件机制可以保证s n o r t 及时地对新入侵和病毒做出迅速地反应。s n o r t 设 计结构简洁,具有一般入侵检测系统的特征,开发者通过s n o r t f l 卧g 较容易地掌握i d s 技术, 以便对更专业化的i d s 做出贡献,在s n o r t 中实现、通过检验的方法也可以移植到其他的i d s 中。 西安j e _ r - 大学硕士学位论文 i d s 发展迅速,同时也面临着一些问题,如检测速度问题、误报、漏报、系统自身安 全问题等。s n o n 从1 9 9 8 年开始作为一种免费软件发布以来,根据网络安全的需要,及时 地融入了各种先进检测技术,如p 分片重组,多模式匹配算法,加强了s n o a 的检测功能。 然而s n o n 仍面临着i d s 普遍的问题,检测速度、误报、漏报,也是s n o r t 迫切要求解决的问 题。 基于以上原因,对s n o n 系统的研究存在着较强的学术意义和较高的商业价值。 检测引擎是i d s 的关键部分,在s n o r t 中,检测引擎采用字符匹配的方法来判断入侵, 检测引擎的速度决定s n o n 的整体性能,s n o r t 社区一直在探索着高性能有效的匹配方法, 也提出了一些解决方法如快速匹配引擎。本文将首先介绍s n o a 最新的研究进展,研究和 分析影响s n o n 检测效率的关键因素,在此基础上提出和实现了基于活跃规则集的s n o n 高 效规则匹配方法,并进行了性能对比测试。 1 2 国内外研究现状及进展 入侵检测系统根据检测引擎采用检测技术的不同,可以将入侵检测系统分为异常入侵 检测系统和误用入侵检测系统。虽然异常检测技术能够发现一些未知的攻击类型,但是其 误报率较高的问题还没得到很好解决,所以目前实际应用的入侵检测系统的检测引擎都是 基于误用检测技术的。一般来讲,常用的误用检测技术有:模式匹配技术、专家系统和状 态迁移技术等。其中模式匹配技术由于其有分析速度快,准确率高等优点,在实际中最为 常用。在实际研究和应用中,人们也开发出很多的基于规则的误用入侵检测系统。著名的 开源入侵检测系统s n o r t 5 1 ,b r o 6 1 ,f i r e s t o r m 7 1 和p r e l u d ei d s | 8 】等都采用了模式匹配技术。 其中s n o r t 是目前最著名、最活跃的开放源码网络入侵检测系统项目。s n o r t 定位于轻量 级的入侵检测系统,已经实现了网络探测器和许多第三方的管理及日志分析工具,是目前 世界上使用最广泛的开源入侵检测系统之一。s n o r t 可以完成实时流量分析和记录网络口 数据包的能力,能够进行协议分析、内容查找匹配,能够检测到缓冲区溢出,端口扫描、 c g i ( c o m m o ng a t e w a y i n t e r f a c e ) 攻击、s m b ( s e r v e rm e s s a g eb l o c k ) 探测、操作系统指纹 探测企图等。s n o r t 可以运行于l i n u x u n i x 系列,w i n d o w s 等操作系统,具有良好的跨平 台性,并提供丰富的报警机制。s n o r t 遵循g p l ( g e n e r a lp u b l i cl i c e n s e ) ,所以任何企业、个 人、组织都可以免费使用它作为自己的网络入侵检测系统。s n o r t 具有简洁明了的规则描 述设计及已经成一定规模的攻击检测规则集,它的规则集已经被很多其他开放源码i d s 项目所兼容。历经数年的发展,s n o r t 已经发展到了2 x 版本。s n o n 基本架构在s n o r t l 6 版本时确立,2 0 版本开始采用了新型的入侵检测引擎,功能更加完善和强大。s n o r t 已经 成为学习和研究入侵检测系统的经典实例。 目前,许多商业入侵检测系统都是在s n o n 入侵检测系统的基础上发展来的,有些甚 至是s n o r t 的翻版。国内也开发了不少商用入侵检测系统,例如启明星辰公司的“天阒入 2 1 前言 侵检测系统”,中科网威的“天眼入侵检测系统”,绿盟科技的“冰之眼”入侵检测系统, 联想也开发了“联想网御入侵检测系统”。虽然目前市面上的商用入侵检测系统种类繁多, 但是分析其本质,这些入侵检测系统都借鉴了s n o r t 的设计思想。s n o r t 的检测原理并不 复杂,采用的是简单的模式匹配策略。准确性和快速性是衡量其性能的重要指标。前者主 要取决于对入侵行为特征码的提炼的精确性和规则撰写的简洁实用性,由于网络入侵检测 系统自身角色的被动性只能被动的检测流经本网络的数据,而不能主动发送数据包去 探测,所以只有将入侵行为的特征码归结为协议的不同字段的特征值,通过检测该特征值 来决定入侵行为是否发生。后者主要取决于引擎的组织结构和采用的模式匹配算法。当数 据包从预处理器送过来后,检测引擎依据预先设置的规则检查数据包,一旦发现数据包中 的内容和某条规则相匹配,就通知报警模块。但随着网络带宽不断提高,以及网络攻击种 类的急剧增加,致使s n o r t 的检测任务越来越重。当s n o r t 检测引擎过载时,就有可能漏 掉一些造成严重后果的网络攻击行为。因此,模式匹配算法已经成为s n o r t 系统瓶颈所在, 所以设计高效的模式匹配算法对于提高s n o r t 性能有很大意义。模式匹配算法,按照每次 匹配模式的个数,可以分为单模式匹配算法和多模式匹配算法。在单模式匹配算法方面, 目前广泛使用的主要有k m p 算法【9 1 ,b m 算法【l o j 和k r 算法】等。b m 算法是由r s b o o y e r 和j s m o o r e 两个人在1 9 7 7 年设计实现的一个字符串匹配算法,是目前实际应用中最为 常用、效率较高的单模式匹配算法之一。它采用从后向前的比较方式,并利用当前尝试中 的以匹配的信息和匹配失败的字符,查找预处理好的良好后缀跳转表( g o o d s u f f i xs h i i t a b l e ) 和不良字符跳转表( b a d 。c h a r a c t e rs h i f tt a b l e ) ,依靠这些启发信息进行跳跃式的 并行处理,忽略不必要的比较,提高了模式匹配的速度。实际上现有的单模算法都是在 b m 算法的基础上改进而来,或者受到了b m 算法思想启发。在多模匹配算法方面,比较 著名的算法有a c 算法【1 2 1 、w u m a n b e r 算法【1 3 】,a c b m 算法【14 1 、c o m m e n t s w a l t e r 算法 1 1 5 1 ,s b m h 算法【1 6 】和e 2 x b 算法【1 7 j 等。其中a c 算法是多模匹配算法中的典型算法,是 由a v a h o 和m j c o r a s i c k 联合提出的多模式匹配算法,最初用在贝尔实验室的图书检索 系统里面,后来在其它领域得到了广泛应用。a c 算法在预处理阶段通过模式集合构建一 个有限状态模式匹配自动机( d e t e r m i n i s t i cf i n i t ea u t o m a t o n ,d f a ) 。其实质就是将多模式匹 配问题转化成单模式匹配问题,然后将文本串作为自动机的参数输入进行匹配,对文本只 需扫描一次。有限自动机由一系列的状态组成,每个状态可以用一个数字来表示。自动机 处理文本的过程实质就是按序读入文本中的每个字符,并根据当前的状态进行跳转,假如 跳转后的状态是终止状态,则输出匹配结果。自从a c 算法采用有限状态自动机方法来解 决多模匹配问题以来,a c 算法也成为其它多模式匹配算法的思想基础,比如a c b m 就 采用了a c 算法和b m 算法结合思想。c o m m e n t s w a l t e r 算法,类似于a c b m 算法,其 思想是首先用模式集构建一棵搜索树,然后再采用类似b m 算法的方法,在文本中用搜 索树对模式进行跳跃搜索。w u m a n b e r 算法继承了b m 算法中不良字符跳转的思想,但 与b m 算法不同的是,该算法依据长度为b ( 2 或3 ) 的字符块进行跳转。由于采用字符 3 西安理工大学硕士学位论文 块技术,降低了部分匹配的可能,增加了直接跳跃的机会,并且采用哈希技术和前缀表, 进一步减少了匹配次数,提高了性能。国内对模式匹配算法的研究基本基于上述几种经典 算法,做不同程度的改进工作。其中基于b m 算法方面做的改进工作最多。除了这些改 进算法,贺龙涛2 0 0 5 年在软件学报上提出一种全新的匹配算法l i n e a rd a w gm a t c h i n g 算法( 简称l d m 算法) 1 1 8 。该算法将正文分为 n m 个相互重叠、大小为2 m 1 的扫描窗 口。在每个扫描窗口内,算法批量地尝试m 个可能位置,首先使用反向后缀自动机从窗 口中间位置向前扫描模式前缀;若成功,则再使用正向有限状态自动机从中间位置向后扫 描剩余的模式后缀。上海交通大学的王永成等人于2 0 0 2 年在上海交大学报上提出一种新 的模式匹配算法【1 9 】【2 0 l 。其思想是在有限自动机的多模式匹配算法( d f s a 算法) 的基础上, 结合q s 算法的优点,提出一个快速的多模式字符串匹配算法,并基于算法的连续跳跃的 思想,给出另一个更加有效的改进。在一般情况下,这两个算法不需要匹配目标文本串中 的每个字符,并充分利用了匹配过程中本次匹配不成功的信息,跳过尽可能多的字符。在 模式串较长和较短的情况下,算法都有很好的性能。电子科技大学的万国根、秦志光也在 电子科技大学学报提出改进的a c - b m 算法,将待匹配的字符串集合转换为一个类似于 a h o c o r a s i c k 算法的有限状态自动机。匹配时,采取自后向前的方法,并借用b m 算法的 坏字符跳转和好前缀跳转技术。改进的a c b m 算法借助b m h 算法思想,取消了原a c b m 算法的好前缀跳转,并对坏字符跳转部分的计算进行优化。新算法修改了s k i p 的计算方 法,不再保留每个节点的好前缀跳转参数及坏字符跳转参数,因此匹配只与当前匹配字符 有关,而与当前节点无关,可以实现大小写正文的识别【2 1 1 。在用先进模匹配算法改进入 侵检测引擎方面,北京大学文字信息处理技术国家重点实验室的张邈、徐辉等以s n o r t 为 蓝本,从规则库结构、串匹配算法及应用层协议分析等方面入手进行优化,设计并实现高 效率的串匹配型入侵检测系统s p e e d i d s 2 2 】;上海交通大学的陈一航、薛质基于e 2 x b 的 改进算法做检测引擎算法,并在s n o r t 中实现【2 3 1 。最后中科院高能物理研究所计算中心的 李雪莹等基于几种常见的多模匹配模式算法改进了s n o r t 检测引擎,并做了性能比较分析 2 4 1 。 1 3 论文内容、方法和意义 基于网络的入侵检测技术在网络安全领域得到了广泛的应用。s n o r t 作为一种免费开 源的入侵检测工具,提供给了网络安全从业者一个研究平台。本论文以s n o r t 为研究对象, 来了解、研究一般的i d s 。 本文的研究内容与成果包括以下几个方面: ( 1 ) 本文概述了入侵检测系统与s n o r t ,总结了i d s 及s n o r t 面临的问题和发展趋势,指出 了s n o r t 在入侵检测系统研究中的学术意义和研究价值。 ( 2 ) 分析了较新的s n o r t 2 4 0 版本的系统结构,重点剖析了s n o r t 十f l 对2 0 以的版本的两个 4 1 前言 重大改进部分:规则索引和多模式匹配,对s n o r t 2 4 从源代码的角度有了一个透彻的理解。 ( 3 ) 总结了改进s n o r t 性能的一系列方法,然后围绕规则匹配部分,提出了基于活跃规 则集的s n o r t 规则匹配方法来改进s n o r t 的性能。 ( 4 ) 根据本文提出的改进方法,我们针对s n o r t 2 4 进行了规则匹配算法改进,经过采 用林肯实验室的样本数据对改进系统的测试,结果表明,改进后的算法规则匹配效率提高 了6 2 1 。 本论文的意义在于详细分析了s n o r t 2 4 的体系结构及s n o r t 2 0 后采用的全新的规则索 引和多模式匹配引擎的实现,在w i n d o w s 下通过实验来测试s n o r t 处理数据包的性能,并提 出了基于活跃规则集来改进s n o r t 的性能的方法,最后完成了s n o r t 代码的修改。性能测试 实验证明,本改进方法能显著提高s n o r t 的规则匹配性能。 对作者来说,通过论文工作,深入了解了网络入侵检测系统的工作原理和具体实现。 为作者以后从事计算机及网络安全方面的工作奠定了深厚的理论基础,积累了丰富的工作 经验。 1 4 论文组织结构 论文全文的章节安排如下: 第一章介绍了入侵检测与网络安全的研究背景、课题意义及论文的组织结构。 第二章对入侵检测和s n o r t 作了简要的概述,分析了i d s 及s n o r t 面临的问题和发展 趋势。 第三章对著名的入侵检测系统s n o r t 进行了详细分析,重点阐述了最新版本s n o r t 的 改进:包分类机制和快速匹配引擎。 第四章重点阐述了基于活跃规则集的s n o r t 高效规则匹配方法。 第五章给出了基于活跃规则集的s n o r t 高效规则匹配方法思想的实现方法,以及改进 前后s n o r t 的性能对比测试结果。 第六章对全文进行了总结,并对本课题相关的未来发展进行了展望。 5 西安j 里y - 大学硕士学位论文 2 入侵检测系统与s n o r t 2 1 入侵检测系统 入侵检i 9 l q ( i n t r u s i o nd e t e c t i o n ,i d ) ,顾名思义,是对入侵行为的检测。它通过收集和 分析计算机系统或网络中若干关键点的信息,以检查计算机系统或网络中是否存在违反安 全策略的行为和被攻击的迹象,识别外部对计算机或者网络资源的恶意企图和行为,以及 内部合法用户超越使用权限的非法行为,并对此做出反应,从而保护网络和主机的安全 1 2 5 】 o 入侵检测技术是一种主动保护自己免受攻击的网络安全技术。被认为是防火墙之后的 第二道安全闸门,它在不影响网络性能的情况下能对网络进行监测,是一种积极主动的安 全防护技术。 入侵检测系统( i n t r u s i o nd e t e c t i o ns y s t e md s ) 是完成上面功能的独立系统。i d s 提供 了对内部攻击、外部攻击和误操作的检测,在被保护系统的安全性受到侵害时发出报警并 采取适当的行动来阻止入侵行为,从而起到保护系统安全的作用【2 6 1 。 2 2i d s 的标准与结构 美国国防高级研究计划署( d a r p a ) i 作组( i d w g ) 发起制订了一系列i d s 和互联网工 程任务组( i e t f ) 的入侵检测建议草案,从体系结构、a p i 、通信机制、语言格式等方面规 范i d s 的标准。d a r p a 提出了公共入侵检测框架( c i d f ) t 2 7 1 ,如图2 1 ,c i d f 主要包括四部 分:d s 体系结构、通信机制、描述语言和应用编程接h a p i 。 c i d f 将一个入侵检测系统分为四个组件:事件产生器( e v e n tg e n e r a t o r s ) ;事件分析器 ( e v e n ta n a l y z e r s ) ;响应单元( r e s p o n s eu n i t s ) ;事件数据库( e v e n td a t a b a s e s ) 。四个组件间或 各个i d s 间采用g i d o ( g e n e r a li n t r u s i o nd e t e c t i o no b j e c t 统一入侵检测对象) 格式进行数据 交换。 在c i d f 模型中,事件产生器、事件分析器和响应单元通常以应用程序的形式出现, 而事件数据库则采用文件数据流的形式。c i d f 将i d s 需要分析的数据统称为事件( e v e n t ) 。 事件产生器,从整个计算环境中获得事件,转化成一定格式,以向系统的其他部分提 供此事件。 事件分析器,分析得到的数据,并产生分析结果。分析器是i d s 的核心部分,可以以 不同的方法来分析数据,以判断入侵。 响应单元,则是对分析结果做出反应的功能单元,它可以做出切断连接、改变文件属 性等反应,也可以只做简单的报警。 6 2 入侵检测系统与s n o r t 图2 1c i d f 基本模型 f i g 2 1f u n d a m e n t a lm o d e lo fc i d f 事件数据库,存放各种中间和最终数据的地方,可以是复杂的数据库,也可以是简单 的文本文件。 i d s 通信机制,为了保证各个组件之间安全、高效的通信能力,c i d f 将通信机制构成 一个三层模型:g i d o 层、消息层、协议传输层。 i d s 描述语言,c i d f 使用一种被称为s 表达式的入侵说明语言( c i s l ) 对事件分析结 果、响应指示等过程进行表示说明,以达至i j i d s 之间语法互操作。该语言类似于l i s p 语言。 i d s a p i 接口,负责g i d o 的编码、解码和传递,使得程序员可以以一种很简单的方式 构建和传递g i d o 。 2 3i d s 的发展与分类 19 8 0 年,a n d e r s o njp 在报告“c o m p u t e rs e c u r i t yt h r e a dm o n i t o r i n ga n ds u r v e i l l a n c e ” t 2 s l 第一次详细阐述了入侵检测的概念。提出了利用审计跟踪数据监视入侵活动的思想。 这份报告被公认为是有关入侵探测的最早论述。 1 9 8 4 年- 1 9 8 7 年,d o r o t h yd e n n i n g 与p e t e rn e u m a n n 联合开发了一个实时入侵检测系统 i d e s ,并提出了一种通用的入侵检测模型1 2 9 1 。该模型根据主机系统审计记录数据,生成 有关系统的若干轮廓,并监测轮廓的变化差异发现系统的入侵行为,如图2 2 所示。 随着入侵行为的种类不断增多,涉及的范围不断扩大。入侵检测系统的不同功能组件 之间、不同i d s 之间共享这类攻击信息是十分重要的。为此,c h e n 等提出一种通用的入侵 检测框架模型,简称c i d f 。 7 西安理工大学硕士学位论文 更新规则 图2 - 2i d e s 入侵检测模型 f i g 2 2i d e si n t r u s i o nd e t e c t i o nm o d e l 1 9 8 8 年的莫罩斯蠕虫事件发生之后,美国军方、学术界和企业开始了对分布式入侵检 测系统( d i d s ) 的研究,将基于主机和基于网络的检测方法集成到一起。它的检测模型采用 了分层结构,包括数据、事件、主体、上下文、威胁、安全状态等6 层。 直至1 2 0 世纪9 0 年代商业化的i d s 才真正出现,如:国:g - i s s 公司的r e a l s e c u r e ,c i s c o 公 司的s e c u r ei d s ,i b m 公司的i e r s ( i n t e m e te m e r g e n c yr e s p o n s es e r v i c e ) 等【3 0 】。 从2 0 世纪9 0 年代到现在,入侵检测系统的研发呈现出百家争鸣的繁荣局面,并在智能 化和分布式两个方向取得了一些进展。 计算机和网络技术的继续发展,使得入侵检测技术仍然面临着巨大的挑战,i d s 技术 也必须通过和其他计算机技术的结合,探索新的方法,才能在网络安全方面发挥更大的功 效。 i d s 可以按照不同的方法来分类: 2 3 1 按检测方法分类 按照检测方法的不同,可以把i d s 分为特征检钡l j ( m i s u s ed e t e c t i o n ) 的i d s 和异常检测 ( a n o m a l yd e t e c t i o n ) l 拘i d s 3 。 特征检测又称为误用检测,是基于知识( 或规则) 的检测【3 2 1 。它通过对已知的入侵方式 特征做出确定性的描述,形成事件模式,当用户行为或系统状态同已知的事件模式相匹配 时,则就认为发生了入侵。通常采用专家系统法、模型推理法、状态转移法、模式匹配法、 p e t r i 网、信息反演法等方法。其优点是准确率较高。但是不能发现未知的入侵行为,比较 难以检测到入侵变种。 异常检测又称为行为检测。首先它对系统对象的一些测量属性( 比如访问次数、c p u 使用频率、操作失败次数等) 进行统计,找出一个阀门值作为基准,如果用户的行为或资 源使用的状况超出了这个基准值,则就认为发生了入侵。通常采用基于概率统计的、基于 8 2 入侵检测系统与s n o r t 免疫学的、基于数据挖掘的、基于专家系统的、基于神经网络的方法等。这种方法的优点 是通用性强,对具体系统的依赖性较少,并且能够发现未知的入侵行为。缺点是如何描述 正常的行为模式,确定异常的基准值比较困难,导致误报率较高。 2 3 2 按检测所用数据来源分类 按检测所用数据来源通常分为基于主机的h i d s 、基于网络的n i d s 和分布式的d i d s 三大类。 h i d s 一般安装在重点保护的主机上,通过对系统日志、审计数据的分析和端口活动 的监听发现入侵行为。其检测目标主要是主机系统和系统本地用户,通过监视操作系统和 各种服务生成的日志文件,检测是否有入侵。n i d s 通常置于重要的网段内,监听网络数 据包,发现攻击事件,一旦入侵特征匹配或者超过正常的阀门值就做出反应。 d i d s 将信息采集、分析、响应等构件分布在网络的各个监控点上,他们之间通过通 信传输构件联系,由管理中心提供统一管理。网络上的多个检测器共同收集信息,协同工 作,并行的进行检测分析工作。 2 3 3 按实现方法分类 按实现方法可分为基于概率统计模型的检测、基于神经网络的检测、基于专家系统的 检测、基于模型推理的检测和基于免疫的检测等技术。 2 4s n o r t 系统概述 2 4 1s n o r t 的功能 从检测模式而言,s n o r t 属于网络入侵检n o d s ) 的误用检测。它通过l i b p c a p 库函数从 网络中抓取数据包,对数据包进行解析,接着启动检测引擎,将解释好的数据包和规则模 式集进行比较。如果匹配规则,则认为该入侵行为成立,使用规定的方式进行响应,然后 结束一个数据包的处理过程,再抓取下一个数据包。如果没有匹配的规则,则是正常行为, 直接返回,抓取下一个包进行处理。 s n o r t 是基于规则检测的入侵检测工具,即针对每一种入侵行为,都提炼出它的特征 值,并按照规范写成检测规则,形成一个规则数据库。利用此规则库和捕获的数据包进行 比较,来判断是否为入侵。目前,s n o r t 的检测规则库主要针对缓冲区溢出、端口扫描和 c g i 攻击等。最新数据表明s n o r t 共有5 l 类4 3 0 0 条检测规则。 s n o r t 集成了多种告警机制来提供实时告警功能,包括:s y s l o g 、用户指定文件、 9 西安理工大学硕士学位论文 u n i x s o c k e t 、通过s m b c l i e n t 使用w i n p o p u p 对w i n d o w s 客户端告警。 s n o r t 的插件机制使得它具有很好的扩展性和可移植性,用户可以根据自己的需要及 时在短时间内调整检测策略,对于新的攻击威胁做出迅速反应。 s n o r t 有三种工作模式:嗅探器、数据包记录器、网络入侵检测系统。 s n o r t 作为丌源软件填补了只有商业入侵检测系统的空白,可以帮助中小网络的系统 管理员有效地监视网络流量和检测入侵行为。s n o r t 一开始就作为一种免费开源软件发布, 只要遵循g p l 协议,任何人可以得到它的版本,安装使用。在s o u r c e f i r e 上也可以获得s n o r t 的商业解决方案。 2 4 2s n o r t 的发展 s n o r t 作为一种开源免费的入侵检测工具,它的发展得到了全世界很多爱好者的支持, 在w w w s n o r t o r g 和w w w ,s o u r c e f i r e c o m ,有最新的发布版本和有关资料,也可以通过论坛, 新闻组等交换最新信息。 1 9 9 8 年1 2 月,m a r r yr o e s c h 发布了开源软件s n o r t 的第一版本,它开始是作为嗅探器, 随后在s n o r t 中加入基于特征分析( s i g n a t u r e - b a s e dr u l e s - b a s e d ) 的功能,开始被用做简单的 i d s 。 1 9 9 9 年1 0 月,s n o r t l 5 发布,加入了重新写过的基于b o y e r - m o o r e 算法的模式匹配引擎, 插件机制,预处理机制等。规则解释采用二维链表,从此一直沿用该体系结构,直到2 0 版本。 2 0 0 0 年,s n o n j l 入端口扫描插件,i p 重组插件,数据库输出等功能。 随着网络的发展和网络攻击的增多,s n o r t 核心规则集也不断增加,s n o a 必须通过改 进方法,来提高检测速度。在2 0 里,s n o r t 采用了全新的体系结构,并重新设计了s n o r t 的 检测引擎。删除了一些多余的插件和规则。但s n o r t 的插件和预处理机制没有改变。 在2 0 后的版本中,通过试用和测试,不断有人报告错误和修正错误,也根据入侵种 类的变化加入了一些相应的处理插件和预处理插件。 s n o r t 的规则极容易修改和调整,能及时对外部入侵做出反映。用户可以迅速及时地 通过m 椰s n o r t o r g 下载最新规则。由于规则格式逐渐成为了标准,用户也可以自己写一些 规则来加强网络的安全性。 今天,s n o r t 的各个方面仍然经过一些协作组织及个人的努力,在不断改进。 2 5s n o r t 的安装和使用 s n o r t 的跨平台性能极佳,目前已经支持l i n u x 系列,s o l a r i s ,b s d 系列,i r ,h p - u x , w

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论