如何破解MAC地址与IP地址绑定策略

上传人:飞*** 文档编号:5328966 上传时间:2017-08-29 格式:DOCX 页数:12 大小:33.99KB
返回 下载 相关 举报
如何破解MAC地址与IP地址绑定策略_第1页
第1页 / 共12页
如何破解MAC地址与IP地址绑定策略_第2页
第2页 / 共12页
如何破解MAC地址与IP地址绑定策略_第3页
第3页 / 共12页
如何破解MAC地址与IP地址绑定策略_第4页
第4页 / 共12页
如何破解MAC地址与IP地址绑定策略_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《如何破解MAC地址与IP地址绑定策略》由会员分享,可在线阅读,更多相关《如何破解MAC地址与IP地址绑定策略(12页珍藏版)》请在金锄头文库上搜索。

1、 1 / 12如何破解 MAC 地址与 IP 地址绑定策略互联网 1 引言 对“IP 地址盗用”的解决方案绝大多数都是采取 MAC 与 IP 地址绑定策略,这种做法是十分危险的,本文将就这个问题进行探讨。在这里需要声明的是,本文是处于对对 MAC 与 IP 地址绑定策略安全的忧虑,不带有任何黑客性质。 1.1 为什么要绑定 MAC 与 IP 地址 影响网络安全的因素很多,IP 地址盗用或地址欺骗就是其中一个常见且危害极大的因素。现实中,许多网络应用是基于 IP 的,比如流量统计、账号控制等都将 IP 地址作为标志用户的一个重要的参数。如果有人盗用了合法地址并伪装成合法用户,网络上传输的数据就可

2、能被破坏、窃听,甚至盗用,造成无法弥补的损失。 盗用外部网络的 IP 地址比较困难,因为路由器等网络互连设备一般都会设置通过各个端口的 IP 地址范围,不属于该 IP 地址范围的报文将无法通过这些互连设备。但如果盗用的是 Ethernet 内部合法用户的 IP 地址,这种网络互连设备显然无能为力了。“道高一尺,魔高一丈”,对于 Ethernet 内部的 IP 地址被盗用,当然也有相应的解决办法。绑定 MAC 地址与 IP 地址就是防止内部IP 盗用的一个常用的、简单的、有效的措施。 1.2 MAC 与 IP 地址绑定原理 IP 地址的修改非常容易,而 MAC 地址存储在网卡的 EEPROM 中

3、,而且网卡的 MAC 地址是唯一确定的。因此,为了防止内部人员进行非法 IP 盗用(例如盗用权限更高人员的 IP 地址,以获得权限外的信息),可以将内部网络的 IP 地址与 MAC 地址绑定,盗用者即使修改了 IP 地址,也因 MAC 地址不匹配而盗用失败:而且由于网卡 MAC 地址的唯一确定性,可以根据 MAC 地址查出使用该 MAC地址的网卡,进而查出非法盗用者。 2 / 12目前,很多单位的内部网络,尤其是学校校园网都采用了 MAC 地址与 IP 地址的绑定技术。许多防火墙(硬件防火墙和软件防火墙)为了防止网络内部的IP 地址被盗用,也都内置了 MAC 地址与 IP 地址的绑定功能。 从

4、表面上看来,绑定 MAC 地址和 IP 地址可以防止内部 IP 地址被盗用,但实际上由于各层协议以及网卡驱动等实现技术,MAC 地址与 IP 地址的绑定存在很大的缺陷,并不能真正防止内部 IP 地址被盗用。 华夏网管 ofAdmin.Com 2 破解 MAC 与 IP 地址绑定策略 IT 技术社区 bbs.ofAdmin.Com 2.1 IP 地址和 MAC 地址简介 现行的 TCP/IP 网络是一个四层协议结构,从下往上依次为链路层、网络层、传输层和应用层。 网管论坛 bbs.ofAdmin.Com Ethernet 协议是链路层协议,使用的地址是 MAC 地址。MAC 地址是Etherne

