




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于a r p 欺骗的变换网络监听技术分析与研究 摘要 随着网络的发展和普及,网络的开放性、共享性、互连性随之扩大。网 络互连一般采用t c p i p 协议,而t c p i p 协议是一个工业标准的协议簇,在 该协议簇制订之初,没有过多考虑其安全性,所以协议中存在很多的安全漏 洞,致使网络极易受到黑客的攻击。a r p 协议作为t c p i p 协议簇中的一员, 同样也存在着安全漏洞,利用a r p 协议漏洞进行网络监听是黑客的攻击手 段之一。因此有必要了解黑客的这种攻击手段,并提高自己的安全意识,积 极采取有效的安全策略来保障网络的安全性。本文的目的就是揭示a r p 协 议的漏洞以及如何利用漏洞进行监听和如何防范这种监听,并据此构建出 个实用模型。 本文首先分析了网络监听技术的现状,对共享网络和交换网络的监听、 防范、检测技术进行了介绍。并介绍了网络安全的基础知识。其次,对数据 包的捕获机制进行了分析,对w i n d o w s 环境下的w i n p c a p 驱动开发包 进行了详细的说明,并介绍了相关函数。再次,对a i 冲协议进行了详细的 分析,其中包括对其函数的分析、漏洞的分析和工作原理的分析。并且在此 基础上,对本文最主要的a r p 欺骗监听技术进行了详细的分析。最后,构 建出一个具体模型。 本文所构建的模型能够比较稳定的监听到局域网中其他主机之间的通 信数据,有一定的实用价值,通过该模型可以了解到黑客的这种基于a r p 的网络监听的攻击方式的原理,从而有效地对这种攻击加以防范和检测。 关键词:网络监听;w i n p c a p :a r p 欺骗 基于a r p 欺骗的交换网络监听技术分析与研究 a b s t r a c t a l o n gw i t h m en e t 、o r k d e v e l o p m e n t a l l d p o p u l 撕z a t i o n , n e t w o r k o p e n n e s s 、s h a r i n g a n di n t e r c o 蛐e c t i o na r ee x p a n d i n g b e c a u s en e t 、v o r k i m e r c o n n e c t i o ng e n e r a l l yu s e st c p ,i pa 伊e e m e n ta f l dt c p ,i pi sa ni n d u s t r ys t a l l d a t d a g r e e m e mb u n c h ,a tm eb e g i n n i n go ft h i sa g r e e m e n tb u n c ho fm a k i n g ,t l l e r ei s n o tm u c hc o n s i d e r a t i o nt 0 廿l es e c u r eq u e s t i o n s ,s ot l l ea g r e e m e n th a sm a n y s e c u r i t yl o o p h o l e sa r i dn e t w o r ki se a s i l yt ob ea t t a c k e db yh a c k e r s a so n eo ft h e t c p i pm e m b e r s ,a 甲a l s oh a sm a n ys e c u r i t yl o o p h o l e s a r ps p o o fm o n i t o r i n gi s o n eo ft b eh a c k e r sa n a e km e t h o d s ,s oi ti sn e c e s s i t yt ok n o wa b o u tt h i sa t t a c k m e 如o da r l dr a i s eo u ro w n c 谢t yc o n s c i o u s n e s s ,w es h o u l dp o s i t i v e l ya d o p t s e f f b c t i v es e c u r i 哆p o l i c yt 0s 疵g u a r dn e 咐o r ks c c u r i t y t h em a i np u r p o s eo f 血i s t h e s i si se x p o s m g1 0 0 p h o l e si na r pp m t o c o l ,u s i n gm e mt om o n i t o rn c t w o r ka i l d d e f e n d i i 培t h i sm o i l i t o r i n ga n a c k ,a i l db a s e d0 nt h i s ,t h j st h c s i sc o i l s t n l c t e da m o c k l t h i s 出e s i sh a s 五r s ta n a l y z e do n eo fh a c k c r sa t t a c km e m o d s - n e t w o r k m o n i t o r i n gt e c h i l o l o g y 蛐di t sc u r r e ms t a t u s ,a i l di m r o d u c e dt h em o n i t o r i n g ,t h e p r 0 1 h e c t i 衄a n dd e t l 暑c t i o nm e n l o do fs h a r e dn e “o r ka n ds 埘t c hn e 啪r k ,a 1 1 dt h e e l e m e m a r yk n o w l e d g eo fn e t w o r ks e c 砌t yn e x t ,t l i i st h e s i sh a sc 枷e do nt l l e a n a i y s i s t on l ed a 诅p a c k e tc 印n l r em e c h a n i s m ,i f n r o d u c e dw i n p c a pp a c k e t c 印t u r ea r c h i t c c t u r el l i l d e r n d o w se n v im j m e n ti nd e t a i l 锄d 也ec o r r e l a t i o n 如n c t i o n t h e t l t h et h e s i sc 枷e do na nd c t a i k da i l a i y s i st ot 1 1 ea 印a g r e e m e m , i n c l u d i n gi t sf h n c t i o na i l a l y s i s 、1 0 0 p h o l ea n a l y s i sa n dw o r k i n gp f i n c i p l ea n a l y s i s a n db 船e do nt l l i s ,c a i t i e do nt l i ed e t a i l e da i l a l y s i st oa r ps p o o fm o n i t o r i n g t e c h n o i o g y f i n a i l y ic o n s t n l c t e d ac o n c r e t em o d e l t h em o d e lc 锄m o n i t o rm o s td a t 髂t l l r d u g ht h ee t h e m e ts t a b l ya r 讨h a ss o m e p r a c t i c a lv a l u e s t h r o u g hm em o d e i ,y o um a y u n d e r s t a i l dh a c k e r sa c t i o np r i n c i p l e o fm i sk i n do fa t 诅c k ,也my o uc a ne f i c c t i v e l yp e r f o r m st op r 0 把c t 强dd e t e c tm i s k i n do f a t t a c k 基于a r p 欺骗的交换网络监昕技术分析与研究 l ( e y w o r d s ;n e t w o r l ( m o n i t o r i n g ;w i n p c a p ;a r ps p o o f 4 基于a r p 欺骗的交换网络监听技术分析与研究 第1 章绪论 1 1 背景和问题提出 随着计算机技术的发展,网络已经成为生活中不可或缺的工具,但伴 之而来的非法入侵也一直威胁着计算机网络系统的安全。网络监听技术是 一种在他方未察觉的情况下,捕获其通信报文或通信内容的技术。网络监 听一方面是黑客入侵的基本步骤和手段,另一方面,可以使用网络监听技 术来对黑客入侵活动和其它网络犯罪进行侦察、取证等。 网络监听在安全领域引起人们普遍注意是在9 4 年开始的,在那一年 2 月间,相继发生了几次大的安全事件,一个不知名的人在众多的主机和 骨干网络设备上安装了网络监听软件,利用它对美国骨干互联网和军方网 窃取了超过l o o ,o o o 个有效的用户名和口令。上述事件可能是互联网上 最早期的大规模的网络监听事件了,它使早期网络监听从地下走向了公 开,并迅速的在大众中普及开来。 当前网络监听主要用于局域网中,按照监听的环境不同,网络监听分 为共享式网络监听和交换式网络监听。前者相对来说发展较早也比较成熟 了,它主要通过将网卡设成混杂模式,同时辅以相应的捕获机制来达到监 听的目的。其局限性在于只能用予共享式网络。随着交换机成本和价格的 大幅度降低,交换式网络的比重正在逐渐加大。在交换式以太网中,网段 被分割成端口,不同主机之间的相互通信是通过交换机内部的不同端口间 的存储转发来完成的。最常见的交换机在网络层根据数据包的目标地址进 行转发,而不是采用以太网集线器的广播方式。由于交换式网络采用与共 享式网络完全不同的数据传送方式,曾一度使得网络监听完全失效。从理 论上讲,一个主机无法再利用数据包的广播或网卡的混杂模式对其他端口 进行监听,因此原有的监听手段无法在交换式网络下实施。因此有必要对 交换环境下的监听技术进行研究。 9 基于a r p 欺骗的交换网络监听技术分折与研究 1 3 基于交换网络的监听技术 1 3 1 交换网络的特点 不同于工作在第一层的h u b ,交换机是工作在二层,也就是说数据链 路层的,交换机在工作时维护着一张a r p 的数据库,在这个库中记录着交 换机每个端口绑定的m a c 地址,当有数据报发送到交换机上时,交换机会 将数据报的目的m a c 地址与自己维护的数据库内的端口对照,然后将数据 报发送到相应的端口上,不同于h u b 的报文广播方式,交换机转发的报文 是一一对应的。对二层设备而言,仅有两种情况会发送广播报文,一是数 据报的目的m a c 地址不在交换机维护的数据库中,此时报文向所有端口转 发,二是报文本身就是广播报文。总体来说,交换网络有以下三个特点: ( 1 ) 通过交换机连接网络。 ( 2 ) 由交换机构造一个“m a c 地址端口”映射表。 ( 3 ) 发送包的时候,只发到特定的端口上。 1 3 2 m a c 泛洪 m a c 泛洪是通过在局域网上发送大量随机的m a c 地址,以造成交 换机的内存耗尽,当内存耗尽时,一些交换机便开始向所有连在它上面的 链路发送数据。交换机要负责建立两个节点问的“虚电路”,就必须维护 一个交换机端口与m a c 地址的映射表,这个映射表是放在交换机内存中 的,但由于内存数量的有限,地址映射表可以存储的映射表项也有限。如果 恶意攻击者向交换机发送大量的虚假m a c 地址数据,这些交换机就会像 一台普通的h u b 那样只是简单地向所有端口广播数据,这个时候,将网 络中任意一台机器网卡设置为混杂模式,监听者就可以借机达到监听的目 的。 1 3 3 m a c 复制 m a c 复制通常用于对交换机的欺骗。实际上就是修改本地的m a c 基于a r p 欺骗的交换罔络监听技术分析与研究 地址,使其与欲监听主机的m a c 地址相同。在交换机中维护着一个 m a c p o i 汀对的动态映射表,如果监听主机对自身的m a c 地址加以改变 并伪装成目标主机的m a c 地址,就可以迷惑交换机,将原本发往目标主 机的数据包发给监听主机。 大多数网卡允许重新组态化”r u n t i m e 执行时期”的m a c 地址,例如 某些网络卡则提供了直接于w i n d o w s 的控制台组态m a c 地址的功能。 其次可以重新烧录新的m a c 地址到网卡的e e p r o m ( 电子式可抹写内存) 中,这将永远的更改网卡上的m a c 地址。 1 3 4 a i 冲欺骗 交换网络下最主要的监听方式就是基于a r p 欺骗的方式。a r p 欺骗 是利用主机响应越冲应答包并对其缓存中的a r p 表进行更新的原理来实 现的。具体来说,基于a r p 欺骗的网络监听是利用a r p 协议的漏洞来实 现的。a r p 协议虽然是一个高效的数据链路层协议,但是在局域网中,它 的工作基础是各主机相互信任,这就为网络监听提供了机会。 在设计a r p 协议时,为了减少网络上过多的a r p 数据通信,对台 主机来说,即使收到的a i o 应答并非因自己请求而得到的,它也会将其 插入到自己的a i 心地址转换表中,监听正是利用这一漏洞来实现的。当 监听者监听到同一网段内的两台主机之间的通信时,会分别给这两台主机 发送一个a r p 应答包,让两台主机都把第三方监听者误认为是对方,这 样,双方看似直接地实施了通信连接,而实际上中间夹着监听主机。此时, 监听者不仅可以完成监听,而且监听者还可以随意更改数据包中地某些信 息,并成功完成数据包转发。 1 4 本文的研究内容 本文首先对网络的数据包捕获机制进行了分析,然后重点研究了a r p 协议的实现及漏洞分析,最后,用一个具体模型来加以分析a r p 欺骗。 在模型中,可以了解到这种攻击如何进行,以及怎么样去防范,并涉及到 具体编程细节。 基于a r p 欺骗的交换网络监听技术分析与研究 1 5 论文组织结构 第l 章简单介绍了网络监听的研究现状,论文的研究内容和组织结构。 第2 章介绍了当前的网络安全的基础知识,包括i p 地址和m a c 地址、 以太网的拓扑结构、t c p i p 协议以及黑客常用的攻击手段。 第3 章介绍了数据包的捕获机制,包括s o c kp a c k e t 、d l p i 、b s d 以及w i n p c a p 。 第4 章详细分析了a r p 协议,包括协议工作原理,协议漏洞、协议 的函数等。 第5 章描述了基于a r p 欺骗的监听的实现、防范以及检测。 第6 章介绍了数据加密技术。 第7 章模型的具体实现。 第8 章结束语。 基于a r p 欺骗的交抉网络监听技术分析与研究 第2 章网络安全基础知识 2 1ip 地址和m a c 地址 在互联网上有两种方式可以唯一地标识主机,一种是主机的i p 地 址另一种是网卡的m a c 地址,两种地址都是全球唯一的。 i p 地址是由3 2 位二进制数组成,为了便于阅读和理解,通常采用点 分十进制表示方法来表示。如1 9 2 1 6 8 0 1 就是个i p 地址。整个i p 地 址分为两个部分:网络部分和主机部分。网络部分表明这台主机位于哪个 子网,主机部分标识予网内的具体主机。目前l p 地址主要分为a 、b 、c 三类,a 类用于大型网络,b 类用于中型网络,c 类一般用于局域网等小型 网络中。 m a c 地址也叫物理地址、硬件地址或链路地址,由网络设备制造商 生产时写在硬件内部。通常有4 8 位长。前2 4 位标识网络接口卡的厂商, 不同厂商生产的标识不同,后2 4 位是由厂商指定的网络接口卡序列号。 如4 4 4 5 5 3 5 4 o o 0 0 就是一个m a c 地址。 2 2 以太网拓扑结构 计算机网络的拓扑结构是指网络设备的物理连接关系。网络的拓扑 结构总线形网、星形网、树形网、环形网。 总线结构是使用同一媒体或电缆连接所有端用户的一种方式。总线网 的优点是结构简单灵活,信道利用率高,设备少费用低,数据端用户入网 灵活。缺点是一次仅能一个端用户发送数 福 一般来说每一块网卡上的mac地址都是不同的,每个网卡厂家得到一段地 址,然后用这段地址分配给其生产的每个网卡一个地址。在正常的情况下,网 彰弼鞘龋酾矛艘雨殛环绝两由连j骶蛳夔韭业醚驰l!|j!醴鹭鲥超醵;唑堡结康与蟹? ,环 形网的优点是传输控制机制较为简单,实时性强。缺点是6 基于a r p 欺骗的交换网络监听技术分析与研究 可靠性差,扩展困难。 树形网是星形网的一种变形,与星型网相比,它的通信线路总长度 短,成本较低,节点易于扩充,寻找路径比较方便,但除了最低层节点及 其相连的线路外,任一节点或其相连的线路故障都会使系统受到影响。 2 3t c p ip 协议简介 t c p i p 协议是目前应用最为广泛的网络协议结构,t c p i p 共分为四 层“:分别是应用层、传输层、网络层和网络接口层。 应用层是t c p i p 的最高层,它向用户提供通信工具和相关服务。 该层使用最广泛的协议有文件传输协议f t p ,超文本传输协议h t t 只域 名解析协议d n s ,远程连接服务协议t e l n e t 等。 传输层的基本任务是建立可靠的端对端连接,并提供虚电路服务和面 向数据流的传输服务。传输层有两个广为使用的协议:传输控制协议 t c p ( t r a n s f e rc o n t r o lp r o t o c o l ) 和用户数据报协议u d p ( u s e r d a t a g r a mp r o t o c 0 l ) 。t c p 为两台主机提供高可靠性的数据通信。 它所做的工作包括把应用程序交给它的数据分成小块交给下面的网络层、 确认收到的分组、设置发送最后确认分组的超时时钟等。u d p 则为应用层 提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到 另一台主机,但并不保证该数据报能到达另一台主机。 网络层负责相邻主机之 x 基于a r p 欺骗的交换网络监听技术分析与研究 配多少内存。如果程序在动态分配缓冲区放入超长的数据,它就会溢出了。 当发生缓存区溢出时,有可能改写返回地址,如果在溢出的缓存区中写入 想执行的代码( s h e l l c o d e ) ,并使返回地址指向其起始地址,c p u 就 会转而执行s h e l l c o d e ,达到运行任意指令从而进行攻击的目的。 2 4 4p i n go fd e a t h 攻击 该攻击利用i c m p 数据包最大尺寸不得超过6 4 k b 这一规定实现的。 其原理是:如果i c m p 数据包的尺寸超过6 4 k b ,主机就会出现内存分配 错误,导致t c p i p 堆栈崩溃,致使主机死机。此外,向目标主机长时间、 连续、大量发送i c m p 数据包,使得目标主机耗费大量的c p u 资源处理, 也会使系统瘫痪。 2 4 5 监听攻击 在网络中,当信息进行传播的时候,可以利用工具,将网络中正在传 播的信息截获或者捕获到,从而进行攻击。现在的监听技术由被动变为主 动。传统的监听技术只是被动地监听网络通信、用户名和密码,现在的监 听技术发展为主动地注入数据包到网络内,并将通信数据重定向到攻击者 的机器内。 1 9 基于a r p 欺骗的交换嘲络监听技术分析与研究 ( 3 ) 在网络上发送原始的数据报; ( 4 ) 收集网络通信过程中的统计信息。 3 4 2 w i n p c a p 体系结构 w i n p c a p 结构图如图”3 2 : 用户层 核心层 网络 数据帧 图3 2w i n p c a p 体系结构图 3 4 3 w i n p c a p 包捕获结构 w i n p c a p 由3 个模块组成,一个是工作在内核级的n p f 包过滤器; 另外两个在用户级,即用户级的w p c a p d l l 模块以及一个动态连接库 p a c k e t d l l 。 基于a r p 欺骗的交换网络监听技术分析与研究 n d i s m e d i u m f d d i :f d d i n d i s m e d i u m a t m :a t m n d i s m e d i u m a r c n e t 8 7 82 :a r c n e t ( 8 7 8 2 ) 7 )b o o l e a np a c k e t g e t s l j a t s ( l p a d a p t e r a d a p t e r o b j e c t ,s t r u c tb p f s t a t + s ) 返回几个关于当前捕获报告的统计信息。 其中b p fs t a t 结构包含:b sr e cv b sd r op ,p si f d r o p b sc a p t b sr e c v :从网络适配器开始捕获数据报开始所接收到的所有数据 报的数目,包括丢失的数据报; b sd r o p :丢失的数据报数目。在驱动缓冲区已经满时,就会发生 数据报丢失的情况。 8 )p c h a rp a c k e t g e t v e r s i o n ( ) 返回关于d l l 的版本信息。 9 ) v o i dp l a c k e t i n i t p l a c k e t ( l p p a c k e tl p p a c k et ,p v o i d b u f f e r ,u i n tl e n g t h ) 初始化一个一p a c k e t 结构。 1o ) l 队d a p t e rp a c k e t o p e n a d a p t e r ( l p t s t ra d a p t e r n a m e ) 打开一个网络适配器。 l1 )b 0 0 l e a ni ! a c k e t r e c e i v e p a c k e t f l p a d a p t e r a d a p t e r o b j e c t l p p a c k e tl p p a c k e t b 0 0 l e a ns y n c ) 从n p f 驱动程序读取网络数据报及统计信息。 数据报编码结构: i b p f h d r i d a i a i p a d d i n g i b p f h d r i d a t a i p a d d i n g i l2 )b o o l e a np a c k e t s e n d p a c k e t r l 队d a p t e r a d a p t e r o b j e c t l p p a c k e tl p p a c k e t b 0 0 l e a ns y n c ) 发送一个或多个数据报的副本。 l3 )b o o l e a np a c k e t s e t b u f f ( l p a d a p t e ra d a p t e r o b j e ct i n t d i m l 设置捕获数据报的内核级缓冲区大小。 基fa r p 欺骗的交换网络监听技术分析与研究 填充值。当系统收到一份目的端为本机的a r p 请求报文后,它就把硬件地 址填进去,然后用两个目的端地址分别替换两个发送端地址,并把操作字 段置为2 ,最后把它发送回去。 4 2a r p 协议工作原理 地址解析协议( a r p ) 用于实现i p 地址到网络接口硬件地址的映射。 当某主机要向以太网中另一台主机发送i p 数据时,它首先根据目的主 机的i p 地址在a r p 高速缓存中查询相应的以太网地址,a r p 高速缓存是主 机维护的一个i p 地址到相应以太网地址的映射表。如果查到匹配的结点, 则相应的以太网地址被写入以太网帧首部,数据报被加入到输出队列等候 发送。如果查询失败, a r p 会先保留待发送的i p 数据报,然后广播一个 询问目的主机硬件地址的a r p 报文,等收到回答后再将i p 数据报发送出 去。 a r p 工作时分为4 种情况: ( 1 ) 发送端是主机,希望将分组发送给同一网络上的另个主机。在这 种情况下,数据报首部中的逻辑地址即目的i p 地址必须映射为物理地 址。 ( 2 ) 发送端是主机,希望将分组发送给另一个网络上的另一个主机。在 这种情况下,这个主机要查找它的路由表,要找出到这个目的端的下 一跳( 路由器) 的i p 地址。若这个主机没有路由表,它就要查找默认 路由器的i p 地址。这个路由器的i p 地址就是必须映射为物理地址的 那个逻辑地址。 ( 3 ) 发送端是路由器,它已收到了数据报,该数据报要发送给另一个 网络上的主机。它先检查它的路由表,找出下一个路由器的i p 地址。 这个i p 地址就是必须映射为物理地址的那个逻辑地址。 ( 4 ) 发送端是路由器,它已收到了数据报,该数据报要发送给同一网 络上的个主机。数据报的目的i p 就是必须映射为物理地址的那个逻 辑地址。 基于a r p 欺骗的交换网络监听技术分析与研究 4 3a r p 协议漏洞 ( 1 ) 主机地址映射表是基于高速缓存,动态更新的。这是a r p 协 议的特色之一,但也是安全问题之一。由于正常的主机间m a c 地址刷 新都是有时限的,这样假冒者如果在下次更新前成功地修改了被攻击 机器上的地址缓存,就可以进行假冒或拒绝服务攻击了。 ( 2 ) a r p 请求以广播方式进行。这个问题是不可避免的,因为正是 由于主机不知道通信对方的m a c 地址,才需要进行a r p 广播请求的。 这样,攻击者就可以伪装a r p 应答,与广播者真j 下要通信的机器进行 竞争,还可以确定子网内机器什么时候会刷新m a c 地址缓存,以确保 最大时间限度地进行假冒。 ( 3 ) 可以随意发送a r p 应答包。这是由于a r p 协议是无状态的,任 何主机即使在没有请求的时候也可以做出应答只要应答包是有效的, 接收到应答包的主机就无条件地根据应答包的内容刷新本机高速缓 存。 ( 4 ) a r p 应答无需认证。由于a i 冲协议是一局域网协议,一般来讲, 一个局域网内的主机是属于同一个组织的,主机间的通信是相互信任, 出于传输效率上的考虑,在数据链路层就没有安全上的考虑。在使用 a r p 协议交换m a c 协议时,无需认证。只要是收到来自局域网内的 a r p 应答包,就将其中的m a c i p 协议对刷新到本机的高速缓存中。 4 4a r p 函数调甩关系 a 肿函数与内核中其他函数的关系。“如图4 2 所示: 基于a r p 欺骗的交换网络监听技术分析与研究 4 4 1 函数入口 图4 2 a r p 函数调用关系图 a r p 有2 个入口:第一,由e t h e r j n p u t 发出一软中断,a r p i n t r 中断例程被调用,检查完数据后该中断例程调用i n a r p i n p u t 函数。第 二,由e t h e r o u t p u t 函数在查询输出的硬件地址时,调用 a r p r e s o l v e 函数进行地址解析。 基于a r p 欺骗的交换网络监听技术分析与研究 4 4 2 主要函数 a r p i n t r 函数:当e t h e ri n p u t 函数接收到帧类型字段为 e t h e i 盯y p ea r p 的以太网帧时,产生优先级为n e t i s ra r p 的软件中 断,并将该帧挂在a r p 输入队列a r p i n t r q 的后面。当内核处理该软件中 断时,调用a r p i n t r 函数。该函数首先检查硬件类型和帧的长度,如果帧 的硬件类型指明为以太网地址,并且帧的长度大于或等于a r p h d r 结构的 长度加上两个硬件地址和两个协议地址的长度,然后判断协议地址的类型 是否是e t h e r t y p ei p 或e t h e r t y p ei p t r a i l e r s ,若是,则调用 i na r p i n p u t 函数,否则该帧将被丢弃。 i na r p i n p u t 函数:该函数由a r p i n t r 调用,用于处理接收到的a r p 请求回答。如果收到一个针对本机i p 地址的请求,则发送一个回答。如果 收到一个a r p 回答,会产生如下情况:如果其他主机发送了一个a r p 请求 或回答,其中发送方的i p 地址与本机相同,那么肯定有一个主机配置有误; 如果主机收到来自其他主机的请求或回答,对应的a r p 结点早已存在,但 硬件地址发生了变化,那么a r p 结点将被更新;主机可以被配置为代理 a r p 服务器,这种情况下。主机可以代其他主机响应a 融,请求,在回答中 提供其他主机的硬件地址。该函数步骤:查找匹配的接口和i p 地址:验证 发送方的硬件地址;检查发送方i p 地址;在路由表中搜索与发送方i p 地址 匹配的结点;更新已有结点或填充新的结点;检查发送方的硬件地址是否 己改变;记录发送方硬件地址;更新最近解析的a r p 结点:如果是a r p 回 答分组,则返回;如果目的i p 地址等于m y a d d r ,本机就是所要查找的目 的主机;检测本机是否目的主机的a r p 代理服务器;产生代理回答;完成 构造a 褂回答分组;用以太网帧首部填充s o c k a d d r ,将a r p 回答传送 至接口输出函数,并返回。 a r p w h o h a s 函数:通常由a r p r e s o l v e 调用,用于广播一个a r p 请求。a r p w h o h a s 只是简单调用下一部分将要介绍的a r p r e q u e s t 函 数。 a r p r e q u e s t 函数:由a r p w h o h a s 函数调用,用于广播一个a r p 请求。该函数建立一个a r p 请求分组,并将它传送到接口的输出函数。 基于a r p 欺骗的交换网络监听技术分析与研究 第5 章基于a r p 欺骗的监听技术 5 1 监听的实现 基于a r p 欺骗的网络监听是利用a r p 协议的漏洞来实现的。a r p 协 议虽然是一个高效的数据链路层协议,但是在局域网中,它的工作基础是 各主机相互信任,这就为网络监听提供了机会。在设计a r p 协议时,为 了减少网络上过多的a r p 数据通信,对一台主机来说,即使收到的a r p 应答并非因自己请求而得到的,它也会将其插入到自己的a r p 地址转换 表中,监听正是利用这一漏洞来实现的。 当监听者监听到同一网段内的 两台主机之间的通信时,会分别给这两台主机发送一个a r p 应答包,让 两台主机都把第三方监听者误认为是对方。这样,双方看似直接地实施了 通信连接,而实际上中间夹着监听主机。此时,监听者不仅可以完成监听, 而且监听者还可以随意更改数据包中地某些信息,并成功完成数据包转 发。 具体来说,a r p 欺骗是向被欺骗主机发送a r pr e p l y 数据包,把数 据包中的源i p 地址改成被欺骗主机j p 地址,源m a c 地址还是自己的 m a c 地址。假设被欺骗主机a ,b ,欺骗主机c 发送一个a r pr e p l r y 数 据报给a ,其中源i p 地址为b 的i p 地址,源m a c 地址为c 的机器的m a c 地址( i p r o u t e r 功能打开确保数据被转发) ,那么a 发送到b 的数据报 就发到c 的机器上了,同样对b 做相同到操作,那么a b 之间的数 据就会源源不断的通过c 的机器转发,直到一个正常的a r p 包更改了a 、 b 的a r p 缓存为止。 5 2 监听的检测 5 2 1 利用相关的工具软件监视a r p 缓存的异常的变化 因为i p 主机的a r p 缓存内容由于伪造的a r p 应答包而被破坏后,会 出现一些异常的情况,比如说有些i p 对应的m a c 地址完全相同。 基于a r p 欺骗的交换嘲络监听技术分析与研究 5 2 2 监听触渖数据包 通过监听通过交换机或者网关的所有a r p 数据包,与合法的 地址对库比较,如果数据包中包含的内容与库内内容不一致,可以确定发送 此数据包的主机正在进行a r p 欺骗。 5 2 3 定期探测数据包传送路径 准受害主机可以定期使用路径探测程序如t r a c e r o u t e 等对发出的 数据包所经过的路径进行检查,并与备份的合法路径进行检查。 5 2 4 使用s 佃定期轮询a r p 表,检查主机上的a r p 缓存 5 3 监听的防范 5 3 1 使用静态a r p 静态a r p 的特点是不需要通过向局域网中发送a r p 请求包来获得目标 机器的m a c 地址,那么伪造的a r p 应答包将不能更改a r p 缓存,这样可 以有效的防范监听。但是,整个网络中的所有机器,都必须要建立一个静态 的m a c 地址表,在大型网络中,会增加交换机的负担,造成效率下降。如 果机器更换,那么就要手工去更改m a c 地址表,很显然,在大型网络中这 种方式是不适用的。而且,w i n d o w s 下即使建立了静态的m a c 到i p 的 映射表,但是在收到了强制更新的a r p 包后,依然会刷新机器的映射表, 一样会被监听到。 5 3 2 使用加密技术 采用加密手段是一个很好的办法,因为如果监听到的数据都是以密文传 输的,那对入侵者即使抓取到了传输的数据信息,也是毫无意义的。 基于a r p 欺骗的交换舟络监昕技术分析与研究 5 3 3 加强身份验证 比如l ( e r b e r o s 是一种为网络通信提供可信第三方服务的面向开放 系统的认证机制,它提供了一种强加密机制使c l i e n t 端和s e r v e r 即使 在非安全的网络连接环境中也能确认彼此的身份,而且在双方通过身份认证 后,后续的所有通讯也是被加密的。在实现中也即建立可信的第三方服务器 保留与之通讯的系统的密钥数据库,仅k e r b e r o s 和与之通讯的系统本身 拥有私钥( p r i 玎ek e y ) ,然后通过p 刚盯ek e y 以及认证时创建的 s e s s l 0 nk e y 来实现可信的网络通讯连接。 5 3 4 采用第三层交换方式,取消了对a r p 协议的依赖 交换技术是在o s i 七层网络模型中鲍第二层,即数据链路层进行操作 的,因此交换机对数据包的转发是建立在m a c 地址基础之上的,第三层交 换技术也称为i p 交换技术,是在网络模型中地第三层完成数据包的高速转 发,取消了对a i 冲协议的依赖。 5 3 5 利用防范算法 通过在主机上安装执行防范算法的中间件,可以有效防范a r p 欺骗攻 击。 3 6 基于a r p 欺骗的交换网络监听技术分析与研究 其中i p 为初始置换,n ( x ) 是x 的逆,t 。i = l ,2 ,1 6 是一系列 的变换。e k ( m ) 表示明文m 在密钥k 的作用下产生的密文。 解密算法:n ( e k ) = n ( i p ) + t 。+ t z + t t e i p 【e k ( m ) 】 在r s a 算法中包含两个密钥一加密密钥和解密密钥。r s a 算法把每 一块明文转化为与密钥长度相同的密文块。密钥越长,加密效果越好,但 开销也随之增大,实际应用中一般采用6 4 b 密钥。 r s a 算法的描述如下: 公开密钥:n = q r ( q 、r 分别为两个互异的大素数,q 、r 必须保密) e 与( q 1 ) ( r 1 ) 互素 私有密钥:d = e 一1 m o d ( q 一1 ) ( r 一1 ) 加密:c = j i i e ( m o dn ) ,其中m 为明文,c 为密文。 解密:m = c d ( m o dn ) 6 2 加密技术的应用 6 2 1s s l 是利用公开密钥的加密技术( r s a ) 来作为用户端与主机端在传送机 密资料时的加密通讯协定。目前,大部分的w e bs e r v e r 及b r o w s e r 都广泛使用s s l 技术。因此,可以利用这个功能,将部分具有机密性质 的网页设定在加密的传输模式,如此即可避免信息在网络上传送时被其他 人监听。 6 2 2p g p 是一个公钥加密程序,p g p 公钥加密的信息只能用私钥解密。在传统 的加密方法中,通常一个密钥既能加密也能解密。使用p g p 公钥加密法, 可以广泛传播公钥,同时安全地保存好私钥。由于只有你可拥有私钥,所 以,任何人都可以用你的公钥加密写给你的信息,而不用担心信息被监听。 基于a r p 欺骗的交换网络监听技术分析与研究 6 2 3s s h 目前有一种可代替t e u 4 e t 服务的有效工具s s h 服务,主要是 想解决口令在网上明文传输的问题。s s h ( s e c u r es h e l l ) 服务分为两 部分:服务器端和客户端。s s h 客户端与服务器端通讯时,用户名和密码 均进行了加密,这就有效地防止了他人对密码的盗取。而且通信中所传送 的数据包都是“非明码”方式的。正因为s s h 采用加密传输方式,即使 数据被窃取,但对该数据解密也不是一件很容易的事,所以使用s s h 服 务远程维护服务器是非常安全的。 3 9 基于a r p 款骗的交换网络监听技术分析与研究 第7 章模型实现 7 1 模型功能概述 本模型根据网络监听现状,针对网络中普遍存在的监听现象,实现了 以下几方面的功能: ( 1 ) 主机扫描,获得局域网内指定i p 段中存活主机的i p 地址和m a c 地址; ( 2 ) 反嗅探扫描,获得局域网内指定i p 段中嗅探主机的i p 地址和m a c 地 址; ( 3 ) a r p 欺骗,欺骗局域网内指定的两台主机,使其相互发送接收的数据 报均通过本地主机; ( 4 ) 重置被欺骗主机,使被欺骗的两台主机恢复正常的工作状态。 7 2 模型开发环境 本模型运行环境为w i n d o w s 操作系统,开发中使用的工具是 v i s u a lc + + 6 0 ,驱动开发包为w i n p c a p ,w i n p c a p 驱动在v c + + 6 o 中的使用方法如下: ( 1 ) 下载并安装w p d p a c k31b e t a 4 ( w i n p c a pd r i v e r 和d l l ) , 安装完后重启: ( 2 ) 下载d e v e l o p er i sp a c k ,并解压至硬盘: ( 3 ) 设定i n c u l d e 目录及l i b r a r y 目录。打开v c 6 o ,选择 t o o l s o p t i o n s d i r e c t o r s ,在i n c l u d ef i l e s 中加入 w p d p a c k i n c l u d e ,在l i b r a r yf i l e s 中加入 w p d p a c k i n c l u d e : ( 4 ) 从w i n p c a p 开发包的i n c l u d e 文件夹中,拷贝p a c k e t 3 2 h , d e v i o c t l h 到工程,并且包含它们,运行库p a c k e t l i b 也一并拷贝 进来。 基于a r p 欺骗的交换网络监听技术分析与研究 7 3 模型总体介绍 本模型在w i n d o w s 系统环境下,利用w i n p c a p 驱动开发包和 a r p 协议漏洞实现了交换网络环境下w i n d o w s 底层数据包的捕获,包 括a r p 欺骗监听的实现和防范。模型界面如下: 7 4 模块功能介绍 7 4 1 获取指定i p 段内的i p 和m a c 信息 以本地主机的i p 和m a c 地址向指定i p 网段内的所有主机发送广播 a r pr e q u e s t 数据报,存活的主机就会发送a r pr e p l y 数据报,这样 就可以获得当前存活主机的列表。很多网关都对a r - pr e q u e s t 做了限 制,即非内网i p 发送的a r pr e o u e s t 数据报不会得到网关的回应,若 用内网其他主机的i p 来发送a r pr e q u e s t 数据报,如果填写的m a c 地址和相应的i p 不合,就会出现i p 冲突。所以应用本地主机的i p 和m a c 4 l 苎垒些鉴塑墼銮垫塑垡些堕垫查坌堑量竺塑 c i p a d d r e s s c t r l + m _ a d 由e s s l = ( c i p a d d r e s s c t r l 牛) g e t d l g i t e m ( i d c j p a d d r e s s l ) c i p a d d r e s s c t r l + m _ a d d r e s s 2 = ( c i p a d d r e s s c t r l ) g e t d l g i t e m ( i d c j p a d d r e s s 2 )
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中化学美育课件
- 高一政治课件
- 债务处理与离婚协议书结合的财产分配方案
- 离婚协议中财产分配、子女抚养及赡养费参考范本
- 创新型企业劳动合同终止与股权激励协议
- 企业违规使用假合同进行借款债务清偿协议
- 离婚协议中少数民族权益保障法律适用合同
- 汽车美容店租赁租金调整及支付方式合同
- 骶骨解剖课件
- 发展职业教育与技术创新方案
- GB/T 25052-2010连续热浸镀层钢板和钢带尺寸、外形、重量及允许偏差
- 新生儿肺炎讲解课件
- 3.4 商品质量品级评定与质量监督
- 一年级谁比谁多练习题(比较实用)
- 油管的上扣扭矩表
- 1:10000地形图更新与建库项目专业技术设计书1
- 丹佛斯变频器modbus通讯
- (中职)氯碱PVC生产工艺及设备8项目八 PVC生产教学课件
- 115个低风险组病种目录
- GB∕T 33425-2016 化工产品中防结块剂抗结块性能的评价方法
- GB∕T 21448-2017 埋地钢质管道阴极保护技术规范
评论
0/150
提交评论