Skip to content

锐捷共享上网最简单的方法及其原理分析

2009 十月 19
by 荒野无灯

锐捷认证在高校内使用得还是较为广泛的,基于802.1x ,采用帐号+绑定mac地址和IP地址的方法。对于Ethernet内部的 IP地址被盗用,绑定MAC地址与IP地址是比较有效的方法。

锐捷客户端本身可以检测到机器的多网卡,一发现有多网卡,则断网或者不能认证。如果使用homeshare等共享软件,它也可以检测到,貌似是五分钟断网一次(这个五分钟一般是学校可以设置的)。这样一来,如果要实现一个寝室开一个账号同时上几台机子,还是要花点时间来动点手脚了。关于如何突破锐捷的封鎖实现同寝室内共享上网,我这里就不说了,以前的文章中专门介绍过。这里讲一种最简单的实现共享上网的方法。
某日,一个同学刚开通了上网账号,但是他机子上没有锐捷网络客户端,我寝室里人又没有U盘,怎么办,我查看了他们寝室一个连了网的同学的机器的IP和MAC地址,然后把譔同学的IP和网卡MAC地址设置为与那位连了网的同学的一样。让我比较奇怪的事,两台同时开机接在同一个交 换机上的时候,居然不会报IP冲突,而且还可以同时上网。一般情况下如果在同一个局域网里存在两台相同IP的主机windows系统会报IP冲突的,想来windows 系统确定IP冲突是以同一IP被不同mac地址的网卡使用来判断的,既然两台机器的mac地址相同,windows也就识别不出IP冲突了,至于同时上网不冲突,回想了一下网络协议,也是有可能的,程序间的通信还需要使用端口,两个网卡收到同样的信息,其中一个正好监听正确接收,另一个因为端口号不同就废 弃掉。但如果两台机器程序使用同样的端口呢,是不是就会出现问题呢?

这个问题书上根本没有说,问了下老师,也只是说了下大概,还是请教万能的google吧:
下面是从网上搜索到的答案,原作者是谁不知,在此我要感謝他的劳动,让一个困扰我多时的问题得到解决。


1.MAC与IP 地址绑定原理

IP地址的修改非常容易,而MAC地址存储在网卡的EEPROM中,而且网卡的MAC地址是唯一确定的。因此,为了防止内部人员进行非法IP盗用(例 如盗用权限更高人员的IP地址,以获得权限外的信息),可以将内部网络的IP地址与MAC地址绑定,盗用者即使修改了IP地址,也因MAC地址不匹配而盗 用失败:而且由于网卡MAC地址的唯一确定性,可以根据MAC地址查出使用该MAC地址的网卡,进而查出非法盗用者。

目前,很多单位的内部网络,尤其是学校校园网都采用了MAC地址与IP地址的绑定技术。许多防火墙(硬件防火墙和软件防火墙)为了防止网络内部的IP地址被盗用,也都内置了MAC地址与IP地址的绑定功能。

从表面上看来,绑定MAC地址和IP地址可以防止内部IP地址被盗用,但实际上由于各层协议以及网卡驱动等实现技术,MAC地址与IP地址的绑定存在很大的缺陷,并不能真正防止内部IP地址被盗用。

2 破解MAC与IP地址绑定策略

2.1 IP地址和MAC地址简介

现行的TCP/IP网络是一个四层协议结构,从下往上依次为链路层、网络层、传输层和应用层。

Ethernet协议是链路层协议,使用的地址是MAC地址。MAC地址是Ethernet网卡在Ethernet中的硬件标志,网卡生产时将其存于 网卡的EEPROM中。网卡的MAC地址各不相同,MAC地址可以唯一标志一块网卡。在Ethernet上传输的每个报文都含有发送该报文的网卡的MAC 地址。

Ethernet根据Ethernet报文头中的源MAC地址和目的MAC来识别报文的发送端和接收端。IP协议应用于网络层,使用的地址为IP地 址。使用IP协议进行通讯,每个IP报文头中必须含有源IP和目的IP地址,用以标志该IP报文的发送端和接收端。在Ethernet上使用IP协议传输 报文时,IP报文作为Ethernet报文的数据。IP地址对于Ethernet交换机或处理器是透明的。用户可以根据实际网络的需要为网卡配置一个或多 个IP地址。MAC地址和IP地址之间并不存在一一对应的关系。

MAC地址存储在网卡的EEPROM中并且唯一确定,但网卡驱动在发送Ethernet报文时,并不从EEPROM中读取MAC地址,而是在内存中来 建立一块缓存区,Ethernet报文从中读取源MAC地址。而且,用户可以通过操作系统修改实际发送的Ethernet报文中的源MAC地址。既然 MAC地址可以修改,那么MAC地址与IP地址的绑定也就失去了它原有的意义。

2.2 破解方案

下图是破解试验的结构示意图。其内部服务器和外部服务器都提供Web服务,防火墙中实现了MAC地址和IP地址的绑定。报文中的源MAC地址与1P地 址对如果无法与防火墙中设置的MAC地址与1P地址对匹配,将无法通过防火墙。主机2和内部服务器都是内部网络中的合法机器;主机1是为了做实验而新加入 的机器。安装的操作系统是W2000企业版,网卡是3Com的。

试验需要修改主机1中网卡的MAC和IP地址为被盗用设备的MAC和IP地址。首先,在控制面板中选择“网络和拨号连接”,选中对应的网卡并点击鼠标 右键,选择属性,在属性页的“常规”页中点击“配置”按钮。在配置属性页中选择“高级”,再在“属性”栏中选择“Network Address”,在“值”栏中选中输人框,然后在输人框中输人被盗用设备的MAC地址,MAC地址就修改成功了。

然后再将IP地址配置成被盗用设备的IP地址。盗用内部客户机IP地址:将主机1的MAC地址和IP地址分别修改为主机2的MAC地址和IP地址。主 机1可以访问外部服务器,能够顺利地通过防火墙,访问权限与主机2没有分别。而且,与此同时主机2也可以正常地访问外部服务器,完全不受主机1的影响。无 论是主机2还是防火墙都察觉不到主机1的存在。主机1如果访问内部服务器,根本无需通过防火墙,更是畅通无阻了。

盗用内部服务器IP地址:将主机1的MAC地址和U地址修改为内部服务器的MAC地址和IP地址。主机1也提供Web服务。为了使效果更明显,主机1上提供的Web服务内容与内部服务器提供的内容不同。

因为在实际的实验中主机1与主机2连在同一个HUB上,主机2的访问请求总是先被主机1响应,主机2期望访问的是内部服务器,得到的却总是主机1提供 的内容。更一般地,主机2如果试图访问内部服务器,获得的到底是主机1提供的内容还是内部服务器提供的内容具有随机性,要看它的访问请求首先被谁响应,在 后面的分析中我们将进一步对此进行阐述。

盗用服务器的MAC和IP危害可能更大,如果主机1提供的Web内容和内部服务器中的内容一样,那么主机2将无法识别它访问的到底是哪个机器;如果Web内容中要求输人账号、密码等信息,那么这些信息对于主机1来说则是一览无遗了。

3 破解成功的原因

上面的实验验证了绑定MAC地址与IP地址的确存在很大的缺陷,无法有效地防止内部IP地址被盗用。接下来,将从理论上对该缺陷进行详细的分析。

缺陷存在的前提是网卡的混杂接收模式,所谓混杂接收模式是指网卡可以接收网络上传输的所有报文,无论其目的MAC地址是否为该网卡的MAC地址。正是 由于网卡支持混杂模式,才使网卡驱动程序支持MAC地址的修改成为可能;否则,就算修改了MAC地址,但是网卡根本无法接收相应地址的报文,该网卡就变得 只能发送,无法接收,通信也就无法正常进行了。