5、t 网卡在 Ethernet 中的硬件标志,网卡生产时将其存于网卡的 EEPROM中。网卡的 MAC 地址各不相同,MAC 地址可以唯一标志一块网卡。在 Ethernet上传输的每个报文都含有发送该报文的网卡的 MAC 地址。 Ethernet 根据 Ethernet 报文头中的源 MAC 地址和目的 MAC 来识别报文的发送端和接收端。IP 协议应用于网络层,使用的地址为 IP 地址。使用 IP 协议进行通讯,每个 IP 报文头中必须含有源 IP 和目的 IP 地址,用以标志该 IP 报文的发送端和接收端。在 Ethernet 上使用 IP 协议传输报文时,IP 报文作为Ethernet 报

6、文的数据。IP 地址对于 Ethernet 交换机或处理器是透明的。用户可以根据实际网络的需要为网卡配置一个或多个 IP 地址。MAC 地址和 IP 地址之间并不存在一一对应的关系。 MAC 地址存储在网卡的 EEPROM 中并且唯一确定,但网卡驱动在发送Ethernet 报文时,并不从 EEPROM 中读取 MAC 地址,而是在内存中来建立一块缓存区,Ethernet 报文从中读取源 MAC 地址。而且,用户可以通过操作系统修 3 / 12改实际发送的 Ethernet 报文中的源 MAC 地址。既然 MAC 地址可以修改,那么MAC 地址与 IP 地址的绑定也就失去了它原有的意义。 2.2

7、 破解方案 下图是破解试验的结构示意图。其内部服务器和外部服务器都提供 Web 服务,防火墙中实现了 MAC 地址和 IP 地址的绑定。报文中的源 MAC 地址与 1P 地址对如果无法与防火墙中设置的 MAC 地址与 1P 地址对匹配,将无法通过防火墙。主机 2 和内部服务器都是内部网络中的合法机器;主机 1 是为了做实验而新加入的机器。安装的操作系统是 W2000 企业版,网卡是 3Com 的。 华夏网管Www.ofAdmin.Com 试验需要修改主机 1 中网卡的 MAC 和 IP 地址为被盗用设备的 MAC 和 IP 地址。首先,在控制面板中选择“网络和拨号连接”,选中对应的网卡并点击鼠

8、标右键,选择属性,在属性页的“常规”页中点击“配置”按钮。在配置属性页中选择“高级”,再在“属性”栏中选择“Network Address”,在“值”栏中选中输人框,然后在输人框中输人被盗用设备的 MAC 地址,MAC 地址就修改成功了。然后再将 IP 地址配置成被盗用设备的 IP 地址。盗用内部客户机 IP 地址:将主机 1 的 MAC 地址和 IP 地址分别修改为主机 2 的 MAC 地址和 IP 地址。主机 1 可以访问外部服务器,能够顺利地通过防火墙,访问权限与主机 2 没有分别。而且,与此同时主机 2 也可以正常地访问外部服务器,完全不受主机 1 的影响。无论是主机 2 还是防火墙都

9、察觉不到主机 1 的存在。主机 1 如果访问内部服务器,根本无需通过防火墙,更是畅通无阻了。 IT 技术社区 bbs.ofAdmin.Com盗用内部服务器 IP 地址:将主机 1 的 MAC 地址和 U 地址修改为内部服务器的 MAC 地址和 IP 地址。主机 1 也提供 Web 服务。为了使效果更明显,主机 1 上提供的 Web 服务内容与内部服务器提供的内容不同。 4 / 12华夏网管 ofAdmin.Com因为在实际的实验中主机 1 与主机 2 连在同一个 HUB 上,主机 2 的访问请求总是先被主机 1 响应,主机 2 期望访问的是内部服务器,得到的却总是主机1 提供的内容。更一般地,

10、主机 2 如果试图访问内部服务器,获得的到底是主机 1 提供的内容还是内部服务器提供的内容具有随机性,要看它的访问请求首先被谁响应,在后面的分析中我们将进一步对此进行阐述。 网管论坛bbs.ofAdmin.Com 盗用服务器的 MAC 和 IP 危害可能更大,如果主机 1 提供的 Web 内容和内部服务器中的内容一样,那么主机 2 将无法识别它访问的到底是哪个机器;如果Web 内容中要求输人账号、密码等信息,那么这些信息对于主机 1 来说则是一览无遗了。 IT 技术社区 bbs.ofAdmin.Com 网管 Www.ofAdmin.Com3 破解成功的原因 上面的实验验证了绑定 MAC 地址与

