HanDs
管理员

[Visual Studio文章] 嗅探的基本原理2 





学习中请遵循国家相关法律法规,黑客不作恶。没有网络安全就没有国家安全

本站需要登陆后才能查看

  五   常用的SNIFF     
    
       很少有原因会让你自己亲自动手来做一个自己的SNIFF,除非你是想了解他的原理,或者是其他一些特别的原因,比如你要在某个特殊的环境拦截一些特殊的数据包。下面我们就来看看一些在网络上经常使用的SNIFF。     
    
    
           (1)windows环境下    
   
                                
         windows环境下当然是大名鼎鼎的netxray以及snifferpro了,实际上很多人都是用他在windows环境下抓包来分析,不过我想很少有人笨到去在别人的机器上安装一个图形界面的SNIFF,除非他和管理员很熟悉........netxray的使用就不多说了,反正windows下的东西就是click,click,click,非常的方便用户。     
    
    
            (2)UNUX环境下     
    
       UNUX环境下的sniff可以说是百花齐放,一抓就是一大把,如sniffit,snoop,tcpdump,dsniff等都是比较常见的,他们都有一个好处就是发布源代码,可以让你研究,当然也都是免费的:)     
    
    
                   1.   sniffit     
    
     sniffit可以运行在Solaris、SGI和Linux等平台上,由LawrenceBerkeley   Laboratory  实验室开发的一个免费的网络监听软件。最近Sniffit0.3.7也推出了NT版本,并也支持WINDOWS2000.    
   
                          使用方法:    
                          -v   显示版本信息    
                          -a   以ASCII形式将监听的结果输出。    
                          -A   在进行记录时,所有不可打印的字符都用代替    
                          -b   等同于同时使用参数-t   &   -s。          
                          -d   将监听所得内容以十六进制方式显示在当前终端     
                          -p   记录连接到的包,0为所有端口。缺省为0。         
                          -P   protocol选择要检查的协议,缺省为TCP。可能的选择有IP、TCP、ICMP、UDP和他们的组合。    
                          -s   指定sniffer   检查从   发送的数据包。   -t   指定sniffer检查发送到的数据包。    
                          -i   进入交互模式         
                          -l   设定数据包大小,default是300字节         
                          注:[email protected],比如   -t   192.168.@    
                          -t和-s只适用于TCP/UDP数据包,对于ICMP和IP也进行解释。但如果只选择了-p参数,则只用于TCP和UDP包。    
   
                          举例说明:    
   
                          #sniffit   -a   -p   21   -t   xxx.xxx.xxx.xxx    
   
                          监听流向机器xxx.xxx.xxx.xxx的21端口(FTP)的信息,并以ASCII显示    
   
                          #sniffit   -d   -p   23   -b   xxx.xxx.xxx.xxx    
   
                          监听所有流出或流入机器xxx.xxx.xxx.xxx的23端口(telnet)的信息,并以16进制显示    
   
                          你可以在这里找到sniffithttp://reptile.rug.ac.be/~coder/sniffit/sniffit.html     
    
               2.   snoop     
    
          snoop默认情况安装在Solaris下,是一个用于显示网络交通的程序,不过SNIFF是把双刃剑,既然管理员能用他来监视自己的网络,当然一个心怀恶意的入侵者也可以用他来SNIFF自己感兴趣的内容。值得一提的是,SNOOP被发现存在一个缓冲区溢出漏洞,当以导致入侵者以运行snoop(通常为root)的身份远程进入系统。这是题外话,暂且就此打住。    
   
   
                          使用方法:    
                          [   -a   ]   #   Listen   to   packets   on   audio    
                          [   -d   device   ]   #   settable   to   le?,   ie?,   bf?,   tr?    
                          [   -s   snaplen   ]   #   Truncate   packets    
                          [   -c   count   ]   #   Quit   after   count   packets    
                          [   -P   ]   #   Turn   OFF   promiscuous   mode    
                          [   -D   ]   #   Report   dropped   packets    
                          [   -S   ]   #   Report   packet   size    
                          [   -i   file   ]   #   Read   previously   captured   packets    
                          [   -o   file   ]   #   Capture   packets   in   file    
                          [   -n   file   ]   #   Load   addr-to-name   table   from   file    
                          [   -N   ]   #   Create   addr-to-name   table    
                          [   -t   r|a|d   ]   #   Time:   Relative,   Absolute   or   Delta    
                          [   -v   ]   #   Verbose   packet   display    
                          [   -V   ]   #   Show   all   summary   lines    
                          [   -p   first[,last]   ]   #   Select   packet(s)   to   display    
                          [   -x   offset[,length]   ]   #   Hex   dump   from   offset   for   length    
                          [   -C   ]   #   Print   packet   filter   code    
   
   
                          例如:    
   
                          #snoop   -o   saved   A   B    
   
                          监听机器A与B的谈话,并把内容存储于文件saved中     
    
                    3.   tcpdump     
    
         tcpdmp也算是一个很有名气的网络监听软件,FREEBSD还把他附带在了系统上,是一个被很多UNIX高手认为是一个专业的网络管理工具。     
        
                          使用方法:     
                       tcpdump采用命令行方式,它的命令格式为:    
                          tcpdump   [   -adeflnNOpqStvx   ][   -c   数量   ][   -F   文件名   ][   -i网络接口   ][   -r   文件名][    
                          -s   snaplen   ][   -T   类型   ][   -w   文件名   ][表达式]    
                          1.   tcpdump的选项介绍    
                          -a      将网络地址和广播地址转变成名字;    
                          -d      将匹配信息包的代码以人们能够理解的汇编格式给出;    
                          -dd        将匹配信息包的代码以c语言程序段的格式给出;    
                          -ddd     将匹配信息包的代码以十进制的形式给出;    
                          -e      在输出行打印出数据链路层的头部信息;    
                          -f      将外部的Internet地址以数字的形式打印出来;    
                          -l      使标准输出变为缓冲行形式;    
                          -n      不把网络地址转换成名字;    
                          -t      在输出的每一行不打印时间戳;    
                          -v   输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息;    
                          -vv      输出详细的报文信息;    
                          -c      在收到指定的包的数目后,tcpdump就会停止;    
                          -F      从指定的文件中读取表达式,忽略其它的表达式;    
                          -i      指定监听的网络接口;    
                          -r      从指定的文件中读取包(这些包一般通过-w选项产生);    
                          -w      直接将包写入文件中,并不分析和打印出来;    
                          -T   将监听到的包直接解释为指定的类型的报文,常见的类型有rpc和snmp     
    
                2.   tcpdump的表达式介绍     
    
          表达式是一个正则表达式,tcpdump利用它作为过滤报文的条件,如果一个报文满足表达式的条件,则这个报文将会被捕获。如果没有给出任何条件,则网络上所有的信息包将会被截获。     
    
    
           在表达式中一般如下几种类型的关键字,一种是关于类型的关键字,主要包括host,net,port,例如   host    
                          210.27.48.2,指明   210.27.48.2是一台主机,net   202.0.0.0指明    
                          202.0.0.0是一个网络地址,port   23指明端口号是23。如果没有指定类型,缺省的类型是host.    
   
                              第二种是确定传输方向的关键字,主要包括src   ,   dst   ,dst   or   src,   dstand   src   ,这些关键字指明了    
                          传输的方向。举例说明,src   210.27.48.2,指明ip包中源地址是210.27.48.2   ,   dst   net   202.0.0.0    
                          指明目的网络地址是202.0.0.0   。如果没有指明方向关键字,则缺省是src   ordst关键字。    
   
                                
             第三种是协议的关键字,主要包括fddi,ip,arp,rarp,tcp,udp等类型。Fddi指明是在FDDI(分布式光纤数据接口网络)上的特定的网络协议,实际上它是"ether"的别名,fddi和ether具有类似的源地址和目的地址,所以可以将fddi协议包当作ether的包进行处理和分析。其他的几个关键字就是指明了监听的包的协议内容。如果没有指定任何协议,则tcpdump将会监听所有协议的信息包。     
    
    
            除了这三种类型的关键字之外,其他重要的关键字如下:gateway,broadcast,less,greater,还有三种    
                          逻辑运算,取非运算是   'not   '   '!   ',与运算是'and','&&';或运算   是'or'   ,'||'。     
    
    
                          举例使用:    
   
                          #tcpdump   host   AAA.BBB.CCC.DDD    
   
                          将监听IP地址为AAA.BBB.CCC.DDD的机器的通话    
   
                          #tcpdump   tcp   port   23   host   AAA.BBB.CCC.DDD    
   
                          将监听IP地址为AAA.BBB.CCC.DDD的机器的23端口的通话     
    
                  4.   dsniff     
    
        之所以要谈谈dsniff,是因为他不仅仅是一个sniff,在他的整个套件包中,包含了很多其它有用的工具,如arpspoof,dnsspoof,macof,tcpkill等等,SNIFF的手段更加的多样和复杂化。dsniff是由DugSong开发的你可以在他的主页上找到这个工具。    
                          目前dsniff支持OpenBSD   (i386),Redhat   Linux   (i386),   和Solaris   (sparc).    
                          并且在FreeBSD,   DebianLinux,   Slackware   Linux,    
                          AIX,和HP-UX上也能运转得很好。但是dsniff需要几个其他的第三方软件进行支持,他们分别是,BerkeleyDB    
                          ,OpenSSL,   libpcap,    
                          libnet,libnids。如果条件允许的话,你最好能够亲自读一读dsniff的源代码,你可以在http://naughty.monkey.org/~dugsong/    
                          找到dsniff。     
    
    
                  六   深入sniff     
    
           单纯的sniff的功能始终是局限的,所以在大多数的情况下,sniff往往和其他手段结合起来使用,sniff和spoof已及其他技术手段结合在一起对网络构成的危害是巨大的。单纯的sniff好比缺了一只腿,无法发挥大的作用,例如在sniff原理一节中我们讨论的例子里,我一再的强调我们使用的是一个普通的HUB进行连接是有原因的,如果我们把在图一中的HUB用一个switch代替,那情况就要复杂一些了,如图二所示:     
                            图(二)     
    