MAC地址可以被盗用的直接原因是网卡驱动程序发送Ethernet报文的实现机制。Ethernet报文中的源MAC地址是驱动程序负责填写的,但 驱动程序并不从网卡的EEPROM中读取MAC,而是在内存中建立一个MAC地址缓存区。网卡初始化的时候将EEPROM中的内容读入到该缓存区。如果将 该缓存区中的内容修改为用户设置的MAC地址,以后发出去的Ethernet报文的源地址就是修改后的MAC地址了。

如果仅仅是修改MAC地址,地址盗用并不见得能够得逞。Ethernet是基于广播的,Ethernet网卡都能监听到局域网中传输的所有报文,但是 网卡只接收那些目的地址与自己的MAC地址相匹配的Ethernet报文。如果有两台具有相同MAC地址的主机分别发出访问请求,而这两个访问请求的响应 报文对于这两台主机都是匹配的,那么这两台主机就不只接收到自己需要的内容,而且还会接收到目的为另外一台同MAC主机的内容。

按理说,两台主机因为接收了多余的报文后,都应该无法正常工作,盗用马上就会被察觉,盗用也就无法继续了;但是,在实验中地址被盗用之后,各台实验设备都可以互不干扰的正常工作。这又是什么原因呢?答案应该归结于上层使用的协议。

目前,网络中最常用的协议是TCP/IP协议,网络应用程序一般都是运行在TCP或者UDP之上。例如,实验中Web服务器采用的HTTP协议就是基于 TCP的。在TCP或者UDP中,标志通信双方的不仅仅是IP地址,还包括端口号。在一般的应用中,用户端的端口号并不是预先设置的,而是协议根据一定的 规则生成的,具有随机性。像上面利用IE来访问Web服务器就是这样。UDP或者TCP的端口号为16位二进制数,两个16位的随机数字相等的几率非常 小,恰好相等又谈何容易?两台主机虽然MAC地址和IP地址相同,但是应用端口号不同,接收到的多余数据由于在TCP/UDP层找不到匹配的端口号,被当 成无用的数据简单地丢弃了,而TCP/UDP层的处理对于用户层来说是透明的;所以用户可以“正确无误”地正常使用相应的服务,而不受地址盗用的干扰。

当然,某些应用程序的用户端口号可能是用户或者应用程序自己设置的,而不是交给协议来随机的生成。那么,结果又会如何呢?例如,在两台MAC地址和IP地址都相同的主机上,启动了两个端口相同的应用程序,这两个应用是不是就无法正常工作了呢?其实不尽然。

如果下层使用的是UDP协议,两个应用将互相干扰无法正常工作。如果使用的是TCP协议,结果就不一样了。因为TCP是面向连接的,为了实现重发机 制,保证数据的正确传输,TCP引入了报文序列号和接收窗口的概念。在上述的端口号匹配的报文中,只有那些序列号的偏差属于接收窗口之内的报文才会被接 收,否则,会被认为是过期报文而丢弃。TCP协议中的报文的序列号有32位,每个应用程序发送的第一个报文的序列号是严格按照随机的原则产生的,以后每个 报文的序列号依次加1。

窗口的大小有16位,也就是说窗口最大可以是216,而序列号的范围是232,主机期望接收的TCP数据的序列号正好也处于对方的接收范围之内的概率为1/216,可谓小之又小。 TCP的序列号本来是为了实现报文的正确传输,现在却成了地址盗用的帮凶。

4 解决MAC与IP地址绑定被破解的方法

解决MAC与IP地址绑定被破解的方法很多,主要以下几种。

交换机端口、MAC地址和IP地址三者绑定的方法;
代理服务与防火墙相结合的方法;
用PPPoE协议进行用户认证的方法;
基于目录服务策略的方法;
统 一身份认证与计费软件相结合的方法等

喜欢这篇文章吗?

请订阅本站 RSS feed填写您的邮件地址,订阅我们的精彩内容:,欢迎点击这里捐赠以支持荒野无灯转播到腾讯微博 转播到腾讯微博

作者:荒野无灯
出处:Hacklog【Hacklog】

声明: 本站遵循 署名-非商业性使用-相同方式共享 3.0 共享协议. 转载请注明转自Hacklog【荒野无灯weblog】

