⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1110.html

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

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -