




已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)idmef标准格式应用于snort的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
内蒙古大学硕士学位论文 i d m e f 标准格式应用于s n o r t 的研究与实现 摘要 近年来,计算机技术和互联网技术的迅猛发展,有力地推动了社会进步。 计算机网络已经渗透至社会各个领域,成为人们工作和生活中必备的工具之一。 然而与此同时,计算机网络的安全性也受到前所未有的威胁。因此,入侵检测 系统( i n t r u s i o nd e t q c t i o ns y s t e m ) 作为另一种重要的手段逐渐受到人们的重视。 然而,入侵检测系统发展起步相对较晚,并且一直没有一个统一的行业标 准。这严重制约了入侵检测系统的发展。就在同时,国际i e t f 组织的入侵检测 工作组( i d w g ) 制定了一系列入侵检测相关的标准,并发布r f c 文档。其中 包括了入侵检测信息交换格式i d m e f ( r f c 4 7 6 5 ) 。i d m e f 规定了入侵检测数 据在表达和传输过程中的详细格式、数据类型定义方法以及各数据类型之间的 依赖关系。至此,i d m e f 成为我们可以依赖的数据表达和交换的标准格式。 在入侵检测领域,s n o r t 一直占有重要的地位。它是一个基于网络的开源的 入侵检测系统。经过多年的发展,它的技术已经非常成熟。s n o r t 一直拥有自己 的数据表达和存储格式,本文目的是要实现将i d m e f 应用到s n o r t ,使得s n o r t 能够实现符合标准的输出格式。s n o r t 使用灵活的输出插件机制,本文的重点是 开发一个基于i d m e f 的输出插件,并且同时开发该插件依赖的库函数 l i b l d m e f 。使得s n o r t 通过这二者能实现输出符合r f c 4 7 6 5 规定的数据交换格 式。 关键词:i d s ,r f c 4 7 6 5 ,i d m e f ,s n o r t ,输出插件 i d m e f 标准格式应用于s n o r t 的研究与实现 t h er e s e a r c ha n di m p l e m e n t a t i o no f a p p l i c a t i o n o fi d 匝fi ns n o r t a b s t r a c t i nr e c e n ty e a r s ,t h er a p i dd e v e l o p m e n to fc o m p u t e ra n di n t e m e tt e c h n o l o g y e f f e c t i v e l yp r o m o t es o c i a lp r o g r e s s c o m p u t e rn e t w o r k sh a v ep e n e 仃a t e dt oa l la r e a s o fs o c i e t y ;i th a sb e c o m eo n eo ft h em o s t n e c e s s a r yt o o l si no u rw o r ka n dl i f et i m e a t t h es a m et i m e ,t h e s e c u r i t y o fc o m p u t e rn e t w o r kh a sa l s ob e e nu n d e ra n u n p r e c e d e n t e dt h r e a t s o ,i n t r u s i o nd e t e c t i o ns y s t e ma t t r a c t sp e o p l e sa t t e n t i o n g r a d u a l l ya sa n o t h e ri m p o r t a n tt 0 0 1 h o w e v e r t h ed e v e l o p m e n to fi n t r u s i o nd e t e c t i o ns y s t e ms t a r t e dr e l a t i v e l yl a t e a n dt h e r ei sn o ta ni n d u s t r ys t a n d a r d i th a ds e r i o u s l yh a m p e r e dt h ed e v e l o p m e n to f i n t r u s i o nd e t e c t i o ns y s t e m a tt h es a m et i m e ,t h ei d w go fl e t ff o r m u l a t e das e r i e s o fs t a n d a r d sr e l a t e dt oi n t r u s i o nd e t e c t i o ns y s t e m s ,a n dp u b l i s h e dr f c s i n c l u d i n g t h ei n t r u s i o nd e t e c t i o nm e s s a g ee x c h a n g ef o r m a t ( r f c 4 7 6 5 ,i d m e f ) i d m e f d e s c r i b e dt h ed e t a i l e df o r m a ti nt h et r a n s m i s s i o no ft h ei n t r u s i o nd e t e c t i o nd a t a , d e f i n i t i o no fd a t at y p e sa n dd e p e n d e n c ea m o n gt h ed a t at y p e s s o ,i d m e fb e c o m ea s t a n d a r df o r m a tw ec a nr e l yo nn o w s n o r th a sp l a y e da ni m p o r t a n tr o l ei nt h ef i e l do fi n t r u s i o nd e t e c t i o ns y s t e m s i t i saw e b b a s e da n do p e n - s o u r c ei d s a f t e ry e a r so f d e v e l o p m e n t ,t h et e c h n o l o g yo f s n o r tb e c o m e sm o r ea n dm o r em a t u r e s n o r th a si t so w ne x p r e s s i o na n dd a t as t o r a g e 内蒙古大学硕士学位论文 f o r m a t t h ep u r p o s eo ft h i st h e s i si st oa p p l yi d m e fi ns n o r t ,s oi tw i l lg e tas t a n d a r d o u t p u t s n o r tu s eaf l e x i b l eo u t p u tp l u g i nm e c h a n i s m i nt h i st h e s i sw ew i l ld e v e l o p a no u t p u tp l u g i nb a s e do ni d m e f a n dd e v e l o pal i b r a r yn a m e dl i b l d m e fw h i c h t h ep l u g i nr e l i e so n a l lo ft h i s m a k es n o r ta c h i e v eas t a n d a r dd a t ae x c h a n g ef o r m a t t h r o u g ht h ep l u g i na n d t h el i b r a r y k e y w o r d s :i d s ,r f c 4 7 6 5 ,i d m e f , s n o r t ,o u t p u tp l u g - i n i i i 内蒙古大学硕士学位论文 图表目录 图2 1i d s 的部署4 图2 2s n o r t 体系结构五4 图2 3t c p i p 模型和s n o r t 5 1 5 图2 4s n o r t 包解码结构网:j 6 图2 5s n o r t 规则头【8 1 8 图2 6s n o r t 规则树 9 1 9 图2 7s n o r t 执行参数1 l 图3 1i d m e f 数据模型概览2 3 图3 2a l e r t 类2 4 图3 3a l e r t 类的子类2 5 图3 4h e a r t b e a t 类2 7 图3 5 核心类2 8 图3 6a n a l y z e r 类2 8 图3 7c l a s s i f i e a t i o n 类3 0 图3 8s o u r c e 类3 0 图3 9t a r g e t 类3 2 图3 1 0a s s e s s m e n t 类3 3 图4 1 新旧s n m p s e r v i c e 类对比3 9 图4 2 函数结构5 l v 原创性声明 本人声明:所t 交的学位论文是本人在导师的指导卜进行的研究j i :作及取得的研究成 果。除本文已经注明引用的内容外,论文中不包含其他人已经发表或撰弓过的研究成果,也 不包含为获得凼鏊直塞堂及其他教育机构的学何或证f 5 而使州过的材料。与我一同j l :作的同 忠对本研究所做的任何贡献均已在论文中作了明确的说明,f = 表示谢意。 学位论文作有签名:二邂 口 捂洲龇逊 在学期问研究成果使用承诺书 小学位沦义作存完全了解学校有父保雷f 、使川f 江论义的规定,即:内蒙,i 人学仃权将 学化论文的全筒5 内窬或部分保留并向同家仃天机构、鞠;i j 送交学位沦文的复印r i :神l 磁激,允 n :编入订) 数 j l i :席进行检索,也可以采川影印、缩印或j 他复制手段保存、? l 编学化论义。 为保护学院和导师的知谚1 产权,作者在学j 9 j 问墩得的研究成果属j :内蒙j ! i 人学。作街今后 使川涉及在学期问士要研究内容或研究成果,须征得内蒙古人学就读j 9 j 问导师的同意:若川 丁发表论文,版权单位必须署名为l 勾蒙古人学方可投稿或公开发表。 学位论文作者签名:鳢 指导教师签名: 日日 燧 丝塑:! :尘 内蒙古大学硕士学位论文 第一章引言弟一早ji 百 近年来计算机技术和互联网技术的迅猛发展,有力地推动了经济社会的飞速进步。不过 一 与此同时,计算机网络用户的安全性也面临着前所未有的威胁和挑战。从国家计算机网络应 急技术处理协调中心( c n c e i 刑c c ) 2 0 0 7 年上半年网络安全工作报告中可以看出,2 0 0 7 年1 月至6 月这半年中网络仿冒事件和网页恶意代码事件分别超出去年全年总数的1 4 6 和 1 2 5 ,我国大陆地区被植入木马的主机m 远远超过去年全年,增幅达2 l 倍。我国大陆被篡 改网站数量比去年同期增加了4 倍,比去年全年增加了近1 6 9 。针对中小型企业,尤其是 以网络为业务核心的企业,进行有目的性的d d o s 攻击事件增多。僵尸网络发展迅速,逐渐 成为攻击行为的基本渠道,成为网络安全的最大隐患之一。【l 】这些网络安全隐患对整个互联 网造成巨大的经济损失。提高网络的安全性已经刻不容缓。由于受到的网络安全威胁种类各 不相同,因此单一依靠防火墙在很多环境下已经不能很好的解决网络安全问题,这时作为网 络安全防范的重要手段之一,入侵检测系统( i d s ) 越来越受到人们的重视。i d s 与防火墙的 工作原理不同,基于网络的入侵检测系统在网络的一个或多个位置设置嗅探器,嗅探多个不 同位置流经网络的数据包,然后集中对数据包内容进行分析,从中发现违反网络安全策略的 行为,从而进一步采取相应的报警措施,起到保护网络安全的目的。 然而,由于i d s 系统发展起步较晚,在这个过程中没有形成统一的行业标准。这使得不 同种类的i d s 系统互不兼容,不能相互进行信息交换。这不仅增加了i d s 系统形成规模化联 合运作的难度,更不利于其长期健康的发展。在i d s 的报警输出方面,目前的各种系统,不 论是以软件形式还是硬件形式实现,都是使用自己定义的数据交换格式。以开源i d s 系统s n o r t 为例,它的输出方法是将系统日志和报警信息直接写入到文件或者是写入到各种类型的数据 库( 如m y s q l ,o r a c l e 等) ,然后通过外部工具读取数据库进行系统分析。在这个过程中, s n o r t 使用自己定义的数据格式,可以将数据以明文形式输出,或者直接以二进制流输出。由 于输出数据格式定义的任意性,这使得其他的入侵检测系统难于访问其数据类型和数据库表 结构。同时,s n o r t 的特定输出机制,使其难以形成大规模的分布式系统,共享所有信息资源。 因此国际i e t f 组织的入侵检测工作组( i d w g ) 制定了一系列i d s 相关的数据通信格式, 并在2 0 0 7 年3 月形成实验性的r f c 文档。其中包括了入侵检测信息交换格式i d m e f ( r f c 4 7 6 5 ) 、入侵检测信息交换要求( r f c 4 7 6 6 ) 和入侵检测交换协议i d x p ( r f c 4 7 6 7 ) 。 i d m e f 标准格式应用于s n o r t 的研究与实现 这三套文档定义了入侵检测数据在传输过程中的详细格式、数据类型定义方法以及各数据类 之间的依赖关系,还定义了数据在传输过程中遵循的协议。通过对上面各个标准的研究分析, 我们可以结合现有入侵检测系统和新标准的优势,弥补现有系统的不足,使新系统实现更广 泛的应用范围。本文就是要以s n o r t 为研究对象,以s n o r t 2 4 4 为例。目的是将i d m e f 应用 到s n o r t ,使s n o r t 实现标准格式输出。 2 内蒙古大学硕士学位论文 2 1s n o r t 系统介绍 第二章s n o a 系统 s n o a 是一个开放源代码的入侵检测和预防软件,它的实现依赖于对其规则库的驱动。 s n o r t 在全世界部署最广泛,几乎成为事实上的工业标准。最初s n o r t 的作者为m a r t i nr o e s c h 。 1 9 9 8 年m a r t i nr o e s c h 写了一个轻量级的入侵检测软件,起名为s n o a ,意图在与商业系统进 行对比【2 】。经过多年发展,s n o a 逐渐成为一个成熟的、功能强大的系统。s n o r t 旨在实现i p 网络上流量的实时分析和包记录,它能够实现协议分析、内容搜索匹配,并且能够检测网络 上各种类型的攻击和刺探,例如缓冲区溢出、秘密端口扫描、c g i 攻击等等。s n o a 使用一种 灵活的规则语言来描述不同攻击类型的特征,并且它的检测引擎使用插件的方式,使其具有 灵活的可扩展性。 、s n o a 的主要功能有三个【3 】: ( 1 ) 作为数据包的直接嗅探器,例如t c p d u m p 。在网络流量较大的情况下,使用t c p d u m p 可以快速记录网络流量,使s n o r t 占用较少的资源,不至于发生数据包丢失。 ( 2 ) 作为数据包记录器,可将数据包记录到硬盘,用于网络流量调试错误等。 ( 3 ) 作为一个全能的网络入侵检测和预防系统。这是s n o r t 的主要功能,实现对数据包 的处理、分析、规则匹配、记录等一系列功能。 s n o r t 可以使用在多种操作系统下,例如各种l i n u x 、w i n d o w s 等。同时s n o r t 源代码可 以在这些操作系统下编译执行。在l m u x 下,s n o r t 的运行依赖于l i b p c 印包。l i b p c a p 是l m u x 下的数据包捕获库函数( p a c k e tc a p t u r el i b r a r y ) ,在w i n d o w s 中,相应的库函数在w m p c a p 中。如果用户还要使用对m y s q l 或者o r a c l e 的支持,那么在编译过程中还需要相应的库函 数支持。 s n o a 属于基于网络的入侵检测系统,在s n o r t 工作的状态下,它通过l i b p c a p 捕获所有 经过该主机的数据包,并对其进行分析。因此,s n o a 应当部署到网络的主干位置,以监听尽 量详尽的网络数据流。 i d m e f 标准格式应用于s n o r t 的研究与实现 2 2s n o r t 的体系结构 圈2 1i d s 的部署 f i g u r e 21d e p l o y m e n t o f l d s s n o r t 结构使用明确的模块化设计,这些模块通过插件的形式实现以方便s n o r t 的扩展。 例如预处理插件、输出插件等。s n o r t 的基本组成模块包含了以下几个部分: ( 1 ) 数据包嗅探器: ( 2 ) 预处理器: ( 3 ) 检测引擎; ( 4 ) 报警输出模块。州 在s n o r t 整个工作过程中,嗅探器是第一步,同时也是s n o r t 最基本的功能之一。获得数 据后,预处理器对数据进行规格化,同时可以发现一部分入侵信息。规格化的数据包下一步 被送入检测引擎,这里检测引擎调用报警规则库对数据包内容进行匹配,判断是否触发报警, 同时计入统计信息。如果系统调用了输出插件,这时数据进入输出模块,按照指定的方式存 储信息。 数据包 s n j 话r 预处理器检测引擎报警,日志 囤22s n o r t 体系结构 f i g u r e 2 2s n o r t a r c n t c c l u r e j 日志文件,i _ 兰竺i 恐 勺。 内蒙古大学硕士学位论文 2 2 1 数据包嗅探器 数据包的嗅探工作就像对电话的窃听一样,外界将不知道嗅探器的存在。执行嗅探的主 机将捕获所有经过该主机网卡的数据包。 网卡的默认工作模式是忽略所有m a c 地址不是自己的网络数据包,只接受目的m a c 地 址是自己的网络流量。为了实现对所有网络流量的捕获,需要将网卡设置为混杂模式 ( m i s c e l l a n e o u sm o d e ) ,以接受数据链路层的数据帧。因此,s n o r t 使用l i b p c a p 库,l i b p c a p 可以不考虑网卡驱动程序的不同,而接受所有数据链路层的数据流。- 在s n o r t 的主函数 s n o r t m a i n o 中间接调用p c a p _ l o o p ( p d ,p v p k t _ c n t ,( p c a p _ h a n d l e r ) p c a p p r o c e s s p a c k e t , n u l l ) 进 行捕包。 图2 3t c p i p 模型和s n o r t u l f i g u r e2 3s n o r ta n dt c p i pa r c h i t e c t u r e 需要注意的是,这里接收到的数据都是网络第二层数据链路层的数据帧。s n o r t 可以识别 不同的第二层数据类型,例如以太网、8 0 2 1 1 、令牌环等。为了方便以后的处理和检测工作, s n o r t 要对接收的原始二层数据进行分类解码,然后存储到相应的数据结构中。在p c a p _ l o o p 0 函数中,数据包处理函数使用p c a p p r o c e s s p a c k e t 0 ,在这个函数内部,根据对不同数据包的判 断将调用不同的包解码函数。 i d m e f 标准格式应用于s n o r t 的研究与实现 包解码的过程如图2 4 所示。 图2 4s n o r t 包解码结构嘲 f i g u r e2 4s t r u c t u r eo fs n o np r o t o c o ld e c o d em o d u l e 将数据分类整理后,下面将进入s n o r t 的预处理器。 2 2 2 预处理器 在函数p r e p r o c e s s ( p a c k e t 幸p ) 中,第一步就是进行数据包预处理,这里通过遍历预处理插 件函数链表实现。在整个预处理函数链表中,每一个函数都将实现不同的目标。预处理插件 是可扩展的,用户可以以插件的形式将自己的预处理函数加入到链表中。不过,一般用到的 预处理插件都要进行下面几项工作:包重组、协议解码、异常检查等。 包重组的工作主要由两个插件完成:s t r e a m 4 和魄2 。s t r e a m 4 的主要功能是进行t c p 状态维护和会话重组。众所周知,t c p 协议是一种面向连接的、可靠的、基于字节流的传输 层协议。t c p 的面向连接体现在主机双方在数据传送之前要进行三次握手,获得相应的序列 号之后才能进行数据传输。在传输结束后还要发送结束标志,以中断t c p 连接。然而,有些 恶意的攻击行为为了躲避一些无状态防火墙的阻截,在发送数据的时候并不严格遵守t c p 三 6 内蒙古大学硕士学位论文 次握手协议,从而实现端口扫面等目的。s t r e a m 4 预处理器的功能之一就是维护t c p 连接状 态,通过对t c p 状态的检测,来发现一些报警信息。s t r e a m 4 的另外一个功能是进行会话重 组。我们知道t e l n e t 协议是一个应用层协议,对于t e l n e t 环境下用户每一次敲击键盘事件,t e l n e t 都会将内容发送出去,这就导致在每一个t e l n e t 数据包里只有一个字符。这些字符单独并不 会引发报警,但是如果将这些字符连起来,有可能就是一个恶意操作行为,s t r e a m 4 的目的就 _? 在于将t e l n e t 数据包进行重组,以方便下一步操作,而不至于发生漏报。注意,这里的包重 组和分片重组是不同的。分片重组由f r a 9 2 预处理器实现。数据包的分片是因为数据在经过不 同类型网络时,网络对m t u 的大小要求不同而产生的。f r a 9 2 预处理器的目的是将原本是一 个包的分片进行重组,使得数据包内容完整。1 7 】 协议解码针对不同协议实现不同的目的。对于t e l n e t 协议,客户机和服务器的协商数据 是分散在普通负载内容中的,为了便于检测,协议解码预处理器要将协商数据从负载中去除, 使检测引擎匹配剩下的会话数据。对于h t t p 协议,预处理器要对u r l 进行规范化,将u n i c o d e 编码转化为a s c i i 编码,将u r l 中的“ 转换为“ 。对于远程过程调用r p c ,协议解码 器同样要完成r p c 分片的重组。 异常检查预处理插件可以实现对一些无法用匹配发现的攻击进行检测,例如端口扫描、 a i 诤欺骗等。 2 2 3 检测引擎 前面提到过,s n o r t 的工作是以规则库为基础的,规则库类似于杀毒软件的病毒库,里面 记录了各种类型的入侵特征。事实上,s n o r t 检测引擎的工作过程就是对规则库的解析并建立 数据结构的过程。在s n o r t 的主函数入口,在预处理之前就已经完成了对规则的解析和分析, 并建立了相应的数据结构,只等数据包的到来,然后进行检测。s n o r t 如何建立相应的数据结 构,以及规则的制定格式在后面详细介绍。 2 2 4 报警输出模块 s n o r t 的报警输出模块以插件的形式实现。用户可以按照需要定制自己的输出插件。s n o r t 支持到数据库的输出,例如m y s q l 、o r a c l e 等。还支持到日志文件的输出等。s n o r t 的输出 机制具有很强的灵活性,也是本文要利用的重点部分,后面将对输出机制进行详细介绍。 7 i d m e f 标准格式应用于s n o r t 的研究与实现 2 3s n o r t 的规则语法 2 3 。1s n o r t 的规则结构 一条典型的s n o r t 规则格式如下: a l e r tt o pa n ya n y 1 9 2 1 6 8 1 0 2 4111 ( c o n t e n t :”1 0 0 。0 18 6 - 5 1 ”;m s g :”m o u n t da c c e s s ”;) s n o r t 规则主要有两个部分组成:规则头和规则体。 2 3 1 1 规则头 规则头由五个部分组成:规则行为、协议、源信息、方向描述、目的信息。 规则头 1l 规则行为协议源信息方向描述目的信息 规则体 图2 5s n o r t 规则头阻1 f i g u r e2 5s n o r tr u l eh e a d 规则行为是指当该条规则匹配成功后,s n o r t 将采取的什么样的行为。s n o r t 规定了五种 可以执行的行为类型:a l e r t 、l o g 、p a s s 、d y n a m i c 、a c t i v a t e 。后来又增加了d r o p 、r e j e c t 、s d r o p 。 a l e r t 行为就是发出报警,按照规定的格式对数据包进行记录。 l o g 行为只对数据包进行记录,不发出报警。 p a s s 行为指忽略该数据包,继续下面的匹配工作。 d y n a m i c 行为使该数据包进入一种潜伏状态,直到a c t i v a t e 类型的规则将其触发后,执行 类似l o g 的行为对数据包记录。 a c t i v a t e 行为被触发后,首先进行报警,然后激活相应的d y n a m i c 行为。 规则头中的协议指该规则是针对哪种协议类型定制的,支持的协议有t c p 、u d p 、i c m p 和i p 。以后还将增加a r p 、i g r p 、g r e 、o s p f 、r i p 、i p x 等。 源信息和目的信息一般是指源主机和目的主机的i p 地址和端口号,也可以是用户定义的 一段地址等。如果源主机或目的主机只是单一的母地址,则直接写m 地址,但大多数情况 下源或目的可能是一个段,这时这个位置使用c i d r 地址,例如l o 2 0 0 1 6 表示了从l o 2 0 o 到1 0 2 2 5 5 2 5 5 的所有地址。这个位置还可以使用通配符“a n y ,这时指任意的i p 地址。 内蒙古大学硕士学位论文 方向描述是指数据是从哪个主机或m 段传向哪个i p 段。支持的方向描述只有两种:“ 和“ 。“ 是指方向为从左向右,“指双向方向。不支持“ ”代替。 在上面的例子中,a l e r tt c pa n ya n y 1 9 2 1 6 8 1 0 2 41 1 1 就是规则头。该规则指明了t c p 协议报警,方向是从任意地址的任意端口到1 9 2 1 6 8 1 x 段任意主机的1 1 l 端口。 2 3 1 2 规则体 规则体是该规则特征存放的位置,里面包含了各种选项信息,每个选项以“; 隔开。在 上面的例子中,括号中的信息就是规则体,( c o n t e n t :”i o o0 18 6a sj ”;m s g :”m o u n t da c c e s s t ;) 。每 个规则体中的规则选项的个数是不确定的。规则体是一条规则的核心部分。 2 3 2s n o r t 规则树 s n o r t 在处理规则文件的时候,为了方便以后对数据包内容进行匹配,采用了一种三维链 表结构。s n o r t 在匹配的时候对规则链表进行查找。s n o r t 使用的三维链表被称为规则树。 链表头 二量夏垂垂二 + 二亘丕三垂二 _ ( 二巫亘二) 叫 ! 垂 ( 困 规则树节点 ( r t n ) 选项树节 ( o t n ) 协议:t c p 源:a n y 源端口:a n y 目的:$ h o m en e t 目的端口:2 1 i f l o w :t o s a v e r , e s t a b l i f l 谢 c o n t e n t :”s a t ” 0 i 勰器尹 i 鼢位蜊蛳啾恕 l 删队8 8 砌6 叫” 协议:t c p 源:a n y 源端口:a n y 目的:$ h o m 匣n e t 目的端口:2 3 l n 【m :岭鬻r v e s 嘲) b g 捌 o a l t 嘶t ”i a 02 3 a 01 0a e 2 3 8 0 1 0 e e 2 3 b f e c 跎 0 5 e o d 6 9 0 2 5 e d ” i f l o w :t os w v e r x a a b l i s h e d c o n t c n t :”r l d ” c o n t e n t :”b i “s h ” i l 他咖删 c o n t e n t : t os ur o o t 协议:t c p 源:a n y 源端口:a n y 目的:$ h o m e _ n e t 目的端口:2 5 i 丑( 吨骘“骂俗同) l i 幽碱 n o s a x o n c o n t e n t :”r c p tt o l 3 a l ” d s i z e : 8 0 0 i i 撕删 l 硼缸6 咖孟f i j 3 国吻硝 图2 6s n o r t 规则树州 f i g u r e2 6r u l et r e eo fs n o r ts y s t e m 9 协议:t c p 源:a n y 源端口:a n y 目的:$ h o m 匣n e t 目的端口:8 0 l 丑0 w 幻$ n i 瓯鼯瞄 b 虫e d u r i c o n t e n t :”b i n p s ” f l a w :t og 孙陀r j 葛自h i 姗 c o n t e n t :”1 2 e2 e5 c2 c2 c i ” 位,1 r 扣n 瓯器同) i i ! 涮 u r i c o n t e n t : d c f o r u m c g i ;c o n t c n t :”f 研u m = 上”: i d m e f 标准格式应用于s n o r t 的研究与实现 s n o r t 在读取规则文件时,首先按照规则行为生成相应的链表头,就是图2 6 中的a c t i v a t i o n 到l o g 的链表头结构,这里构成5 个单独的规则链。然后第二步在每个规则链下,又有单独 的t c p 、u d p 、i p 和i c m p 各个类型的链表头结构,这里称为规则树节点( r 1 n ) 。r t n 就 是三维链表的第一维。在每个协议链表中是规则选项,构成选项树节点( o t n ) 。o t n 链表 就是三维链表的第二维。 当数据包到达s n o r t 检测引擎的时候,s n o r t 判断数据包的类型,按照下面的顺序导航: a c t i v a t i o n 、d y n a m i c 、a l e r t 、p a s s 和l o g 。然后根据协议类型,首先遍历r t n 节点,如果某一 节点匹配成功,则进行o t n 遍历,对每个o t n 节点的规则选项匹配。当某个o t n 节点匹 配成功后,这时进入三维链表的第三维,就是一个指向检测插件的指针。检测插件按照相应 的规则行为进行报警输出。然后对这一数据包的处理结束,进入下一个数据包的处理。 2 4s n o r t 的配置 s n o r t 是一个非常灵活的系统。灵活性体现在它拥有相当多的配置参数。图2 7 是s n o r t 执行时可用的参数表: l o 内蒙古大学硕士学位论文 n t e r f a e nd el o o k u pf o u n d : -一_ ) s n o r t ! ( 一 ,) 吲o n2 4 - o d 日c 一时s 阻一f i e 栈瓣_ i m 2 ( s u l i d2 8 ) 卧h r i i n 轴e s e h & t 甘s t e 蛐:h t t o :s n o r to 州t e 帅h t m i ( c ) c o 甜r j 曲t1 9 8 8 - 2 0 0 5s 叫r c d i mi 眦,e ta i 吣傩:孙o s 如f 叫i t 叫t 邮th sc h 喘酣i s i o n2 4 1 1 t h ed e f a u l tl o g g 吨出i s 哪蝌,啪一k 啦= - t oa c t i r a t e t h eo l d 如f t u i t1 0 f 1 9 i 俺d e s n i e :s n o o p t i s r t s 田v i 旺 i n g r _ u _ e - o o t l 司( f l l t e ro p t i o 嘴 or l ,s 田v i 旺i 晦t l l 跏t ,s 晴v i 旺刳叫 p t lo 嘴: 一孙t i e i 州e :f a s t f u i i ,c i o rm 呻抽i e f | i e & i t so n l y ) 一b l d p a c k e t o1 nt 印山印f o r m t ( * u c hf 8 e r ! ) 一c u s e 釉ie sf ie 一cp r i n t t 触y i 出- i t hc h t r 虻t e r 如t o n l y ( n o ) - d阢忡t h * i l c * t l o nl , y e t eo i 肆i a yt h e n di y e rh e d e ri n f o el o ie r r st ome li o ( f l m 2 l ,) 一ft u mo f ff f i u 幽( ) i i f t e rb i n r yl 洲i t e s f 曲o f 盹db 阡f i t fo f i | e ( b p f 一gq x l d l o i d 邮t i f i e r ( t om i q m i yde v e n t of o r 眦l t i p l eg m s ) 一h 讣n 椰n d 帕r k = ( f 0 一l ( i f )l i n 曲o ni r i t e h a ( 1 f j削di n t e d et o 日i e “刚t k “耐e m e c k o 呻帖如“i l ,n o i p m t c p ,n 岫忡呲) 一k o 由 l o g g i n g 帖d e ( p p 【d “州i t l , s c | | m 嘴) - i b gt od t o i d 一lh i l e l o gt ot h :t 印蜘f | | e n m )e x j t4 f t ii 憾 p a 酞“8 一nt u r no f fl o g g f r 瞎“i e n 【i i 旧r k ) 一o ”g ot h em et 髂t i n eo r 由rt of 慨i j e r r l l 口g 一0曲f u 札et h ei 嘴c 刮i pa d d r 一 口d i $ “i e 洲 出s n i f f i 憾 一p j 劬轴t 歌p | i c i t 删io f 阳咄e t ( d “t u i t :15 1 4 ) * qq u i e t 嘶ts h 洲b t n n e ra s t “阳 一r ( t f )r 自a da 州9 r o c e s st 印山忡f i i eq f r ( | 出i n c i 山e i d i l i n t f p idf 】1 一sl i e t o w “ s 如= v 拈t is f i i ev & r 】b 【ion 朗l m it 口v i 旧v tt e # t n dr e p o r t t h ec u r r e n t 翮o c f i 纠m t o n - u l h 仉cf o rt i l b s t t 肺8 一v妇v e 曲髓 一vw i r 一_ l i s t ;b v | i a te i n t e r f 一( 口i m 2o n i y ) 一【8 0 2 1 i _ o m t c 。n i r o if s xc 忡t r 帅a 如t 出t as t & l 腿“t wl | n k1 a 如r yi 帖l 叫rnt i 峙s t pl nt h eb je r ra 州i xf i 船 - zs 鞋t h e n n i t o t 脚rf 【j 0 障t h 州哺噼 zs e t b d e ,吼t c | 吣t 曲l l d 。副s 瞄i 瞄( f o rt c p ) 一舯t h i si n f o m i t i f l i t e r0 p t l b t d a r db ”o o t i m ;nt m ,j m d t o t e l i t od os e t h 【 | i o m f l i eo rd ir t o r y 、& 岫l r 屯一 圉27s n o r t 执行参数 f i g u r e 27s n o n e x e c u t i o n p a r a m e t e r s 除了图中显示的参数外,s n o r t 支持独立的配冠文件,默认的配置文件名为s d o r tc 0 以 i d m e f 标准格式应用于s n o r t 的研究与实现 s n o r t 使用这个配置文件的命令格式为:s n o r t - - - cs n o r t c o n f o 这个配置文件一般分为五个部分, 当然这种分类方法是人为的。在s n o r t c o n f 文件中,可以在行首加“撑 号注释掉一行。 2 4 1 设置网络环境变量 这是s n o r t 配置文件s n o r t c o n f 的第一部分。对于不同的网络环境,必须进行相应的变量 配置。这里一般需要配置的变量有各种地址( 段) 和一些端口号,口地址( 段) 包括: h o m en e t 当前主机所在网络 e x t e r n a ln e t 外网 d n ss e r v e r sd n s 服务器地址 s m t ps e r v e r ss m t p 服务器地址 h t t ps e r v e r sh t t p 服务器地址 s q l - s e r v e r ss q l 服务器地址 配置这些地址的格式为:v a rh o m en e t 。如果我们不想设定具体地址, 而是对所有地址均等同处理,则可将地址设为a n y : v a th o m e n e ta n y 设置端口号可以使s n o r t 在指定的端口对某种服务进行监控。例如,如果要设置h t t p 服务在8 0 8 0 端口,则可以这样设置: v a , rh t t 弋j o r t s8 0 81 在第一部分,还可以设置s n o r t 的规则目录。 v a tr u l e p a t h l r u l e s 这里也可以使用绝对路径。 这部分还包括对解码器的设置。例如,关闭解码时因为t c p 头部错误或协议格式本身错 误而引发的报警可以使用: c o n _ f i gd i s a b l e d e c o d e a l e r t s 对于实验阶段的t c p 选项停止报警: c o n f i gd i s a b l e _ t c p o p t _ e x p e r i m e n t a l _ a l e r t s 第一部分常用的设置就是这些
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年互联网+信息安全行业当前竞争格局与未来发展趋势分析报告
- 2025年集成电路封装行业当前市场规模及未来五到十年发展趋势报告
- 2025年福建省莆田市城厢区中考数学适应性模拟试题含解析
- 静脉输血与输液选择题及答案
- 2025年初级护师资格考试试题及答案
- 【2025年】黑龙江省大庆市中级会计职称经济法预测试题含答案
- 2025年手术室护理实践指南知识考核试题及答案
- 2025年湖南省张家界市公共基础知识国家公务员测试卷(含答案)
- 摩托车赛车安全知识培训课件
- 摩托车基础知识培训课件课程
- GB/T 3452.2-1987O形橡胶密封圈外观质量检验标准
- GB/T 1690-1992硫化橡胶耐液体试验方法
- 沙盘游戏治疗(2017)课件
- 叉车隐患排查情况记录表
- he及roma用于卵巢癌全程管理省肿瘤雷旦生
- 小儿呼吸机相关知识详解课件
- 维护手册v00-地铁3号线贯通道系统
- 心力衰竭心脏再同步(CRT)治疗课件
- 人防地下室墙体后开洞整改施工方案(防办)
- 现金流量表的编制培训课程(共93张)课件
- 慢性肾衰竭(慢性肾脏病)诊疗指南(内容清晰)
评论
0/150
提交评论