




已阅读5页,还剩80页未读, 继续免费阅读
(计算机应用技术专业论文)异构环境下的网络异常行为特征提取与监测分析.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
分类号 u d c 注l 异构环境下的网络异常行为特征提取与监测分析 ( 题名和副题名) 郭伟民 ( 作者姓名) 指导教师姓名李建平教授 电子科技大学成都 ( 职务、职称、学位、单位名称及地址) 申请专业学位级别硕士专业名称计算机应用技术 论文提交日期2 0 1 0 0 3 论文答辩日期2 0 1 0 0 6 学位授予单位和日期电子科技大学 答辩委员会主席 评阅人 2 0 1 0 年月日 注1 :注明国际十进分类法u d c 的类号。 ,。 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意。 签名:兰蟊啦日期:夕口加年石月i 日 论文使用授权 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:癣巫堑盈导师签名: 日期:盘口加 t 、 一 随着i n t e n l e t 高速发展 技术的不断进步与更新,攻击工具和手法的日趋复杂,攻击工具的使用却越 来越简单,现在的异常检测系统面临着巨大挑战。大家迫切需要一种有效的 方法来保护信息系统的安全。 网络异常监测是入侵检测领域的一个分支。网络异常监测是基于网络行 为的监测技术,是安装在受保护的系统上,监视系统的各种网络行为,在系 统的网络行为可能会影响到网络环境、系统资源占用率时,它会实时的向用 户告警,避免系统受到破坏。虽然异常监测系统有诸多优点,但其误报漏报 率高,操作繁琐,太过于专业化,大大阻碍了它的普及与实际运用,所以有 必要对它进行深一步的研究。 网络异常监测包括在监视和分析网络数据,提取数据的特征,发现和识 别网络中的异常,并给出适当的报警,以便采取进一步的防御手段,保证网 络正常运行。本文研究了在异构环境下异常监测方法,介绍了网络数据捕获、 数据持久化、数据抽样、异常行为特征提取、网络异常数据检测等关键技术。 本文对统计检测系统中检测方法,网络数据包捕获、数据存储方面做了改进, 提高了检测系统的可移植性、准确性,提高系统性能,减少误报漏报。 本文对网络异常监测中的几个关键技术进行了研究,并且详细描述了一 个网络异常监测系统在w i n d o w s 、i ,i n l 平台的设计,并且实现了一个原型系 统。 对于网络异常监测的关键技术,本文主要讨论了网络数据在异构平台的 捕获、分析、处理,并给出了在w i n d o w s 、l 访u x 平台下各个技术方案,并分 析比较了各技术之间的优劣。在异常规则库构建上,提出了自动更新规则库, 引入学习模式等来降低异常监测系统的误报率。最后本文详细描述了一个异 常监测系统在w i n d o w s 、l i n u x 平台的设计,包括总体设计,详细设计。 关键词:异常监测,网络安全,协议驱动,数据包 j a b s t r a c t a bs t r a c t 灿o n gw i m m er 印i dd c v e l o p m to fn 咖o r kt e c h n o l o g ) r 锄dm eu i l i v e r s a l a p p l i c a t i o no fn e t 、7 i ,o r k 锄_ v i r 0 衄1 e n t ,n l e a m o r e 锄dm o r ea t t a c l c s t 0o u r n e 附o f i 【s w i n lt l l ei i l l p r o v 锄e n to fn l ea t t a d kt e d m o l o g y ,m et 0 0 1 sa n dt a c t i c st u m m o r ec o m p l e xa n dd i v e r s e t h e r e f o r e ,i ti su r 鬻m tt 0h o w p r o t e c t i o no fc o m p m 盯 e l e c t r 0 i l i ci n f 0 埘t i o ns y s t 锄s a n o m a l ym o i l i t o r i i 培i s 觚i l n p o r t 锄tb r a n c ho fi i l 砸j s i o nd e t e 幽o n a n o m a l y i n o i l i t 0 血l gi sas e c i l r i 够t ec _ h n o l o g yt 0d e t o c ti i l 臼略i o nt 1 1 r o u g hm o l l i t o r i n gm e t a i g e ts y s t e mi nm 而m e ni si i 塔t a l l e do nt l l es y s t 锄i no r d e rt 0m o i l i t o rn c t w o r k b e h a o rt 0v o i ds 弘t e md 锄a g e a l t h o u 曲廿l e 他a m 锄ya d v a n t a g 鹤i n 锄o m a l y m 0 i l i t o r i n gs y s t 锄s ,i ti sh i i l d e 托db ys l o w 叩屺e d ,l o w 犹n l 栩屺y 觚dm i s s t a t 锄髓t n e 咐o r k 锄o m a l ym o i l i t o r i n gi i l c l u d 懿锄a 1 ) ,s i so fn e t 、o r kd a t 如懿仃a c to f d a t af e a t u r 懿,d e t e c t i o 衄o fn e t 、) i o r ka n o m a l i 馏ng i v 铭m e 粥p r i a t ea l 锄t 0 锄s u r es e c u r i t yo f 廿l en e t 、o 出t h ep a p e ri n t r o d u c c dc a p t u o fn e t w o r k d a t 如d a t a p e 鹤i s t 铋c e ,d a t as 锄叩l i n 吕a b n o 姗a lb e h 撕0 r 佬a t u 】他甑仃a c t i o n 内rh e t e r o g 璐 e 嘶r 0 衄e n t t h ep a p e ri i i :i p r 0 v e dp 耐a b i l i 吼a o c u r a c y 锄dp e r f - 0 册孤 s 刳r e r a lt e c h o l o 舀嚣o f n e t 、0 r k 锄o m a l ym o i l i t o 血l gw e 代r e a r c h e di l l l e p a p 既i tg a v ead e t a i l e dd e s 丽p t i o fan 咖。出锄o m a l ym o i l i t o r i n gs y s t e mi n w i i l d o w s 锄d “l m l ) 【p l a t f o n n ap r o t o t y p es y s t e mw 弱i n l p l e m e n t e d 1 1 1 e r ea r es e v e r a lk e yt e “q u 髓o fn 咖o r k 锄o m a l ym o i l i t 0 血g 1 1 1 ep a p 盯 d i s c u s s c dh o wt 0c a p t u 】旧锄d 锄a l l ) ,z en e 咖r kd a t af 0 rh 酏e r o g 饥e 0 啪p l a t f o n n t h ep a p c rc o m p a r e dt e “c a ls c h e m e so f 锄o m a l ym o n i t 0 血g af e 栅eb 嬲ew 勰 酬a b l i s h e d 1 1 1 ef e a h 鹏b 嬲ei s u p d a t c da u t o m a t i c a l l y l e 锄i n gm o d e l w 嬲 枷d u c e dt 0r e d u c et l l e 僦s en e g a t i v ei n 锄o m a l y m o i l i t o r i n gs y s t 黜f i i l a l l m l e p 印e rd e s 丽b e do v e r a l ld e s i 印趾dd e t a i l e dd e s i 印o f 孤o m a l ym o i l i t o 血gs y s t e m f o rw i n d o w s 锄d “m p l a t f o r mi i ld e t a i l k e yw o r d s :锄0 m “ym o n i t o r i n g , n e 伽o r ks e 训t y ,p r o t o c 0 l “v e r , d a t a n 第一章引言 1 1选题背景 1 2 研究目的和意义。 1 3国内外研究现状 1 3 1 产品现状 1 3 2 研究方向现状3 1 4论文主要工作。4 1 5 论文内容组织4 第二章网络异常行为监测概述。6 2 1网络异常监测的基本概念6 2 2 相关技术理论概述。6 2 2 1i i n u x 系统有关理论6 2 2 2w i n d o w s 系统有关理论1 0 2 2 3 网络异常行为有关理论。l6 2 2 4 网络异常监测有关理论1 9 2 3 本章小结2 1 第三章网络异常监测相关技术研究2 2 3 1网络数据捕获方法研究。2 2 3 1 1w i n d o w s 下数据捕获的方法2 2 3 1 2l i i n l ) 【下数据捕获的方法。2 4 3 2数据抽样的研究2 7 3 3 数据存储的研究2 9 3 4特征分析与异常检测的研究。3 1 3 4 1 异常检测方法的研究3 1 3 4 2 误用监测方法的研究3 6 3 5 本章小结3 7 第四章网络异常监测系统的设计与实现3 8 4 1总体设计3 8 l u 目录 4 1 1 总体目标3 8 4 1 2 总体结构3 8 4 2详细设计与实现3 9 4 2 1 数据捕获的设计与实现3 9 4 2 2 数据持久化的设计与实现5 0 4 2 3 数据分析的设计与实现5 1 4 2 4 基于统计分析异常检测的设计与实现5 6 4 2 5 异常告警的设计与实现6 0 4 3实验与测试6 0 4 4 本章小结6 6 第五章结论6 7 至定谢6 8 参考文献6 9 攻硕期间取得的研究成果。7 3 1 1 选题背景 随着计算机网 类越来越多,网络 的资源共享平台, 社会不可缺少的基础设施。我们正在经历从网页时代到网游时代再到网商时 代的变革。用户对网络性能和安全性的要求在不断提高,操作系统环境不断 增多,如何对网络进行更有效的管理成为必须解决的问题。网络的快速发展 方便了我们,但也使得各种新的危机不断出现。安全漏洞的修补跟不上漏洞 被攻击的速度,病毒大量流行,网络攻击的方法越来越多,网络攻击软件很 容易在网络上下载并且使用也非常简单,攻击者的专业门槛也越来越低,这 给网络管理提出了严峻的挑战,网络安全领域成为一个研究热点。 网络入侵事件时时发生,仅仅在2 0 0 9 年,有7 5 的企业曾遭受过网络攻 击。这些损失意味着花费企业9 2 的时间成本。然而,网络安全问题在我国 还没有得到普遍和充分的重视。国内计算机网络系统还普遍存在着很大安全 隐患,对入侵检测和防范的能力较弱,入侵的详细信息和入侵证据收集方法 少比较少。互联网信息安全已经成为各种网络应用能否正常实施的基础。 1 2 研究目的和意义 网络出现异常的情况是多种多样的,例如硬件设备故障,网络负载太重, p 2 p 应用的毫无限制的使用,非正常网络扫描,蠕虫病毒,网络蓄意攻击,广 播风暴等等。当网络发生异常情况时,很可能出现大量有用或者无用的异常 信息,对于网络管理者很难进行有效地管理。 更由于在不同的操作系统平台、不同的网络协议下存在多种多样的网络 异常。如果没有一个好的异构网络异常检测和分析工具,那就更难找出原因 了。即使可以找出原因,也可能因为网络信息获取不足或者获取虚假信息, 不利于发现网络异常的原因。 电子科技大学硕士学位论文 此外,网络攻击的技术方法也越来越先进,例如为了对抗已有的d d o s 攻击检测技术,d d o s 攻击所使用的攻击方式也出现了新的特点,如采用反 射式d d o s 攻击等。网络入侵技术的大发展给网络异常监测和分析带来了极 大的麻烦。 现阶段的网络安全工具,如入侵主动防御系统、杀毒软件、防火墙有各 自的缺陷,比如,防火墙对内部的网络攻击没有免疫力,不能灵活的控制网 络数据流信息,简单的阀值设置不能很好的控制网络,当发生大量网络异常 时产生的海量告警信息无法分析,数据的挖掘分析工作只是提供简单的图表。 没有对获取的数据进行进一步挖掘,得不到更多有用的关键信息。往往这些 工具只是给特定的应用程序服务,因为这些工具产生的原因就是为了某些应 用服务,所以很可能不对整个计算机网络进行监测和分析。在异构环境下, 网络异常的检测和分析工具更加缺乏,难度也更高。 所以有必要对异构环境下网络异常行为的检测和分析进行进一步的研 究。 1 3 国内外研究现状 1 3 1 产品现状 如果只用人的经验来了解网络出现的状况那基本上是不可能的,因为这 是不可靠的,并且不具备可复制性。所以用网络安全相关软件来解决这个问 题是唯一可行的方法。 当前类似产品的数量数不胜数,其中比较有名的解决方案有m u i l d w o r k m o n i t o r 、h ) ,p 耐ch qe n t 唧r i s e 、o p 神州s 、o p 饥q i 洲、n e t 唧、o p 饥e w 等。这些网络安全软件的功能往往非常强大和全面,例如绘制局域网网络拓 扑图、识别网络设备活动状态、设置预警阀值并产生报警等基本的网络管理 功能。有的网络软件还有远程调试功能,限制某些指定服务功能,收集管理 信息库数据并用管理数据库中的数据进行图表分析。虽然这些软件功能非常 强大和全面,但是他们的设计的主要目的是为了解决网络普通管理工作,大 多数没有针对网络异常行为进行监测和分析的,不能在网络环境出现异常时 给用户提供告警以及异常信息,有的有这些功能,但是功能往往比较弱。例 如通过设定简单的参数不能很好的控制整个网络,当网络发生大量异常时大 2 量的告警信息对用户毫无 的图表展示,没有进行更 常信息。此外,这些专业 和单位无法承担,又有大量功能可能用不上,使用也比较复杂,有的软件对 异构环境支持也比较差。 从以上分析我们可以看到,当前网络安全产品中存在着一定的不足,这 使得网络出现异常时,用户对网络异常情况的现状以及异常原因无法判断, 往往只凭着经验做出判断,这种判断往往不可靠,而且需要耗费大量的时间, 不能高效的解决问题,给日常工作会带来较大的损失。本文所研究的网络监 测系统正是针对这样的不足提出的,希望通过相关技术的研究,通过对网络 进行监测,能够识别网络上的异常行为,为网络管理员的管理提供帮助,并 降低软件和管理成本。 1 3 2 研究方向现状 当前的异常网络监测研究方向,一个方向是对网络规律进行研究,建立 正常情况下的网络行为模型和规则,当网络行为不在正常行为规则和模式下 时,再根据数学模型和算法确定是否为异常行为。 另一种方法是通过对协议进行分析,由于每种协议都有确定的标准。通 过对每个具体协议和网络监测所关心的参数进行分析,确定网络中的具有代 表性的特征参数,利用这些确定下来的特征参数监测网络行为,如果这些参 数不在协议的标准一定范围则认为异常,如果这些参数的值不在协议标准的 范围内,则也可被认为是出现了异常。 在监测系统的架构设计上,a g t 【l 】的设计思想用到了网络异常检测中。 a g 锄t 的定义是:是能够自适应环境,并能在在工作环境中持续不断的运行的 单个服务实例。a 蹦l t 能够自适应的去适应外界的环境。各个a g 朋t 之间可以 相互通信,也可以独立工作,还可以各自移动位置,它是计算机终端上独立 监测网络异常行为的单独实例。系统的架构一般采用分层的架构,单个的 a g e n t 一般不处理数据而只是根据需要采集数据,并将采集到的数据发送到传 输器中。然后传输器接受到各个a g e n t 发送过来的数据,它将数据进行汇总 和归档,然后并处理数据,根据提供的规则去检测网络中是否有异常,如果 有报警,则需要给用户告警。 电子科技大学硕士学位论文 在网络异常的分析检测方面,异常检测有许多方法,比如有统计法、神 经网络方法、小波方法、泛形编程是等,其中某些方法是已经实现的方法。 神经网络的方法【2 】常常被用于异常检测,神经网络方法的一个优势是他能 够自动对得到的数据进行组织和分类。神经网络方法需要尽可能用适当数据 去训练它的神经网络,并且对于网络异常行为的异常原因神经网络一般无法 分析出来。 用于异常检测的“人工智能方法是泛型算法。这种方法在现实产品中 得比较少。 大多数异常检测算法都有一定的学习能力,能够学习正常网络中的行为, 并具有一定识别正常网络行为的能力。异常检测算法一般需要建立正常行为 规则库,如果发现网络行为与正常行为规则库有偏离,就发被认为发生了异 常。 数据挖掘方法是一种新兴的方法,主要是在对数据库方面学习的应用, 数据挖掘技术在很多领域都得到了研究和应用,比如实验室研究、网络搜索 应用等领域。目前也有一部分研究机构将数据挖掘技术应用于异常检测中, 但是数据挖掘技术在异常检测方面并不成熟。 1 4 论文主要工作 本文试图通过对异构环境下的网络异常监测中的几个关键技术及其改进 的可能方案的讨论,以提高异常监测的实际使用效率。 本文的研究工作是: 讨论了网络数据捕获、异常行为特征提取、异常数据分析的几个关键技 术,着重讨论了其在w i i l d o w s 、i 汹】x 平台下的技术方案。并且提出了一些改 进的新方案,克服现有网络监测的缺陷。 重点描述了一个网络异常监测系统在w i n d o w s 、i j n u x 平台的设计与实现 细节。 1 5 论文内容组织 本文共分为五章。 第一章引言本章主要描述了网络异常监测的背景、意义以及国内外现 4 第一章引言 状。 第二章网络异常行为监测概述本章主要介绍了网络异常监测的基本概 念和相关技术理论的概述。 第三章网络异常监测相关技术研究本章主要研究了异常监测的关键技 术,包括网络数据捕获、特征提取、异常分析等,并比较了各个方案的优劣 以及提出一些改进方案。 第四章网络异常监测系统的设计与实现本章详细描述了一个网络异常 监测系统在w i n d o w s 、l i n l l ) 【平台的设计与实现。主要由系统总体设计、详细 设计与实现、实验分析三部分组成。 第五章结论对本文的主要研究工作进行了总结,同时描述了本异常监 测系统今后需要进一步完善和研究的地方。 5 电子科技大学硕士学位论文 第二章网络异常行为监测概述 2 1 网络异常监测的基本概念 异构环境下的网络异常监测,顾名思义,就是在多种操作系统环境下, 如w i n d o w s 、l i n u x 等操作系统,对网络异常行为的发觉和分析,并对异常的 网络行为进行特征的提取,捕获本地计算机网络数据包进行分析,从中发现 网络中是否有非网络正常的行为和被攻击的迹象。 从整体上讲,异常监测系统的功能主要有: ( 1 ) 对计算机的网络数据包进行数据包捕获。 ( 2 ) 分析正常的网络行为,建立正常网络行为模型。 ( 3 ) 对捕获到的数据包进行分析,判定是否为异常行为。 ( 4 ) 对非正常的网络行为进行特征提取,并建立异常行为特征库,统计网 络异常的模式。 ( 5 ) 在发生网络异常行为时,能够向用户告警。 对于一个相对优秀的网络监测系统来讲,不仅可以让用户得知当前的网 络安全状况,还能帮助用户设定网络安全策略。对于使用者而言,最关键的 是异常监测系统应该方便管理,使用简单,使得非专业人员非常容易的进行 管理。异常监测系统还应该能够根据需求的改变而改变。异常监测系统在发 现异常行为后,应该及时做出响应,以某种定义好的方式通知用户。 2 2 相关技术理论概述 2 2 1l n u x 系统有关理论 本节将从整体上介绍l i n u x 的体系结构和一些思想。 l 血内核架构主要由五个子系统组成:进程管理子系统,内存管理子系 统,虚拟文件子系统,网络子系统,p c 子系统。结构图如图2 一l 所示。 6 第二章网络异常行为监测概述 曰围曰日 口口曰目曰 图2 1l i 眦系统结构图 1 进程管理子系统:主要负责管理c p u 的时间片分配。由于一个系统应 用中,由很多线程同时在运行,所以由进程管理子系统负责每个线程或者线 程的时间片分配,每个线程或者进程都有一定的时间的c p u 资源。如果一个 进程或者线程仅仅是在等待c p u 资源,那么线程处于就绪状态。如果某个线 程在等待其它非c p u 资源( 比如互斥变量、信号灯等) ,则该线程就处于等待 状态,等待其他线程释放所需要的资源。 2 内存管理子系统【3 】:建立一种多个进程可以互相通信的共享内存机制, 并支持虚拟内存机制。l i i 嗽操作系统的内存管理机制支持虚拟内存机制,所 谓虚拟内存机制指的是,运行在l i i 嗽里的程序,它的静态存储空间、堆空间、 栈空间所总共占用的内存大小可以超过实际物理内存的大小,l i n u x 操作系统 把需要的数据以及访问比较频繁的数据放在物理内存里,而把暂时不需要的 数据存放在磁盘的交换空间上。当一个应用程序需要的数据不在物理内存中 时,就发生缺页中断,让操作系统把磁盘交换内存中的数据交换到物理内存 中,操作系统就是提供这样一种功能。内存管理从逻辑上分为硬件逻辑部分 和硬件实现两个部分。 7 电子科技大学硕士学位论文 3 虚拟文件子系统:由于操作系统面对底层的硬件设备种类繁多,所有要 有可移植性最好的做法是在操作系统提供一个面向硬件设备的物理抽象层, 而向上提供一个逻辑抽象层,这样操作系统隐藏了物理设备的复杂性,并为 上层的应用提供了一个统一的接口,它把操作系统所支持的设备向上都抽象 成文件。i j n _ u ) 【可以支持多种文件系统格式,如e x t 2 ,e x t 3 等等。虚拟文件子系 统可以划分成两个部分,一个部分是逻辑文件系统,另一个部分是设备驱动 部分,设备驱动部分就是提供了设备的实现封装,向上隐藏了它的实现。 4 网络子系统:网络子系统的主要是两个部分,第一个部分是对现有协议 的实现,由于协议已经有标准,但是没有实现,l i n u x 操作系统会对现有的协 议进行实现。第二个部分是对物理设备的实现,实现物理设备的驱动。网络 协议部分负责实现现有流行的标准网络协议并加以完善。网络设备驱动程序 负责实现对网络硬件设备的驱动,对上层的应用隐藏复杂的设备编码过程, 负责实现硬件层与逻辑层的沟通。 5 口c 子系统:由于在系统应用中,进程间通信是必不可少的,进程间通 信有很多方式如s o c k e t 、信号量、共享内存等等,所以必须有一个系统能够实 现这些通信,p c 子系统就负责实现进程间通信。 由于需要对网络方面进行研究,所以在网络方面进行更深入的研究。 图2 2 是我研究的l i n u x 网络结构示意图。 图2 2 l i n l l ) 【网络结构图 从上图可以看出l i l 姒网络体系架构由以下五个部分组成1 ) 系统调用接 第二章网络异常行为监测概述 口2 ) 协议无关接口3 ) 网络协议4 ) 设备无关接口5 ) 设备驱动程序。下面 分别简述五个部分: 1 ) 设备驱动程序: 在网络协议栈的最下层是设备驱动程序,它是负责管理具体网络物理设 备的设备驱动程序,负责如加载、卸载、启用设备、让网络设备正常工作等 方面的工作。比如串口使用的s l i p 【4 】驱动程序以及以太网设备使用的以太网 驱动程序都是这一层的设备。 2 ) 设备无关接口: 设备无关接口出现的原因是为了隔离设备驱动层和网络协议层,设备驱 动层的需求和代码变更不会影响到上层的网络协议层代码,设备无关接口层 是由n e td 嘶c e 驱动协议去实现的。物理设备同上层网络协议层之间的通信 都不会直接通信,而是通过设备无关接口驱动层进行转发,它相当于硬件驱 动层h a l 。设备无关接口将现有的各种网际协议同现有的各种网络物理设备 连接起来,并将他们进行分层隔离。设备无关接口层提供给设备驱动层一个 函数族,设备驱动层用这个提供好了的函数族进行开发设备驱动程序,如此 而来,设备驱动程序可以用通用的方法访问上层的网络协议层而不用担心具 体的物理设备间的区别。设备无关接口的访问过程是,首先,物理设备驱动 程序需要在i j n 似操作系统内存进行注册,函数调用者传递一个n e td e v i c c 结 构进行注册。内核接受到这个注册信息后,会调用在内核里初始化函数进行 适当的初始化,然后将进行一系列的检查,检查通过后将在系统内核中创建 一条记录,并将注册的设备添加到已经存在的设备驱动链表中。可以通过内 核函数从协议栈向设备驱动发送数据,反之亦然。 3 ) 网络协议:实现了各种存在的网络协议,如u i 血d o m a i l ls o c k e t s 、p o s l 0 c a l 、m 、i p x 等。 4 ) 协议无关接口: 协议无关接口是在系统调用接口之下,为了保证更好的可扩充性,需要 提供一个跟协议完全没有关系的接口,这个接口只是关心逻辑上的东西,而 不用去关心具体某个协议,通过对协议的抽象,可以让上层的应用和下层的 结构完全隔离开来,互相修改都不会引起问题。 5 ) 系统调用接口: 系统调用接口是操作系统对用户提供一个窗户,用户不必关心系统内部 是如何去实现网络功能的,它只用关心操作系统这个代理给他提供的方法, 9 电子科技大学硕士学位论文 既是操作系统的a p i ,根据a p i 的语义和参数规则,就可以使用操作系统开 放给用户的功能。 2 2 2w i n d o w s 系统有关理论 由于重点是网络方面,所以下面将重点介绍我对网络方面的理论研究。 w i n d o w s 中有两个重要编程规范是1 d i 和n d i s 。 t d i ,即是t r 趾s p o r td r i v e ri n t e m c e 的简称,可以称为传输驱动程序接口。 应用程序在使用操作系统提供的网络a p i 进行网络编程时,可能会使用很多 不同的网络协议,如果每使用一个协议,所使用的a p i 接口都不相同,那么 整个a p i 接口将会变得非常庞大,并且不利于开发。为了避免这个问题,最 好的方法就是进行面向对象的抽象,尽量的加入抽象层,便于扩展,w i n d o w s 操作系统在处理这个问题的时候,它在a p i 驱动程序和具体协议的驱动程序 之间添加了一层抽象层,这个抽象层就是t d i 层。t d i 层负责将接受到的网 络数据通过特定的标准化,形成w i n d o w s 里面的一种协议包冲。通过构造 i r p 包,任何不同的网络协议包都可以转换成统一的数据格式,而不必担心协 议增加后影响原有的设计。当用户进行网络通信软件开发时,最重要的就是 要遵循t d i 的协议标准,在t d i 上层的用户用t d i 提供的接口进行功能扩展, 而t d i 下层的用户根据t d i 的标准进行开发各种网络协议,他们都可以独立 进行修改,只要他们都遵循t d i 的标准即可,极大的方便了分层修改和开发。 对于t d i 上层的网络应用它不必去了解所使用的驱动程序,而是直接使 用t d i 提供的接口,上层的应用可以通过这个抽象的接口进行快速的开发。 对于下层协议驱动程序而言,它也不需要预知上层的需求,不用关心上 层网络应用想要的规范。它唯一要做的就是做好需要的传输协议实现,然后 当发生数据交换时,用统一的t d i 抽象接口进行调用。整个结构图如图2 3 所示。 1 0 第二章网络异常行为监测概述 图2 - 3w 砌o 、船网络结构图 n d i s 【5 1 ,也称为网络驱动程序接口规范,是n 的阳收d r i v 盯h n 柏c e s p 鲥f i c a 廿o n 的简称,在w 蚀d o w 3 大多操作系统中n d i s s y s 文件它的实现文 件,在系统启动的时候会加载这个文件。由于网络适配器厂商众多,并且网 络适配器型号繁多,如果想一个协议驱动程序的开发者能够完全理解所有的 网适配器的原理和参数,那将是毫无意义和耗费时间的。所以n d i s 规范就诞 生了,它提出一个规范,让协议驱动程序可以同网络适配器进行通信,而不 用管网络适配器是由谁生产的,它的原理和电路图是什么。一般来讲,只要 开发的网络适配器驱动程序所遵循的规范是符合n d i s 规范的,那么这样的适 配器驱动程序也被称为是n d i s 微端口驱动程序,全称是n d i sm m p o r t “v 盯。 n d i s 结构图如图2 - 4 所示。 电子科技大学硕士学位论文 图2 4n d i s 结构图 n d i s 和t d i 出发点都是一样的,实现的功能也比较类似,他们都是将下 层可能存在的复杂调用过程进行简单化和规范化,它给出一个标准的接口, 让上层和下层的应用都可以简单的开发,他们的最终目的都是w i n d o w s 操作 系统的灵活性和可扩展性。对于下层开发而言,网络适配器制造商能够比较 简单的开发自己的设备驱动程序,也就是n d i sn l i i l i p o nd r i v e r 。这些微端口驱 动它直接利用n d i s 提供的接口进行数据和指令的操作,对于需要转发给上层 的数据直接用n d i s 提供的接口向上发送即可。在n d i s 上层开发的应用,它 与协议驱动之间的通信变成了间接通信,即原来直接与微端口驱动程序通信 改成了与n d i s 接口通信,当上层的应用需要与下层打交道时,它都只需要求 助n d i s 即可。 n d i s 和t d i 这两个网络接口规范的出现,大大增强了w i n d o w s 系统的 灵活性和扩展性,降低了网络设备商开发网络设备驱动程序难度,也降低了 应用软件开发人员开发网络应用程序的难度,使得开发设备驱动和使用设备 驱动的用户能够尽可能的不相互影响。 设备驱动开发人员开发微端口驱动程序时,就可以直接用n d i s 中抽象出 来的接口函数,同时这些开发人员不需要考虑多线程安全的问题,因为n d i s 库本身会在这方面考虑,n d i s 会对网络的渖请求进行排队处理。这个特点 可以认为是n d i s 的优点,但同时在多处理器器上也可能是一种缺陷。因为这 种乐观的同步关系会让多处理器的优势发挥不出来,所以n d i s 提供了悲观锁 的选项。 所谓悲观锁的选项就是指是否序列化以及如何进行序列化由开发人员决 定,而非n d i s 库进行决定。序列化中的各个过程如排队、并发请求的同步等 等任务由开发人员自己来完成,而前面所描述的乐观方法由n d l s 库自己实 1 2 第二章网络异常行为监测概述 现。如此而来,优点是在多处理器的机器上,多核的优势能够尽可能的发挥 出来,但是缺点就是给开发者造成了一定的麻烦。如果仅仅从性能这个角度 来看待这个问题,由开发人员进行序列化的效率比n d i s 库自身可能会快一倍 多,所以在n d i s 后来的库基本上都采用非序列化的方式。 图2 5 是我研究的而n d o w s 网络架构图 n c t w o r i c 印p i i c m i 伽 t d i c i i c f 他 圈圜 圈国国 r = 忑= = f _ 丽硼茂丽可1 l :! ! 竺竺- :圈臣娑;j 已。篓邑il :。:二:z 盘b :竺! 竖! ! ! ! 苎:jt :。竺坚! ! 竺:l 圉围圜圆圈 园圈圈 图2 5 w 缸d 0 粥网络结构图 1 网络应用程序层,这个层是处于操作系统用户态的层次。网络应用程序 根据操作系统提供的功能以及开发的接口,根据业务需求,开发相应的网络 服务。网络应用程序要实现它的网络部分功能,必须要使用操作系统提供的 网络接口,这些接口很多,比如下面: a ) s o c k e t 套接字 b ) i 冲c c ) 共享内存等 叁 一 电子科技大学硕士学位论文 d ) 对i e 组建的调用 曲有名管道、无名管道 在这些应用程序接口的操作系统实现中,有的实现在用户态中实现的, 也有些实现是在内核态中实现的。 2 t d ic l i e n t 【6 】,他是传输协议层的使用者,它是内核态的驱动程序,它被 用来实现内核态中网络部分。它将应用层的a p i 调用请求通过t d i 编码后转 换成冲,转换完成后,它将u 包法给下层的网络协议驱动,也就是t d i 传输器。从图2 6 看到,t d ic l i e n t 的系统实现中既包含有用户态的实现也包 含内核态的实现。而a f d 层即是辅助功能驱动程序,它向协议驱动程序发送 t d ii r p 消息来执行网络套接字操作,比如发送和接受消息。a f d 层不会自 己选择某一个具体的网络协议进行操作,而是需要上层协议告诉它使用哪一 个具体的网络协议,然后a f d 层才去打开相应的协议设备对象,进行后续的 操作。 i u s c f a p p t 酬 i r 一m - j 图2 6 c k e t s 即眦l a t o r 结构图 3 t d i ,就是传输协议提供器,它的全名是t 唧r tp r 0 v i d e r s 。所谓的 t d i 传输器、n d i s 协议驱动程序,这些东西实际上所指的都是同一个东西, 它就是协议驱动程序。这个层的作用就是对现在存在的网络协议标准提供实 现部分。在w i n d o w s 操作系统目录中t c p i p s y s 文件是这个层次的实现,它实 1 4 第二章网络异常行为监测概述 现了多个协议,如i p 、t c p 、u d p 、a 卟i c m p 、i 粤n p ,它为上层的t d ic l i e n t 提供了若干个可以操作的网络设备对象,这些设备对象可以让上层的协议对 具体的网络协议提供可操作的旬柄,当需要操作这些对象时,t d ic l i e n t 打开 某个需要的设备对象,并向制定的设备对象发送定义好的时包。我们可以 通过d d k 的d e v i c 池【7 】应用程序得到这些设备对象 1 ) r 删p 2 ) i p 3 ) 口m u l t i c a s t 4 ) t c p 5 ) u d p 另外,如果协议驱动程序需要处理数据,当它想进行获取数据操作的时 候,协议驱动程序不是通过发送心请求进行获取请求的,而是通过n d i s 抽象出来接口进行请求。 协议驱动程序除了上面所描述的功能外,还有一个功能就是,能够捕获 流经网络堆栈的数据包。用户可以遵循n d i s 协议的标准,开发一个n d i s 驱 动程序,来进行监听捕获到的数据。虽然可以捕获到流进流出的数据,但是 它并不可以拦截和修改网络数据包,它存在着一定的局限性,因为用户可以 直接通过n d i s 提供的a p i 直接获取数据,而协议驱动程序是在它的上层, 所以它对网络数据的拦截或者修改,不一定能够起作用。利用这个协议驱动 捕获数据一个典型的应用就是w 咖。 4 n d i s ,n e 晰o r kd r i v 盱瑚赁f i 啪s p e c i f i c a t i o n ,网络协议接口标准。从 图中我们可以看到包裹在其中的两个驱动程序,一个是中间层驱动程序,另 外一个是微端口端口驱动程序。下面简单介绍这两个驱动程序: 1 ) n d i si n t e n i l e d i a t e “引,或者称为n d i s 中间层驱动。它又相当于一 个抽象层,对于上层的协议驱动而言,它可以被当成微端口驱动。对于下面 的微端口驱动,它可以被当成协议驱动。简而言之,中间层驱动存在的目的 就是为了隔离协议层驱动和微端口驱动,使之都不依赖于对方。在进行编程 时,在驱动程序入口中处就要注册两个设备对象实例,如果需要得到数据包 就用n d i s 的接口从微端口处获取数据,发送数据时也要用n d i s 的接口向上 层发送数据包。总结起来,中间层驱动的最大长处是任何数据包的流动都要 经过中间层,比如所有微端口驱动想上传的数据包都要通过中间层,而协议 层发往微端口驱动所有数据都要经过中间层。所以很多网络防火墙具体技术 电子科技大学硕士学位论文 方面往往是采用中间层驱动,而且现在主流的杀毒软件在网络数据捕获方面 都是采用中间层驱动的方式。 2 ) n d i sm i i l i p 0 i n 血v e r ,也被称为微端口驱动程序。它的作用往往是提供 对网络适配器的驱动,以便网络适配器正常工作,比如各种各样的网卡驱动, 而微端口驱动的开发和提供者一般是网络适配器的生产商。 5 总线,计算机的总线是计算机数据传输的纽带,是关于计算机计算能力 一个重要衡量方面。把计算机总线按照功能划分,它可以被分为:虚拟总线、 i s a 总线、系统总线、p c i 总线等。在计算机硬件系统中,一般总主线是用 p c i 总线,其他的各个总线可以被当成是总主线的一个设备,同一般设备一样。 2 2 3 网络异常行为有关理论 网络异常行为是指对网络正常使用造成不良影响的一些行为模式。网络 异常导致的后果可能影响小,如网络性能不好、网络带宽占用较高,后果比 较严重的如网络十分拥挤、网络设备利用率全部占完,更有甚者可能导致网 络完全瘫痪,无法给用户提供服务等。而造成网络异常的原因是多种多样的: 如大量的网络扫描、d d o s 攻击、网络蠕虫、恶意软件、滥用网络资源( 如恶 意p 2 p 下载1 、物理设备出现问题、网络配置改变等等,下面主要是对网络软 件部分的异常进行研究。 1 ) 恶意的网络扫描 网络扫描是很常见并容易实现的,一般在黑客准备进行网络攻击的时候, 他都要进行一些网络扫描,扫描的目标主要是寻找目标机器的系统漏洞、软 件漏洞和已经开放的端口。网络扫描的方式是多种多样的,它可能会对当前 流行和已知的安全漏洞做逐个扫描,也可能为了攻击整个局域网络而对整个 局域网络进行逐一扫描,也可能攻击目标只是一台主机,所以只对一台主机 的各个安全漏洞进行扫描。通常扫描的结果是向攻击者提供一个扫描的报告, 提供攻击目标的机器信息、已经存在的安全漏洞和可以采取攻击方法等。 扫描的目的一般可以分为以下四个种类: ( 1 ) 检查主机是否在网络上,是否可以自由访问。 ( 2 ) 检查主机对外界开放了哪些端口。 ( 3 ) 检查主机的操作系统信息和对外界开放的服务种类。 ( 4 ) 检查操作系统或者服务是否存在已知的安全隐患。 1 6 第二章网络异常行为监测概述 常见扫描类型一般可以分为t c p 扫描,u d p 扫描,i c m p 扫描等。 这种扫描的特点是一般都人为有认知的进行,并且扫描的时间一般比较 短,而且目标机器接受的数据一般比较多,对于数据包而言,数据包的大小 一般比较固定而且比较小。随着攻击技术的不断进步,扫描方法也越来越智 能化和隐蔽,很难被防火墙察觉,最简单的方法如改变扫描次序,将扫描的 端口和地址打乱,降低扫描的时间间隔使得看上去属于正常行为,假冒源地 址,以及分布式扫描等等。这些特点使得扫描很难被发觉出来。 2 ) 拒绝服务攻击( d o s ) 和分布式拒绝服务攻击d d o s d o s 的攻击种类很多,流行的如s y nf l o o d 【1 0 】,a c kf 1 0 0 d 。d o s 攻击的本 质是利用协议的缺陷来占用目标的网络资源,消耗目标系统的源,导致服务 超载,无法提供正
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025重庆文化旅游集团有限公司本部招聘2人考试参考试题及答案解析
- 最美的声音中考作文范文12篇
- 2025年度石灰石矿产品深加工项目合同及质量监管保障书
- 2025年生态农业产业链众筹合作框架协议
- 2025年度城市公园绿化养护及环境清洁外包合同
- 2025年特色民宿度假村经营管理承包合同
- 2025年综合社区居民出行班车服务及路费报销协议
- 2025年安全生产责任书模板:核电站设备定期检查合同
- 2025年绿色生态办公大楼信息化布线与智能监控系统建设合同
- 2025年智能型新能源自卸车购置与升级改造项目合作协议
- 茶壶课件教学课件
- 孟良崮战役课件
- 幼儿园物资采购应急预案(3篇)
- 党群服务面试题目及答案
- 卫生院医疗质量管理方案
- 2025-2026秋季学年第一学期【英语】教研组工作计划:一路求索不停歇研思共进踏新程
- 2025年山东省济南中考数学试卷及标准答案
- 叉车考试模拟试题及答案完整版
- 2025-2026学年人教版(2024)初中数学七年级上册教学计划及进度表
- 2025-2026学年冀教版(2024)小学数学三年级上册教学计划及进度表
- 第1课 鸦片战争 课件 历史统编版2024八年级上册
评论
0/150
提交评论