本文链接: http://ihacklog.com/?p=2729

16 Responses Post a comment
  1. 驿路迷尘 permalink
    十一月 15, 2010

    我们学校图书馆机房也是用的锐捷 我们同学弄到了图书管机房的密码 前段时间还可以用图书馆的帐号和密码上网 现在学校把图书管机房的IP绑定了 但是我们还是知道图书馆的密码 现在怎么能继续用图书馆的帐号上网呀

    • 十一月 16, 2010

      如果账号是绑定的,如IP绑定,MAC绑定,NAS PORT 绑定,NAS IP 绑定等,我们学样是这几个同时绑定,这样,即使你知道了IP,MAC,用户名和密码,也只能寝室的人用(一个寝室占用一个NAS PORT ,也就是接入层交换机的端口)。

  2. 九月 18, 2010

    有道理

  3. 十月 19, 2009

    学习了 呵呵 挺好啊

  4. 十月 19, 2009

    看完后我发觉这个方法我试过了,但是还是不行。
    另外,现在我的情况是:通过路由器(路由器克隆了MAC地址),只连一台主机,但是只能上QQ不能浏览网页。
    还有就是如果接接入网线WAN口,通过路由器拨号,接两台主机可以上QQ不能看网页;接LAN口的话,通过主机1拨号,主机1能上QQ,主机而什么都不行。

    • 十月 19, 2009

      @mimzyx, 只能上QQ不能浏览网页?不会是你路由器的DNS没有设置好吧?你说的拨号?难道你用的是电信的网?我这里说的是校园里的锐捷认证。

      • 十月 19, 2009

        @荒野无灯, DNS没问题,就是校园网,之前需要用锐捷客户端拨号,后来不懂怎么就不需要了。

        • 十月 20, 2009

          @mimzyx, 锐捷好像不能用路由拨号的,所以我们一般用小交換机。一般只要确保两个主机连在同一个小交換机上是可以实现同时上网的。当然,这里我说的“简单方法”并不适合长期共享上网,临时用下可以,因为大量无用广播包可能会导致网速慢。甚至掉线。我一般是用共享上网软件实现。

          • kent permalink
            六月 11, 2010

            锐捷3.95的共享怎么搞啊?以前旧版本的可以,升级到3.95版本后用过一段时间才不行了。你那里用什么好的软件没,可以发给我不?对了,我们学校的服务器好像要检验MD5值,所以用替换拨号软件好像都不行,你在着方面有什么高招没?我的邮箱是ccming0514@126.com

      • Joerge permalink
        八月 28, 2010

        荒野无灯,你可能有所不知,现在校园网是用锐捷先认证然后再进行拨号的,我的想法是先用锐捷先认证一次,这时候ip和mac地址绑定,然后再将电脑先接路由器,在里面进行mac地址克隆,然后再wan设置里面有一项802.1x+静态ip,将ip设为你原来电脑的ip,然后账号密码设为拨号的账号密码,这时候ip和mac都与你电脑相同,而且又可以拨号,不过我还没又试过吃方法是否可行

      • 驿路迷尘 permalink
        十一月 15, 2010

        我这里有种新情况 大侠们帮忙分析一下

      • 驿路迷尘 permalink
        十一月 15, 2010

        我咋登陆不上

  5. 十月 19, 2009

    强~分析得很细致!
    第三种应该是比较好的解决方案,第一种应该要用L3的交换机才可以实现

  6. 十月 19, 2009

    抓紧占座后慢慢看。正需要呢。

Leave a Reply

Allowed Tags - You may use these HTML tags and attributes in your comment.

<a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <q cite=""> <strong>

 :wink:  :-|  :-x  :twisted:  :)  8-O  :(  :roll:  :-P  :oops:  :-o  :mrgreen:  :lol:  :idea:  :-D  :evil:  :cry:  8)  :arrow:  :-?  :?:  :!:

Note: You may use basic HTML in your comments. Your email address will not be published.

Subscribe to this comment feed via RSS