已阅读5页,还剩58页未读, 继续免费阅读
(无线电物理专业论文)利用cookie实现用户区分.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
利用c 0 0 k i e 实现用户区分 专业: 硕士生: 指导老师: 无线电物理 蔡伟杰 余顺争教授 摘要 近年来,由于d d o s u l 等恶意攻击的泛滥,网络安全问题受到越来越多的 关注。d d o s 攻击通过大量消耗服务器及网络的资源,使正常用户无法得到服 务,严重影响了网站的正常工作。 大型网站尤其是大型活动网站很难对d d o s 攻击进行有效的防御。通常, 在活动期间,大型活动网站的业务量会保持在很高的水平,其流量甚至不亚于 遭受一次d d o s 攻击。在大流量的掩盖下,d d o s 攻击变得难以检测。如何在 大流量的背景下保证网站安全,抵御d d o s 攻击,是当前亟需解决的问题。 本文讨论了一种针对大型网站的网络安全解决方案在高效区分网站用 户的基础上,通过分析具体用户的行为,判断用户行为的正常程度,根据正常 程度对带宽进行重新分配,以达到抑制异常攻击流的目的。在此方案的基础上 提出了一种可行的用户区分方案利用c 0 0 k i e 实现用户区分。即,在服务器 的配合下,把用户标识隐藏在c o o k i e 中,利用用户访问网站时其浏览器发出的 请求报文都会带上c o o k i e 的特点,使得用户报文带上唯一的标识,由此达到有 效区分网站用户的目的。最后,本文在l i n u x 环境下实现了一个用户区分系 统,并给出了其详细设计方案,以及该方案的功能和性能的测试结果。结果表 明,该方法确实能有效地区分用户,同时具有较快的处理速度,适合在大流量 的背景下使用。 关键词:用户区分d d o s 攻击网络安全c o o k i e a b s t r a ( :r u s e r c 1 a s s i f i c a t i o nw i t hc o o b e si na ni n t m s i o n p r e v e n t i o ns y s t e m m 萄o r : n a i i l e : s u p e r v i s o r : w i r e l e s sp h y s i c s w 喇i e c a i p r o f e s s o rs h u n z h e n gy u a b s t r a c t i nr e c e n tv e a r sd i s t r i b u t e dd e n i a l o f s e 九r i c e ( d d o s ) 1a t t a c kp r e s e n t si n o s t s e r i o u sm r e a t st ot l l ei n t e m e t i tc a nk e e pt l l el e g i t i m a t eu s e r sf m ms e r v i c eb y e x h a u s t i n gt i l er e s o u r c e so ft h et a r g e ts e r v e ra n dn e t w o r k l a r g e s c a l ew e b s i t c sf o r s p e c i a le v e n t sc a n a t t r a c tv a s t 、v e bu s e r st ov i s i ti nas h o r tt i m e t h eh e a v ya n db u r s t y w o r k l o a dn a t u r ema :k e st h e s ew e bs i t e sf r a g i l ew h e nu n d e r g o i n gad d o sa t t a c k o n e s c h e n l eo fp r o t e c t i n gs u c hal a r g e s c a l ew e bs i t ef r o md d o sa t t a c ki st oa s s i g nt h e u s e r si n t od i f f e r e n tc l a s s e sa n dg i v es e r v i c e sb a s e do nt t l e i rc l a s s e s i nt t l i sp a p e r ,w e f o c u so nt h ei m p o n a n te l e m e mo fm i ss c h e r n c ,u s e rd i s t i n c t i o n w em a r km eu s e rp a c k c tw i mau n i q u ei d e n t i t yn u m b e ri nm ec o o l ( i es e g m e n t w h e n 山eu s e r sa c c e s sm es e n r e ra g a i n ,山e yc a nb ed i s t i n g u i s h e dw i mt h ei d e n t i t y n u m b e r w ea l s oi m p l e l e n to u ru s e rd i s t i n c t i o nm e t l l o di nl i n u xs y s t e ma n dt e s t l e r n e t h o di ne x p e r i m e n tn e “o r k t h er e s u l ts h o w so u rm e t h o dd i s t i n g u i s h 山eu s e r s e f f e c t i v e i y k e y w o r d s :u s e 卜c l a s s i f i c a t i o nd d o sn e 时o r ks e c u r i t yc o o n e 第l 章 第1 章前言 1 1 研究背景 随着i n t e m e t 的发展,各种各样的宽带技术让i n t e m e t 延伸得更广更深。不 断增加的带宽,吸引了越来越多的网络用户,直接导致了各网站用户访问量的 迅速攀升。访问量的增加,对于商业网站而言,既意味着巨大的商机,也意味 着巨大的负担。各种各样的宽带接入,方便了网络用户浏览网上信息,同时也 刺激了他们对多媒体服务的需求。需求的增加意味着业务流种类和流量的增 加,服务质量问题越来越受到网站的关注。 在大流量的背景下,大型网站除了要满足数量庞大的用户需求外,还要提 防隐藏在层层路由器和代理背后的黑客、恶意攻击者。网络带宽的提高,满足 了网络用户需求的同时,也给更大规模的网络攻击创造了环境。自2 0 0 0 年以 来,以d d o s 为代表的恶意攻击开始成为各网站的噩梦,网络堵塞、拒绝服 务、服务器瘫痪层出不穷的问题让各网站焦头烂额。网络安全问题成为网 站关注的另一重点。 1 2 大型活动网站网络安全问题 网络的扩展为攻击者提供了近乎无限的攻击资源,网络安全意识普遍薄弱 的网络中存在着大量的可入侵的主机,d d o s 等攻击方式就是利用这点,通过 入侵手段控制普通用户的电脑来攻击网站。网站尤其是大型网站的网络安全问 题越来越受人关注。黑客出于各种各样的目的,或是炫耀自己掌握的技术,也 可能是纯粹的恶作剧,针对大型网站的攻击越来越多,规模也越来越大,攻击 的目标往往是网络用户关注较多的网站。为大型活动而设的网站无疑最受人关 注,很显然地,黑客们的目光也同样集中在这类网站上面。 相对于普通的大型网站,d d o s 等类型的攻击对大型活动网站的威胁要大 得多,防御难度也更大。首先,大型活动网站的业务量要比普通的网站大得 多,在如此大流量的背景下受到攻击尤其是以大流量为主要特征的d d o s 攻击网站很容易就陷入瘫痪状态。其次,同样是由于网站的业务流巨大, 中山大学硕士学位论文 本以大流量为特征的攻击流混杂在大流量的正常流中反而不明显,巨大的正常 用户数据流掩盖了攻击流,攻击流变得更难以检测。 1 3 大型活动网站安全问题研究现状 大型活动网站的网络安全问题是当前极具研究价值的课题。针对大型活动 网站网络安全研究不但有助于降低大型活动网站在安全方面的投入,对于大型 的商业网站而言也是极有参考价值的。 当前对大型活动网站的安全问题的研究并不多,大部分的研究集中在网络 用户行为分析和网络流量特性分析上。 1 4 完成工作 我们课题组承担的国家自然科学基金“网络与信息安全”重大研究计划 网络时空行为与2 0 0 8 奥运会网络安全关键技术研究目标是为2 0 0 8 奥运会 的活动网站提供一个完整的网络安全参考策略。项目分成点防御和面防御等子 项目进行研究,本人参与了其中的点防御的研究工作。 本人研究了大型活动网站的流量特征,提出了在大流量的背景下,利用 c o o k i c 进行网站用户区分的方法,给出了具体的实现方案,并成功地在l i n u x 环境下实现了该系统。 1 5 论文结构 论文结构如下:第一章为前言,描述了论文的研究背景 第二章为论文相 关的理论及技术,第三章描述了系统的实现方案,第四章描述了在l i n u x 下的 实现过程,第五章描述了相关的测试及测试结果的分析。 2 第2 章 第2 章相关技术及原理 2 1d d o s 攻击 拒绝服务( d e n i a lo f s e r v i c e ) 攻击闭是一种使受害者( 个人电脑、服务器 或路由器等网络设备) 无法提供正常服务的攻击方式。分布式拒绝服务 ( d i s t r i b u t c dd e n i a lo f s e r v i c e ) 攻击【1 】贝是d o s 的进一步演化。简单的d o s 攻 击是由源主机发往目的主机,基本上是一对一的关系。而d d o s 引入了 c l i e n 姻e r v e r 机制,增加了分布式的概念,往往是成千上万台主机同时攻击一台 服务器或一个网络。d d o s 攻击最早引起人们的注意是在2 0 0 0 年:由2 0 0 0 年2 月7 日开始,y a l l o o 、e b a y 、a m a z o n 、微软网络等多个美国大型互联网络接连 遭受大规模攻击,造成上述网站瘫痪长达数个小时,损失i 参重。在事件中,黑 客采用的就是d d o s 攻击方式,通过数以亿万计的垃圾信息包使目标网站网路 堵塞,造成服务器不堪重负而彻底瘫痪。黑客在攻击前在全球各地悄悄地控制 了数千台电脑,作为攻击平台。以“雅虎”网站为例,攻击来自5 0 多处不同的节 点,信息包流量高达每秒钟1 千兆字节,超过普通商业网站一年处理的信息 量。 事实上,大多数的d d o s 攻击并不以破坏服务器为目的,攻击者的目的只 是要造成被害网站或服务器的瘫痪3 】:使、e b 服务器无法提供正常的网页服 务,邮件服务器( s m t p 、p o p 3 ) 无法正常的收发电子邮件:f t p 服务器无法 提供数据传输服务。采用这种攻击方式,攻击者并不能入侵到被害主机或网 站,窃取任何机密数据,他们的目标是要让受到攻击的服务器无法再对正常的 用户提供服务。而且攻击者并不需要获取服务器上的用户列表与密码;攻击者 只需要连上i n t e m e t ,就可以发动攻击。因此只要服务器是与i n t e m e t 相连的, 就有受到攻击的可能。 尽管服务器的数据是安全的,但是d d o s 造成的“拒绝服务状态”对于大 多数的商业网站而言,是相当致命的。因此研究d d o s 攻击原理和主要方式是 相当必要的。 4 图2 1 d d 。s 攻击网络的常见模式 第2 章 当前的d d o s 攻击过程越来越趋于自动化 4 1 ,大部分的d d o s 工具都能够 自动扫描网络,入侵主机并复制程序,攻击网络在很短的时间内就可以有很大 的规模。 攻击网络建立并具备一定规模后,攻击者就会向它所掌握的所有m a s t e r 发 出攻击命令,包括攻击目标、攻击方式、延续时间等。攻击者的位置通常都很 灵活,而且发布命令的时间很短,所以非常隐蔽,难以定位。一旦命令传送到 m a s t e r ,攻击者便会脱离网络,逃避追踪。攻击时刻到来时,m a s t e r 将命令发 送到它们所控制的d a e m o n 。接到攻击命令后,每一个d a e m o n 便开始向目标主 机( c t i m ) 发出大量的数据包。庞大的攻击网络加上攻击发生的突然性,目 标主机或网络往往还没做出反应就已经瘫痪。 2 1 2d d o s 攻击方式 d d o s 攻击有多种方式,按采用的协议可分为基于i c m p 、基于u d p 和基 于t c p 三种攻击方式。 基于i c m p 的d d o s 攻击常见方式有p i i l gf l o o d 和s m ur f 【5 1 ,这两种方式通 过向目标主机或网络发送大量的i c m pe c h or c q u e s t 报文( 也就是常说的 p i n g ) ,导致目标主机收到大量的请求应答报文导致瘫痪。在这种方式中,攻 击者通常选择发送超长的i c m p 报文,超长的报文不但可以更快地堵塞网络, 还会造成主机的瘫痪。例如在w i n d o w s 2 0 0 0 系统内,规定i c m p 报文的最大长 度为6 5 5 2 7 ,当接收到超过这个长度的i c m p 报文时,就会发生内存分配错 误。除此以外,基于i 叫p 的攻击还会采取一种更恶劣的方式:攻击者仿冒目 标主机向多个子网广播i 例pe c h or c q u e s t 报文。在局域网内,普通的交换机 是不会过滤广播报文的。在以路由器为边界的广播域内,攻击者只要广播一个 i c m p 应答请求报文那么所有没关闭i c m p 应答功能的电脑都会返回一个应答, 目标为请求报文中的地址信息所指向的主机,即受攻击的主机。可以说,这种 方式是用几个简单的广播报文引发一场i c m p 应答报文的风暴,并把风暴引向 i p 地址被仿冒的主机及其所在的网络。通过这种方式,攻击者甚至不需要建立 攻击网络就可以达到很大的规模。 中山大学硕士学位论文 基于u d p 的攻击原理比较简单,基本上是依靠巨大的流量来冲垮目标主机 和网络。u d p 常用于传输数据,由于它不像t c p 那样需要经过三次握手建立连 接才开始传数据,也不确认发送的报文是否被完整接收就会继续传送下一个报 文,它这个特点被攻击者利用,用于伪造大量的数据报来攻击目标主机。 基于t c p 的攻击常被称为t c p 洪流攻击。最常见的为s y nf l o o d 【6 l ,该方 式通过在服务器端建立大量的半连接状态的t c p 连接来耗尽服务器的资源。攻 击者向服务器发送t c p 建立连接请求,但对服务器返回的s y n + a c k 报文不作 应答( 事实上攻击者发给服务器的报文中并不包含真实的地址信息,攻击者根 本不会收到s a c k 报文) ,这样就在服务器上产生了一个半连接状态的 t c p 连接。默认情况下,服务器会保留这个连接直到超时。由于系统的t c p 连 接数是受限的,s y nr o o d 方式可以很轻易地就能使服务器瘫痪,无法再为其 他用户提供服务。由于s y nn 0 0 d 方式不需要很大的数据量就可以有很好的效 果,相当多的攻击者都采用这种方式,当然,也由于这个原因,对s y nf l o o d 的研究也最多。成熟的防御方法有s y nc o o k i e 口l 。随着防御方法的增加和完 善,实施s y nf l o o d 攻击的难度越来越大。 除了s y nf l o o d 之外,基于t c p 的攻击还有利用非法的t c ps y n 报文 ( 伪造源m 地址) 的攻击方式和大量发送普通t c p 报文的攻击方式。前者会将 少量的合法的t c ps y n 报文湮没,导致正常用户无法正常连接到服务器。后者 类似基于u d p 的攻击方式,通过巨大的数量来湮没合法用户的数据。如h t t p f l o o d 方式就是通过海量的 r 丌p 请求报文来湮没正常用户的请求,这是种相对 “野蛮”的攻击方法。 通过对上述各方式的统计可以发现( 如表2 1 ) ,以上的攻击方式中,以基 于t c p 的攻击方式出现得最多,对于其中利用三次握手的s y nf 1 0 0 d 方式和以 湮没合法t c ps y n 报文为目的的攻击方式,已经有许多成熟的防御方法,但是 对于看似最普通的以湮没合法数据为目的的t c p 洪流攻击却一直没有非常有效 的防御方法。 6 表2 1d d o s 攻击报文协议统计哪 第2 章 按攻击的方式又可以分为直接攻击方式和间接攻击方式【9 l 。 直接攻击方式直接将攻击报文发送到目标主机或网络。采用这种方式,攻 击者需要控制相当数量的主机,才能发起大规模的攻击,但可控性强。如前所 述的基于t c p 、u d p 间接攻击大多采用这种攻击方式。 间接攻击方式并不直接攻击目标主机,而是利用中问节点如路由器等的漏 洞,让这些中间节点向目标主机或网络发起攻击。通常这种方式也叫反射攻击 方式,被利用的中间节点也称为反射器( r e n e c t o r ) 。攻击者向r e f l e c t o r 发送 应答请求报文,报文事先经过伪装,源地址被修改为目标主机或网络的地址。 在无法确认地址信息经过伪造的情况下r e n e c t o r 根据请求报文中的地址向目 标主机发送应答报文。当r e n e c t o r 的足够多时,经过“反射”后的报文就可以 堵塞目标网络。 2 1 3 一些防御d d o s 的方法 针对不同形式的d d o s 攻击,各种各样的防御方法被提了出来。当然,每 种方法基本上仅针对一种或多种类似的攻击方式,并不存在万能的方法。根据 防御的策略,姑且可以把防御方法分为主动防御和被动防御两类。 被动防御方法以降低攻击流的影响为主要目的,大部分的d d o s 防御方法 都属于被动防御。这类方法有s y nc o o k i e 、h o n e y p o t s 和源端抑制等。 s y nc o o k i e 技术嘲是防御s y nf l o o d 攻击方式的有效方法,实验及实际都 证明了这一点。当服务器收到t c ps y n 报文,通常做法是马上为这次连接分配 一个缓冲区,建立半开连接,并存储连接状态,直到三次握手完成。t c ps y n 攻击就是利用了这点,在分配了缓冲区后并不完成三次握手,使得缓冲区无法 释放,从而消耗了系统资源。 s y n c o o k i c 技术的具体做法是:服务器收到t c ps y n 报文,不按通常做 法那样为该连接分配一个缓冲区,而是只计算生成c o o k i e ,然后作为s y na c k 报文的t c p 初始序列号,随该报文返回。该做法的关键是服务器端并不为此次 连接存储任何信息,这属于无状态的握手。当服务器收到一个来自非活动套接 7 中山大学硕士学位论文 字的a c k 报文时,系统将检查该报文的确认号( 对应于s y na c k 报文的初始 序列号加1 ) 是否含有相关合法c o o 虹e ,如果c o o k i e 合法,系统将为此分配缓 冲区,正式建立连接。否则丢弃该报文。 该技术的关键在于c o o k i e 的设置上,c o o k i e 中包含了t c p 连接状态相关 信息,确保了仿伪性。 h o n e y p o t s 技术【旧1 是一种比较特别的方法。它在服务器或者受保护网络之 外建立一个服务器或网络( h o n e v n e t s ) ,模仿真正的服务器和网络的行为,让 攻击者误认为这就是真正的服务器和网络,把所有的攻击数据都引过来,并借 此分析攻击流的特性,尝试寻找攻击源。 该技术的关键在于如何让充当“h o n e y p o t s ”的主机和网络“真实地”模 拟受保护主机和网络,至少在攻击者所熟悉的方面不露出破绽。比如要保护的 是一台h t t p 服务器,那么就必须能响应用户对网页的请求,并与真正的服务 器保持各页面的同步。如果只是纯粹地研究攻击者的攻击方法和攻击流的特 性,那么可以简单地以一个有漏洞的主机充当“h o n e y p o t s ”,并在确保不引起 攻击者注意的情况下记录及研究其行为。 由于d d o s 攻击的分布性,即使目标主机或网络能够即时检测到攻击,边 界路由器仍会被大量的数据包阻塞。虽然网络内的主机和设备免于瘫痪,但对 恢复服务没有太大的帮助。源端防御技术设想在可能发生攻击的局域网采取措 施,监测网络出口的流量变化,及时检测出发自局域网内部的攻击流,并对攻 击源进行过滤。这是一种比较理想的想法,实现的难点在于攻击识别上,对于 d d o s 攻击,每个攻击源发出的数据流可能都不大,整个局域网的出口流量并 没有呈现与平常完全不同的特征。如何发觉隐没于正常流下的攻击流,是源端 防御技术的关键。同时这种方法需要大多数的网络协同工作,如采用相似的攻 击识别算法、类似的流量控制方法才能实现,难度很大。 上述方法中,大部分的工作都集中在减轻攻击对服务器的影响上,既没办 法根除问题,也无法有效地打击攻击者。主动防御方法主要是i pt r a c e b a c k 技 术 1 ”,i pt r a c e b a c k 技术将把攻击回溯到攻击源,理想的情况下可以在攻击源阻 止攻击者。虽然口t r a c e b a c k 技术属于较积极的d d o s 攻击解决办法,解决方 案也有很多,但实际上只有很少被投入使用,大多数还处于实验阶段。主要的 8 第2 章 i pt r a c e b a c k 技术有:链路测试( l i f l kt e s t i n g ) 、l o g g i n g 、i c m p 追踪和数据包标 记。 链路测试 链路测试技术多数是从最接近v i c t i m 的路由器开始,然后开始检查上流数 据链,直到找至攻击流量发起源。理想情况下,这种过程可以递归执行直到找 到攻击源头。这种技术假设攻击一直保持活动直到完成追踪,因此无法在攻击 结束后进行追踪,同时也很难追踪间歇性的攻击和不断调整攻击方式的攻击。 链路测试技术主要有i n p u td e b u g g i n g 和c o n t r o l l e df l o o d i n g 两种方式。 很多路由器都有i n p u t d 曲u g g i n g 功能,这能让管理员在一些出口端过滤特 定的数据包,而且能确定数据包来自哪些入口。这种特性就被用来做l p t r a c e b a c k :首先,v i c t i m 在确定被攻击时,要从所有的数据包中描述出攻击包 标志。根据这些标志,管理员在上流的出口端配置合适的i n p u td e b u g g i n g ,确 定攻击来自哪个入口。这个过程可以一直朝上流进行,直到能够到达最初的源 头。当然这种工作很多依靠手工,一些国外的i s p 联合开发的工具能够在它们 的网络中进行自动的追踪。但是这种办法最大的问题就是管理花费。联系多个 i s p 并同他们合作需要时间。因此这种办法需要大量的时间,实现难度很大。 c o n 叻l l e dn o o d i n g 实际上就是制造n 0 0 d 攻击,通过观察路由器的状态来 判断攻击路径。首先应该有一张上游的路径图,当受到攻击的时候,可以从 v i c t i m 的上级路由器开始依照路径图对上游的路由器发送数量可控的数据包, 因为这些数据包同攻击者发起的数据包同时共享了路由器,因此增加了路由器 丢包的可能性。通过这种方式沿路径图不断地向上进行,就能够接近攻击发起 的源头。这种想法很有独创性而且也很实际,但是有几个缺点和限制。最大的 缺点就是这种办法本身就是一种d o s 攻击,会对一些信任路径也进行d 0 s 。 而且,c o n t r o l l e dn o o d i n g 要求有一个几乎覆盖整个网络的拓扑图,这点比较难 实现。最后,这种办法很难用于d d o s 攻击的追踪且只对正在进行攻击的情况 有效。 l o g 百n g 这种方法通过在主路由器上记录数据包,然后通过数据采集技术来决定这 些数据包的穿越路径。虽然这种办法可以用于对攻击后的数据进行追踪,它也 有很明显的缺点,比如可能要求大量的资源( 或者取样) 。 9 中山大学硕士学位论文 i q 讧p 追踪 这种方法主要依靠路由器自身产生的i c m p 跟踪消息。每个路由器都有很 低的概率( 比如:1 ,2 0 0 0 0 0 ) 产生i c m p 报文,这些m 报文中包含了到临 近源地址的路由器信息。当n 0 0 d 攻击开始的时候,受害主机就可以利用这些 i c m p 消息来重新构造攻击者的路径。这种方式同上面介绍的比较,有很多优 点,但是也有一些缺点。比如:i c m p 可能被从普通流量中过滤掉,并且, i c m p 追踪消息还与i n p u td e b u g g i n g 特性( 将数据包同数据包i n p u t 端口和或 者要到达的m a c 地址关联的能力) 相关,但是,可能一些路由器就没有这样 的功能。同时,这种办法还必须有一种办法来处理攻击者可能发送的伪造 i c m pt r a c e b a c k 消息。 数据包标记 这种技术构想( 因为现在没有实用) 就是要在现有协议的基础上进行修 改,而且修改很小。这种技术原理就是修改i p 头中,重载其中的i d e n t i f i c a t i o n 域。也就是如果i d e n 雌c a t i o n 域没有被使用的话,将这个域定义为标记。将1 6 比特的i d e n t i & a t i o n 分成:3 比特的0 f f s e t ( 可允许8 次分片) ,5 比特的 d i s t a r i c e ,以及8 b i t 的边缘分片。利用这个标记,理论上可以往回追踪到数据 源。 2 2 流分类技术( f 1 0 wc l a s s i f i c a t i o n ) 随着i n t e m e t 的发展,网络商业化的比重不断提高,各种各样的业务要求原 本以支持数据业务为主的i n t e m e t 向一个承载语音、数据和多媒体等业务的多元 化的综合性网络发展。在这种背景下,采用“b e s te f f o r tt od e l i v e r ”方式的 i p v 4 网络无法适应这样的转变。m 是一种无连接的数据包传送协议,用户发送 数据前不需要建立连接,网络上的路由器根据目标地址决定如何转发数据包, 通过这样的方式不断地转发婵数据包,直到到达目标主机。i p 网络的这种工作 方式不能给业务预留资源,也无法提供任何q o s 保证,无法很好地满足不同业 务的不同需求,尤其是一些实时性要求较高的业务。为此,t f 提出区分服务 ( d i f f s e r v d i f f e r e n t i a t e ds e r v i c e ) 的概念1 2 1 及模型13 1 。 1 0 第2 章 d i f 尽e n r 要求路由器具备流分类功能,即能够对业务流的进行分类,并对 不同的业务流提供不同的服务和不同的q o s 保证。流分类技术就是在这样的背 景下发展起来的。 2 2 1 流分类算法 流分类的基本原理是:通过分析分组头部的信息,将分组划分到特定的类 别,并给予相应的处理。每种流分类算法都对应一定的策略和规则,这些与流 分类有关的策略和规则的集合被称为流分类器。流分类器的核心部分是规则 库,它是分类的依据。分类器的规则与分组头部的一个或多个域有关,例如, n 维分类器中的每条规则都有n 个项,对应于待匹配的分组头中的n 个域【1 “。 每条规则对应一个业务流类型,每个流类型对应一个唯一标识,并且对应于一 种特定的处理方法。若一个分组匹配了某规则,这个分组就被划分为该规则所 对应的流类型。可以说分类过程的实质就是对特定的分组在规则库中搜索与之 匹配的规则,以确定分组所属的类,并将相应的处理方法应用于分组。 通常情况下,流分类在路由器的输入端进行,路由器根据分类结果对不同 的流作不同的处理。为保证整体性能,流分类算法必须满足一定的性能要求 ”5 1 :在最坏情况下( 不是平均情况下) ,算法最大的分组处理速率应不低于线 路分组到达的速率;算法性能不依赖于某种特定业务流量特性,即性能与业务 流特性无关;算法应易于实现,能够采用流水线结构和并行逻辑实现,即能够 用硬件实现;算法应具有较短的预处理时间,即实际的流分类工作之前初始化 数据需要的时间要短。在进行流分类算法设计时,还要考虑的一个问题是规则 修改( 包括规则的增删和改动) 的复杂度。许多流分类算法为提高分类性能, 在一定程度上牺牲规则修改的性能和复杂度。通常,类分类器的分类规则修改 频度较小,这种牺牲是可以接受的,但有些分类器如动态规则分类器则要求算 法在规则的增删、修改上具有较小的难度,那么在算法设计时就必须把规则修 改的复杂度考虑进去。 常见的流分类算法可以分为三类:直接查找存储器的流分类算法、基于查 找树的流分类算法和基于h a s h 表的流分类算法。 中山大学硕士学位论文 直接查找存储器的流分类算法 这类算法的主要特征是:在预处理时建立线性的数据结构,分类时通过一 次或多次查找线性数据结构和一些简单的处理获得最终的分类结果。这类算法 主要有:线性查找、c r o s s p r o d u c t i n g 、重复流分类( i t f c r e c u r s i v ef l o w c l a s s i f i c a t i o n ) 等。 线性查找采用的数据结构最简单,规则以链表的方式存储。分类时从表头 开始依次和链表中的各个规则进行比较,直到找到一条匹配的规则或者达到链 尾。尽管该算法存储效率高、简单,但是查找时间长,并且查找时间随规则数 的增加而线性增加。 c m s s p r o d u c t i n g 将多维的流分类问题转化为多个一维的流分类问题,利用 多个一维的流分类结果查找c r o s s p m d u c t i n g 表获得最终的流分类结果。这种方 法便于实现,但需要较大的存储空间,而且规则库的可扩展性也不是很理想。 t e m a r yc a m 算法具有最快的分类时间,只需要一个内存访问周期。但该 算法只能由硬件实现,而且需要使用c a m 存储器。由于c a m 存储器价格比较 昂贵,耗电量也很大,也不直接支持范围匹配,故这种算法仅适合于较小的流 分类情况。同时,该方法的动态性非常差,增加新规则难度非常大,不适用于 动态流分类器。 r f c 是一种适合多域流分类问题的算法,具有流分类速度快,能直接支持 范围和前缀匹配等优点。但当分类器的规则数、域的数目等增加时,所需存储 空间增加得很快。同时该算法要求所用的分类器中明显地具有它所基于的特 征,否则就会严重影响流分类的性能。同时该算法的动态性也不是很好,添加 一条新规则在最坏的情况下需要重建整个数据结构,同样也不适合规则频繁变 化的流分类器。 由上所述,直接查找存储器的算法比较简单,易于在硬件上实现,但大多 存在对存储空间需求大的问题。 基于查找树的流分类算法 这类算法的基本原理是:在预处理时根据规则按一定的对应关系建立查找 树,在流分类时通过一次或多次访问查找树获得最终结果。这类算法较有代表 性的有;分层查找树,集合归并查找树,g r i d o f - t r i e s 等。 第2 章 分层查找树( h i e m r c h i c a lt r i e s ) 任选一维生成第一级查找二叉树,对该二 叉树中的每一个与分类器中第一维匹配的结点,按分类器中规则的第二维建立 另一个二叉树,反复上述过程直到完成每一维的处理,就构成了多维分层查找 树。这种方法简单、直接,也便于硬件实现,但查找时间较长,对规则维数的 扩展性差,也不直接支持范围匹配。 集合归并查找树( s e t p m n i n gt r i e s ) 通过对分层查找树中某些结点进行多 次复制,减少分层查找树的层次,提高查找效率。但所需存储空间很大,对规 则维数的扩展性仍然很差。 g r i d _ 0 f t r i e s 的主要思路是将集合归并查找树中重复的子树删去,只保留一 棵子树,以此来降低存储空间的需求量,但这种方法在动态性方面仍然很差, 减少规则需要对整个树进行重建,而且只适用于两维的情况。 这类算法的优点是需要的存储空间不大,也便于硬件实现。缺点是由于要 访问查找树,需要的时间较长。 基于h a s h 表的流分类算法【”l 这类算法的基本原理是:以一个或多个域作为关键字,通过特定的h a s h 函 数把不同的关键字映射到h a s h 表中,在预处理时向h a s h 表中存进与关键字对 应的规则。由于采用了h a s h 表,h a s h 表所特有的“冲突”问题也成为算法考 虑的重点。设计时要确保h a s h 表的长度大于规则数量,并选择合适的h a s h 函 数减少冲突,提高效率。通常为了减少冲突,在进行h a s h 处理前,会对流规则 做某些预处理。设计还要考虑的是“发散”问题。由于规则数量小于h a s h 表的 长度,有可能导致同一规则对应多个h a s h 函数值,如何减少发散,降低h a s h 表的冗余程度,也是这类算法考虑的重点。 这类算法中比较有代表性的算法是多元空间搜索算法( t s s t u p l es p a c e s e a r c h ) 。t s s 算法认为分组头部的每个域都有各自的特性,在进行h a s h 处理 前,t s s 算法根据各个域各自的特性对分组进行特定的处理,以达到压缩关键 字总长度、减少冲突的目的。 基于h a s h 表的流分类算法由于采用了h a s h 表,流分类问题被简化了,故 这类算法大多具有分类速度快,存储空间需求小的特点,同时硬件实现也不困 难。缺点是发生冲突时效率变得较低。 中山大学硕士学位论文 2 2 2 流分类的应用 流分类常和其他技术配合使用。在路由器上,对业务流进行了流分类处理 后,通常还会进行一定的调度处理,以实现负载均衡。流分类配合负载均衡, 才能真正实现为不同业务流分配不同的带宽和提供不同的q o s 保证。 除了在d i f f s e r v 中的应用外,流分类技术也被应用于其他领域,如入侵检 测。入侵检测与流分类技术相结合,可以更好地刻画入侵攻击的特征,借以建 立入侵检测模型,根据模型对每个流的特性进行分析,判断具体的流是否有异 常,以发现攻击流发出警告。同时还可以提高入侵检测的准确性,降低误报 率。 2 3 入侵检测系统( i d s ) 2 3 1 入侵检测系统相关概念 1 9 8 0 年,j a l l l e sp a n d e r s o n 第一次系统阐述了入侵检测( i n t m s i o n d e t e c t i o n ) 的概念,将入侵行为分为外部渗透、内部渗透和不法行为三种,提 出了利用审计数据监视入侵活动的思想。1 9 8 6 年d o r o t h ye d e n n i n g 提出实 时异常检测的概念【l 引,并建立了第一个实时入侵检测模型,命名为入侵检测专 家系统( e s ) 。1 9 9 0 年,l - t h e b e r l e i n 等设计出监视网络数据流的入侵检测 系统,n s m ( n 色t w o r k s e c u r i t y m o n i t o r ) 。自此之后,入侵检测系统才真正发展起 来。 a n d e r s o n 将入侵行为定义为:潜在的、有预谋的、未经授权的访问信息、 操作信息、致使系统不可靠或无法使用的企图。而入侵检测的定义为f 19 l :发现 非授权使用计算机的个体( 如“黑客”) 或计算机系统的合法用户滥用其访问 系统的权利以及企图实施上述行为的个体。执行入侵检测任务的程序即是入侵 检测系统。入侵检测系统也可以定义为:检测企图破坏计算机资源的完整性, 真实性和可用性的行为的软件。当然,现在有很多入侵检测算法通过硬件实 现,这些软件与硬件的组合也是入侵检测系统。 入侵检测系统的主要任务包括加】:监视、分析用户及系统活动;审计系统 构造和弱点;识别、反映已知进攻的活动模式,向网络管理员报警:统计分析 1 4 第2 章 异常行为模式:评估重要系统和数据文件的完整性;审计、跟踪管理操作系 统,识别用户违反安全策略的行为。入侵检测一般分为三个步骤:信息收集、 数据分析、响应。 2 3 2 入侵检测系统的分类 按照控制策略入侵检测系统可以划分为集中式i d s 、部分分布式m s 和全 部分布式d s 。控制策略描述了d s 的各元素是如何控制的,以及d s 的输入 和输出是如何管理的。在集中式d s 中,一个中央节点控制系统中所有的监 视、检测和报告。在部分分布式d s 中,监控和探测是由本地的一个控制点控 制,层次式地将报告发向一个或多个中心站。在全分布式d s 中,监控和探测 是使用一种叫“代理”的方法,代理进行分析并做出响应决策。 按照同步技术入侵检测系统可以划分为间隔批任务处理型d s 和实时连续 性m s 。同步技术是指被监控的事件以及对这些事件的分析在同一时间进行。 在间隔批任务处理型i d s 中,信息源是以文件的形式传给分析器,一次只处理 特定时间段内产生的信息。并在入侵发生时将结果反馈给用户。很多早期的基 于主机的d s 都采用这种方案。虽然方法简单,但从发生入侵到发觉入侵可能 会有很大的延迟。在实时连续型i d s 中,事件一发生,信息源就传给分析引 擎,并且立刻得到处理和反映。实时i d s 能及时地检测入侵,是基于网络s 首选的方案。 按照响应方式入侵检测系统划分为主动响应s 和被动响应d s 。当特定 的入侵被检测到时,主动d s 会采用以下三种响应:收集辅助信息:改变环境 以堵住导致入侵发生的漏洞;对攻击者采取特定的行动。被动响应d s 则是将 信息提供给系统用户,依靠管理员在这一信息的基础上采取进一步的行动。 按照信息源入侵检测系统分为基于主机的d s 、基于网络的d s 、基于网 关的d s 和分布式d s 。 基于主机的入侵检测系统通过监视与分析单个主机的审计记录来检测入侵 行为。需要及时采集到审计记录是这种入侵检测系统的弱点之一,入侵者可能 会将主机审计子系统作为攻击目标,从而绕过基于主机的入侵检测系统。 中山大学硕士学位论文 基于网络的入侵检测系统是在关键的网段或交换部位通过捕获并分析网络 数据包来检测攻击。这种系统通过在共享网段上对通信数据进行侦听来采集数 据,分析可疑现象。这种入侵检测系统不需要主机提供严格的审计记录,对主 机资源消耗少,并可以提供对网络通用的保护而无需顾及异构主机的不同架 构。 基于网关的入侵检测系统:由新一代高速网络结合路由与高速交换技术构 成,基于网关的入侵检测系统通过对网关中相关信息的提取,从而提供对整个 信息基础设施的保护。 分布式入侵检测系统能够同时分析来自主机系统日志和网络数据流,系统 由多个部件组成,采用分布式结构。 按照分析方法可以把入侵检测系统划分为滥用检测型和异常检测型l 。 滥用检测( m i s u s ed e t e c t i o n ) 型的d s 中,首先建立一个对过去各种入侵 方法和系统缺陷知识的数据库,当收集到的信息与库中的原型相符合时则报 警。任何不符合特定条件的活动将会被认为合法,因此这样的系统误报率很 低,但由于只能识别已知的入侵行为,对未知的入侵模式无法识别,故存在漏 报的情况。 异常检测( a n o m a l yd e t e c t i o n ) 型d s 建立在如下假设的基础之上,即任 何一种入侵行为都能由于其偏离正常或者所期望的系统和用户活动规律而被检 测出来。首先系统会建立一个正常活动的特征文件,然后通过统计那些不同于 已建立的特征文件的所有系统状态的数量,来识别入侵企图。当主体的活动违 反其统计规律时,就认为可能是入侵行为。虽然这种方式能够识别的入侵模式 较多,但由于正常活动特征库的有限,使得误报率比较高。 2 3 3 入侵检测系统存在的问题及发展趋势 随着入侵检测技术的发展,不断有成型的产品应用到实践中。除了完善原 有技术外,又有许多新的检测方法被提出,如数据挖掘技术,神经网络技术, 模糊理论的应用,智能技术以及免疫学原理的应用等。入侵检测系统的主要发 展方向为: 1 6 第2 章 大规模分布式入侵检测。传统的入侵检测技术一般只局限于单一的主机或 网络框架,无法胜任大规模网络的监测,不同的入侵检测系统之间也不能协同 工作。因此,必须发展大规模的分布式入侵检测技术。 宽带高速网络的实时入侵检测。随着网络技术的发展,网络速度不断提 高,带宽也不断攀升,如何实现高速网络下的实时入侵检测成为入侵检测系统 设计时要考虑的重点之一。 结合数据挖掘技术。目前的入侵检测系统还存在着很多缺陷。首先,目前 的技术还不能对付训练有素的黑客的复杂的攻击。其次,系统的误报率太高。 最后,系统对大量的数据处理,不但对解决问题没有帮助,还降低了处理能 力。结合数据挖掘技术才能更好地解决这一系列问题。 加强对分布式攻击与d o s ,d d o s 攻击的检测。相比于黑客最初采用单机发 起攻击的方式,当前攻击者越来越倾向于使用多台主机,同时攻击一台机器的 办法。这就是所谓的分布式攻击( d i s t r i b u t e d a t t a c k ) ,它可以在很短时间内使 被攻击的主机瘫痪。分布式攻击是多对一的攻击,完成一次攻击的时间比单机 攻击更短,危害性更大。此类攻击的单机信息模式与正常通信几乎没有差异, 通常的检测方法无法及时检测出来,因此分布式攻击更加隐蔽,更难被发现。 目前的d s 产品对于分布式攻击的防范能力普遍较弱。如何很好地描述一种分 布式攻击,检测到可疑攻击后如何将分开的攻击特征合并,从中确定分布式攻 击,都是值得认真研究的课题。d o s d d o s 攻击方式在前面已经描述过,其危 害性勿庸置疑。由于拒绝服务攻击多是利用系统的漏洞进行攻击,防范难度很 大。 与网络安全技术相结合。实现网络与信息的安全是一项系统工程,不是哪 一种单独的安全部件就可以完成的。只有在不同
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年益阳职业技术学院单招职业倾向性测试题库带答案解析
- 2025年金山职业技术学院马克思主义基本原理概论期末考试模拟题含答案解析(必刷)
- 2025年南充科技职业学院马克思主义基本原理概论期末考试模拟题带答案解析(必刷)
- 2024年达县招教考试备考题库附答案解析
- 2025年华中师范大学马克思主义基本原理概论期末考试模拟题附答案解析(必刷)
- 2025年湖北省咸宁市单招职业适应性测试题库附答案解析
- 2024年道孚县幼儿园教师招教考试备考题库附答案解析(必刷)
- 2025年牡丹江医学院马克思主义基本原理概论期末考试模拟题带答案解析(夺冠)
- 2024年淮阳县招教考试备考题库附答案解析
- 2024年馆陶县招教考试备考题库附答案解析(必刷)
- IPCJEDECJSTD020F 非气密性表面贴装器件(SMDs)的湿气回流敏感性分类
- DZ/T 0270-2014地下水监测井建设规范
- 安全标准化系统实施考评表
- 医院总值班培训课件
- 杭州萧山拆迁协议书
- 2025年天津河东区高三一模高考英语试卷试题(含答案)
- 湖南长沙九年级物理第一学期期末考试试卷(含答案)
- 电子商务供应链管理课件
- 标准波导和法兰尺寸
- 绘本:我喜欢书
- 2023健康住宅建设技术规程
评论
0/150
提交评论