嗅探的基本原理2(转载) - lijm20085 - lijm20085的博客


     
                           在图二中,我们的机器A、B、C与Switch相连接,而Switch通过路由器Router访问外部网络。我们先来了解Switch的工作原理:     
    
       在我们图一中的HUB只是简单地把所接收到的信号通过所有端口(除了信号来的那个口)重复发送出去不同,而图二中的Switch却可以检查每一个收到的数据包,并对数据包进行相应的处理。在Switch内保存着每一个网段上所有节点的物理地址,只允许必要的网络流量通过Switch。举例来说,当Switch接收到一个数据包之后,根据自身保存的网络地址表检查数据包内包含的发送和接收方地址。如果接收方位于发送方网段,该数据包就会被Switch丢弃,不能通过交换机传送到其它的网段;如果接收方和发送方位于两个不同的网段,该数据包就会被Switch转发到目标网段。这样,通过交换机的过滤和转发,可以有效避免网络广播风暴,减少误包和错包的出现。顺便说一句,现在Switch和HUB的价格相去无几,所以hub正逐渐被网络交换机取代。     
    
    
            现在回到我们的例子中来,在图二中仍然和图一一样,我们假设机器A上的管理员为了维护机器C,使用了一个FTP命令向机器C进行远程登陆,那么在这里,数据是这样走的:首先机器A上的管理员输入的登陆机器C的FTP口令经过应用层FTP协议、传输层TCP协议、网络层IP协议、数据链路层上的以太网驱动程序一层一层的包裹,最后送到了物理层,我们的网线上。接下来数据帧送到了Switch上,而Switch检查数据帧中的目的地址,并在他自身保存的网络地址表中知道了他应该把这数据帧发到机器C那里,于是,接下来机器C接收到了从A发来的信息,发现他是发给自己的信息,于是进行分析处理。     
    
    
         OK,现在我们机器B上的管理员的好奇心只能深深的埋藏在心里了,因为数据包根本就没有经过他,就算他把自己的网卡设置成混杂模式也是有力无处使。     
    
    
           在了解在一个Switch环境下原理后,我们结合一些手段去设法sniff,是的,我们可以做到这一点,有许多的手段可以让管理员B满足他的好奇心,在下面我会提出几个办法,当然只是其中的一些办法而已。    
   
   
                          1   ARP   Spoof     
    
        在基于IP通信的内部网中,我们可以使用   ARP Spoof的手段,了解什么是ARPSpoof的前提你先要明白一下什么是ARP和RARP协议,什么是MAC地址,什么又是IP地址。ARP协议是地址转换协议,RARP被称为反向地址转换协议,他们负责把IP地址和MAC地址进行相互转换对应。     
    
    
           ARP   Spoof   攻击的根本原理是因为计算机中维护着一个ARP高速缓存,并且这个ARP高速缓存是随着计算机不断的发出ARP请求和收到ARP响应而不断的更新的,ARP高速缓存的目的是把机器的IP地址和MAC地址相互映射。你可以使用 arp命令来查看你自己的 ARP高速缓存。现在设想一下,一个Switch工作在数据链路层,他根据MAC地址来转发他所接收的数据包,而计算器维护的ARP 高速缓存却是动态的......你想到什么了吗?     
    
         为了加深理解,现在给我们的机器编上号,

                           机器A:IP地址为   10.0.0.1  ,MAC地址为   20-53-52-43-00-01,     
                           机器B:IP地址为   10.0.0.2   ,MAC地址为   20-53-52-43-00-02,

                           机器C:IP地址为   10.0.0.3   ,MAC地址为   20-53-52-43-00-03   。

    现在机器B上的管理员是个聪明的家伙,他向机器A发出一个   ARP Reply(协议没有规定一定要等ARP   Request出现才   能发送ARPReply,也没有规定一定要发送过ARP Request才能接收ARPReply),

                      其中的目的IP地址为10.0.0.1,目的MAC地址为 20-53-52-43-00-01    
                          ,而源IP地址为10.0.0.3, 源MAC地址为  20-53-52-43-00-02   ,

                 好了,现在机器A更新了他的 ARP高速缓存,并相信了

                  IP地址为  10.0.0.3   的机器的MAC地址是     20-53-52-43-00-02  。当机器A上的管理员发出一条FTP命令时---ftp10.0.0.3,数据包被送到了Switch,Switch查看数据包中的目的地址,发现MAC为20-53-52-43-00-02,于是,他把数据包发到了机器B上。再设想一下,如果不想影响A和C之间的通信该怎么办?你可以同时欺骗他们双方,来一个 man-in-middle   。     
    
          当然,在实际的操作中你还需要考虑到一些其他的事,比如某些操作系统在会主动的发送ARP请求包来更新相应的ARP入口等。    
   
                          2.   MAC   Flooding     
    
             在上面我们曾经提到过,Switch之所以能够由数据包中目的MAC地址判断出他应该把数据包发送到那一个端口上是根据他本身维护的一张地址表。这张地址表可能是动态的也可能是静态的,这要看Switch的厂商和Switch的型号来定,对于某些Switch来说,他维护的是一张动态的地址表,并且地址表的大小是有上限的,比如 3comSuperstack   Switch   3300   (3c16981   Hardware   v.1  Softwarev.2.10) 就是这样一种Switch,我们可以通过发送大量错误的地址信息而使SWITCH维护的地址表“溢出”,从而使他变成广播模式来达到我们要sniff 机器A与机器C之间的通信的目的。    
   
                          3.   Fake   the   MAC   address     
    
            伪造MAC地址也是一个常用的办法,不过这要基于你网络内的Switch是动态更新其地址表,这实际上和我们上面说到的ARP  Spoof有些类似,只不过现在你是想要Switch相信你,而不是要机器A相信你。因为Switch是动态更新其地址表的,你要做的事情就是告诉Switch:HI,我是机器C。换成技术上的问题你只不过需要向Switch发送伪造过的数据包,其中源MAC地址对应的是机器C的MAC地址,现在Switch就把机器C和你的端口对应起来了。不过其中存在一个问题,现在机器C也会说了:HI,Switch老大,我才是机器C呢!,现在你该怎么办?切,还用问!让他说不了话就可以了,DOS还是其他什么,随便你了......    
   
   
                          4.   ICMP   Router   Advertisements    
   
                                
       这主要是由ICMP路由器发现协议(IRDP)的缺陷引起的,在Windows95、98、2000及SunOS、Solaris2.6等系统中,都使用了IRDP协议,SunOS系统只在某些特定的情况下使用该协议,而Windows95,Windows95b,    
                          Windows98,   Windows98se,    
                          和Windows2000都是默认的使用IRDP协议。IRDP协议的主要内容就是告诉人们谁是路由器,设想一下,一个HACK利用IRDP宣称自己是路由器的情况会有多么的糟糕!所有相信HACK的请求的机器把他们所有的数据都发送给HACK所控制的机器.........    
   
   
                          5.   ICMP   Redirect     
    
             所谓ICMP重定向,就是指告诉机器向另一个不同的路由发送他的数据包,ICMP重定向通常使用在这样的场合下,假设A与B两台机器分别位于同一个物理网段内的两个逻辑子网内,而A和B都不知道这一点,只有路由器知道,当A发送给B的数据到达路由器的时候,路由器会向A送一个ICMP重定向包裹,告诉A:HI,别再送数据给我转交了,你就直接送到B那里就可以了。设想一下,一个hack完全可以利用这一点,使得A发送给B的数据经过他。     
    
    
         上面提到的这些方法只不是其中的一些,为了配合sniff能够工作得更有效率,还有其他许多的办法,其实sniff的目的说穿了只有一个,就是抓包,从抓包这个概念上引伸下去,所有为了能够抓到网络上的信息包而采用的技术都可以归入sniff,单纯的sniff是没有什么效率的。你还能想到什么吗?进攻路由器,在路由器上放置sniff......,在系统内核中植入sniff......等等。    
   
   
   
                          七   如何防止SNIFF     
    
                防止sniff最有效的手段就是进行合理的网络分段,并在网络中使用交换机和网桥,在理想的情况下使每一台机器都拥有自己的网络段,当然这会使你的网络建设费用增加很多,所以你可以尽量使相互信任的机器属于同一个网段,使他们互相之间不必担心sniff的存在。并在网段于网段间进行硬件屏障。你也可以使用加密技术对你在网络中传送的敏感数据如户ID或口令,你的银行帐号,商业机密等进行加密,你可以选用SSH等加密手段。为了防止ARP欺骗,你可以使用永久的ARP缓存条目,反正上面的攻击手段和原理你也看了,你就反过来想想该怎么办好了。不过有盾必有矛,平时的安全意识才是最重要的。     
    
    
                 (注:以下关于AntiSniff的介绍取至backend翻译整理的L0pht   AntiSniff技术文档一文)     
                                    
             当你做做层层保护后,你还是怀疑自己的网络上存在sniff该怎么办?L0pht小组为了探测sniff专门发布了一个软件 AntiSniff,当然这个软件不是免费的:),AntiSniff工具用于检测局域网中是否有机器处于混杂模式,AntiSniff  Version1.x被设计为运行在以太网的Windows系统中,提供了简单易用的图形用户界面,AntiSniffVersion1.x 主要工作在非交换环境下的本地网段中,如果运行在交换环境下其功能将大打折扣。AntiSniffVer  2.0将不但能在本地网段中,而且能够穿过路由器和交换机进行工作。    
   
                          ◆   操作系统类特殊测试    
   
                          Linux   内核测试     
    
         旧版本的Linux内核存在一个奇怪的特性,可被用于确定机器是否处于混杂模式。在正常情形下,网卡会过滤和丢弃那些目标地址不是本机MAC地址或以太网广播地址的数据包。如果数据包的目标地址为本机以太网地址或广播地址,将传送给内核进行处理,因为其认为该以太网数据帧包含了本机的正确IP地址或该网络广播地址。如果网卡处于混杂模式,则每个数据包都会传递给操作系统进行分析或处理。许多版本的Linux内核只检查数据包中的IP地址以确定是否存放到IP堆栈中进行处理。为了利用这一点,AntiSniff构造一个无效以太网地址而IP地址有效的数据包。对于使用了这些内核版本和处于混杂模式的Linux系统,由于只检查到IP地址有效而将其接收并存放到相应堆栈中。通过在这个伪造的以太网数据帧中构造一个ICMPECHO请求,这些系统会返回响应包(如果处于混杂模式)或忽略(如果不处于混杂模式),从而暴露其工作模式。当伪造的以太网数据帧中的IP地址设置为网络广播地址时这个测试非常有效。AntiSniff的使用者可以修改伪造的以太网址,缺省值为66:66:66:66:66:66。     
    
    
                    NetBSD     
    
       许多NetBSD内核具有与上述Linux内核相同的特性,不过伪造以太网数据帧中的IP地址必须设为广播地址。    
   
                          Windows   95/98/NT     
    
      根据对网络驱动程序头文件的了解,可以知道当处于混杂模式时,Microsoft的操作系统会确切地检查每个包的以太网地址。如果与网卡的以太网地址匹配,将作为目标IP地址为本机的数据包存放到相应堆栈中处理。可以被利用的一点是系统对以太网广播包的分析。在正常情形下,例如机器工作在非混杂模式下,网卡只向系统内核传输那些目标以太网址与其匹配或为以太网广播地址(ff:ff:ff:ff:ff:ff)的数据包。如果机器处于混杂模式下,网络驱动程序仍然会检查每个数据包的以太网地址,但检查是否为广播包时却只检查头8位地址是否为0xff。因此,为了使处于混杂模式的系统返回响应信息,AntiSniff构造以太网地址为ff:00:00:00:00:00且含有正确目标IP地址的数据包,当Microsoft的操作系统接收到这个数据包时,将根据网络驱动程序检查到的细微差别而返回响应包(如果处于混杂模式)或丢弃这个数据包(如果处于非混杂模式)。     
    
    
             需要注意的是,这个检查与使用的网络驱动程序有关。Microsoft缺省的网络驱动程序具有以上特性,大多数的厂商为了保持兼容性也继承了这些特性。不过有些网卡会在其硬件层中检查以太网地址的头8位,所以可能会无论系统真正的状态是什么都总是返回正值。关于这类网卡和驱动程序请访问AntiSniff     Ver1.x的web网站。    
   
                          ◆   DNS   测试    
   
                           进行DNS测试的原因是许多攻击者使用的网络数据收集工具都对IP地址进行反向DNS解析,因为他们希望根据域名寻找更有价值的主机。例如joepc1.foo.bar对攻击者的吸引力往往不如payroll.foo.bar这种商业域名。此时这些工具就由被动型网络工具变为主动型网络工具了。而不监听网络通讯的机器不会试图反向解析数据包中的IP地址。为了利用这一点,AntiSniff    
                          Ver1.x使自身处于混杂模式下,向网络发送虚假目标IP地址的数据包,然后监听是否有机器发送该虚假目标IP地址的反向DNS查询。伪造数据包的以太网地址、检查目标、虚假目标IP地址可由用户定制。    
   
   
                          ◆   网络和主机响应时间测试    
   
                           这种测试已被证明是最有效的。它能够发现网络中处于混杂模式的机器,而不管其操作系统是什么。警告,这个测试会在很短的时间内产生巨大的网络通讯流量。进行这种测试的理由是不处于混杂模式的网卡提供了一定的硬件底层过滤机制。也就是说,目标地址非本地(广播地址除外)的数据包将被网卡的固件丢弃。在这种情况下,骤然增加、但目标地址不是本地的网络通讯流量对操作系统的影响只会很小。而处于混杂模式下的机器则缺乏此类底层的过滤,骤然增加、但目标地址不是本地的网络通讯流量会对该机器造成较明显的影响(不同的操作系统/内核/用户方式会有不同)。这些变化可以通过网络通讯流量工具监视到。     
    
    
             根据以上要点,AntiSniff   Ver   1.x     
          首先利用ICMPECHO请求及响应计算出需要检测机器的响应时间基准和平均值。在得到这个数据后,立刻向本地网络发送大量的伪造数据包。与此同时再次发送测试数据包以确定平均响应时间的变化值。非混杂模式的机器的响应时间变化量会很小,而混杂模式的机器的响应时间变化量则通常会有1-4个数量级。为了对付攻击者和入侵者们最常用的多种工具,AntiSniff进行了三种网络饱和度测试:SIXTYSIX、TCPSYN和THREEWAY。    
   
   
                                    
             *SIXTYSIX测试构造的数据包数据全为0x66。这些数据包不会被非混杂模式的机器接收,同时方便使用常见的网络监听/分析工具(如tcpdump和snoop等)记录和捕获。     
    
    
           *TCPSYN测试构造的数据包包含有效的TCP头和IP头,同时TCP标志域的SYN位被设置。    
   
                                 
          *THREEWAY测试采取的原理基本上与TCPSYN一样,但更复杂些。在这种测试中两个实际不存在的机器间多次建立完整的TCP三方握手通讯。它能够更好地欺骗那些骇客工具。     
    
    
                AntiSniff   Ver1.x中能够通过以上三种数据包测试发现正处于混杂模式机器的测试方法最好周期性地进行和与以前的数据比较。响应时间测试第一次运行的数据还能够用于分析一个大型网络在flooding和非flooding状态时的性能,并帮助工程师调整网络性能。一旦确信本地网络已运行在正常(没有未经允许而处于混杂模式的机器)状态,就应该设置AntiSniff工具周期性运行。只要发现某台机器性能(响应时间)发生数量级的变化,一般就能确定其正处于混杂模式。这种方法不需比较两台独立系统间的性能数据,而只需比较同一台机器不同时候的数据就能确定该机器是否处于混杂模式。    
   
   
                          八 结尾     
    
        本文旨在向你描述sniff的基本原理,为的是要使你不仅仅能够了解什么是sniff而已,而是要明白sniff运转的根本原理,文章参考了大量的资料,牵涉到直接引用的已经注明出处和作者,非常的感谢他们。在此还要感谢W.Richhard.Stevens,虽然其人已逝,但留下的TCP/IP三卷本真是造福了大家,文章的很多地方也是拜他老人家指点迷经才得以感悟。最后还要感谢雀巢咖啡,让我得以熬夜把这篇文章写完,呵呵,谢谢大家。   


学习中请遵守法律法规,本网站内容均来自于互联网,本网站不负担法律责任
基本 原理 2
#1楼
发帖时间:2016-7-9   |   查看数:0   |   回复数:0
游客组
快速回复