11、 IP 地址的确存在很大的缺陷,无法有效地防止内部 IP 地址被盗用。接下来,将从理论上对该缺陷进行详细的分析。缺陷存在的前提是网卡的混杂接收模式,所谓混杂接收模式是指网卡可以接收网络上传输的所有报文,无论其目的 MAC 地址是否为该网卡的 MAC 地址。正是由于网卡支持混杂模式,才使网卡驱动程序支持 MAC 地址的修改成为可能;否则,就算修改了 MAC 地址,但是网卡根本无法接收相应地址的报文,该网卡就变得只能发送,无法接收,通信也就无法正常进行了。 MAC 地址可以被盗用的直接原因是网卡驱动程序发送 Ethernet 报文的实现机制。 Ethernet 报文中的源 MAC 地址是驱动程序负

12、责填写的,但驱动程序并不从网卡的 EEPROM 中读取 MAC,而是在内存中建立一个 MAC 地址缓存区。网卡初始化的时候将 EEPROM 中的内容读入到该缓存区。如果将该缓存区中的内容修 5 / 12改为用户设置的 MAC 地址,以后发出去的 Ethernet 报文的源地址就是修改后的MAC 地址了。 如果仅仅是修改 MAC 地址,地址盗用并不见得能够得逞。Ethernet 是基于广播的,Ethernet 网卡都能监听到局域网中传输的所有报文,但是网卡只接收那些目的地址与自己的 MAC 地址相匹配的 Ethernet 报文。如果有两台具有相同MAC 地址的主机分别发出访问请求,而这两个访问请

13、求的响应报文对于这两台主机都是匹配的,那么这两台主机就不只接收到自己需要的内容,而且还会接收到目的为另外一台同 MAC 主机的内容。按理说,两台主机因为接收了多余的报文后,都应该无法正常工作,盗用马上就会被察觉,盗用也就无法继续了;但是,在实验中地址被盗用之后,各台实验设备都可以互不干扰的正常工作。这又是什么原因呢?答案应该归结于上层使用的协议。 IT 技术社区 bbs.ofAdmin.Com 目前,网络中最常用的协议是 TCP/IP 协议,网络应用程序一般都是运行在TCP 或者 UDP 之上。例如,实验中 Web 服务器采用的 HTTP 协议就是基于 TCP 的。在 TCP 或者 UDP 中

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

15、序的用户端口号可能是用户或者应用程序自己设置的,而不是交给协议来随机的生成。那么,结果又会如何呢?例如,在两台 MAC 地址和 IP 地址都相同的主机上,启动了两个端口相同的应用程序,这两个应用是不是就无法正常工作了呢?其实不尽然。 6 / 12如果下层使用的是 UDP 协议,两个应用将互相干扰无法正常工作。如果使用的是 TCP 协议,结果就不一样了。因为 TCP 是面向连接的,为了实现重发机制,保证数据的正确传输,TCP 引入了报文序列号和接收窗口的概念。在上述的端口号匹配的报文中,只有那些序列号的偏差属于接收窗口之内的报文才会被接收,否则,会被认为是过期报文而丢弃。TCP 协议中的报文的序

16、列号有 32位,每个应用程序发送的第一个报文的序列号是严格按照随机的原则产生的,以后每个报文的序列号依次加 1.窗口的大小有 16 位,也就是说窗口最大可以是 216,而序列号的范围是 232,主机期望接收的 TCP 数据的序列号正好也处于对方的接收范围之内的概率为1/216,可谓小之又小。 TCP 的序列号本来是为了实现报文的正确传输,现在却成了地址盗用的帮凶。 网管网 ofAdmin.Com4 解决 MAC 与 IP 地址绑定被破解的方法 网管 Www.ofAdmin.Com解决 MAC 与 IP 地址绑定被破解的方法很多,主要以下几种。 网管论坛 bbs.ofAdmin.Com交换机端口、MAC 地址和 IP 地址三者绑定的方法;代理服务与防火墙相结合的方法;用 PPPoE 协议进行用户认证的方法;基于目录服务策略的方法;统一身份认证与计费软件相结合的方法等(这些方法的实现原理和过程可以参考拙作校园网 IP 地址盗用解决方案)。在这里笔者尤其推荐最后一种方法,这种方法是将校园网办公自动化系统和网络计费软件结合

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 研究报告 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号