-
2007年04月30日
局域网IP地址的非法使用问题解决方法 - [安全资讯]
局域网IP地址的非法使用问题解决方法
作者:Vlan9.com 来源:Vlan9.com
引言
在大多数局域网的运行管理工作中,网络管理员负责管理用户IP地址的分配,用户通过正确地注册后才被认为是合法用户。在局域网上任何用户使用未经授权的IP地址都应视为IP非法使用。
但在Windows操作系统中,终端用户可以自由修改IP地址的设置,从而产生了IP地址非法使用的问题。改动后的IP地址在局域网中运行时可能出现的情况如下。
a. 非法的IP地址即IP地址不在规划的局域网范围内。
b.重复的IP地址与已经分配且正在局域网运行的合法的IP地址发生资源冲突,使合法用户无法上网。
c.冒用合法用户的IP地址当合法用户不在线时,冒用其IP地址联网,使合法用户的权益受到侵害。
1 IP地址非法使用的动机
IP地址的非法使用问题,不是普通的技术问题,而是一个管理问题。只有找到其存在的理由,根除其存在的基础,才可能从根本上杜绝其发生。分析非法使用者的动机有以下几种情况:
a. 干扰、破坏网络服务器和网络设备的正常运行。
b. 企图拥有被非法使用的IP地址所拥有的特权。最典型的,就是因特网访问权限。
c. 因机器重新安装、临时部署等原因,无意中造成的非法使用。
2 非法使用方法
2.1 静态修改IP地址配置 用户在配置TCP/IP选项时,使用的不是管理员分配的IP地址,就形成了IP地址的非法使用。
2.2 同时修改MAC地址和IP地址
非法用户还有可能将一台计算机的IP地址和MAC地址都改为另一台合法主机的IP地址和MAC地址。他们可以使用允许自定义MAC地址的网卡或使用软件修改MAC地址。
2.3 IP电子欺骗
IP电子欺骗是伪造某台主机IP地址的技术。它通常需要编程来实现。通过使用SOCKET编程,发送带有假冒的源IP地址的IP数据包
3 管理员的技术手段
3.1 静态ARP表的绑定
对于静态修改IP地址的问题,可以采用静态路由技术加以解决,即IP-MAC地址绑定。因为在一个网段内的网络寻址不是依靠IP地址而是物理地址。IP地址只是在网际之间寻址使用的。因此作为网关的路由器上有IP-MAC的动态对应表,这是由ARP协议生成并维护的。配置路由器时,可以指定静态的ARP表,路由器会根据静态的ARP表检查数据包,如果不能对应,则不进行数据转发。
该方法可以阻止非法用户在不修改MAC地址的情况下,冒用IP地址进行跨网段的访问。
3.2 交换机端口绑定
借助交换机的端口—MAC地址绑定功能可以解决非法用户修改MAC地址以适应静态ARP表的问题。可管理的交换机中都有端口—MAC地址绑定功能。使用交换机提供的端口地址过滤模式,即交换机的每一个端口只具有允许合法MAC地址的主机通过该端口访问网络,任何来自其它MAC地址的主机的访问将被拒绝。
3.3 VLAN划分
严格来说,VLAN划分不属于技术手段,而是管理与技术结合的手段。将具有相近权限的IP地址划分到同一个VLAN,设置路由策略,可以有效阻止非法用户冒用其他网段的IP地址的企图。
3.4 与应用层的身份认证相结合
避免采用针对IP地址的直接授权的管理模式,综合运用用户名、口令、加密、VPN及其他应用层的身份认证机制,构成多层次的严密的安全体系,可以有效降低IP地址非法使用所带来的危害。
4 管理建议
a.普通用户明白非法使用IP地址所产生的危害和处罚措施,制定并实施严格的IP地址管理制度,包括:IP地址申请和发放流程,IP地址变更流程,临时IP地址分配流程,机器MAC地址登记管理,IP地址非法使用的处罚制度。
b.非法使用IP的行为,总是内部网络少数人的行为。因此,对于已经建成的网络,管理员要根据当前存在的问题,有针对性的运用技术措施,重点阻止个别用户的非法行为。
c. 划分VLAN时,兼顾可管理性和易用性。在不增加网络复杂性的前提下,充分运用VLAN的划分手段,将权限相近的用户划分到同一个VLAN内,弱化非法使用同网段IP地址所带来的利益。
d. 部署网络管理系统。网络管理软件可以实现静态ARP表绑定的初始化操作,避免网络管理员的大量重复性劳动。网络管理软件的日常监视和日志功能,可以及时有效的发现网络中的IP地址变化、MAC地址变化、交换机端口改变等异常行为,帮助网络管理员查找网络故障的根源。同时,网络管理员还可以借助网管系统,很方便的管理网络交换机,针对个别问题突出的用户,进行交换机端口绑定操作,禁止其修改MAC地址。
e. 与应用层的身份认证相结合,建立完整严密的多层次的安全认证体系,弱化IP地址在身份认证体系中的重要性。与IP地址非法使用的问题类似,用户名和口令也属于容易盗用的资源,建议有条件的单位采用指纹鼠标等先进的身份认证系统,强化重要系统的安全强度。
5 结束语
内部人员非法使用IP地址,并不是为了进行侵入和破坏,而是为了谋取某些特定的权限和利益。网络管理员除有法律手段和技术手段,还拥有各种内部管理手段。如果单纯使用技术手段来防范IP地址的非法使用,必然产生高昂的系统投资成本和人员开支。因此,只有综合运用管理手段和技术手段,来处理IP地址非法使用问题,才能实现高可靠性的系统运行与低成本的管理维护的统一。
关于MAC地址与IP地址绑定策略的探究
作者:redcat 来源:中国信息安全网
1 引言
对“IP地址盗用”的解决方案绝大多数都是采取MAC与IP地址绑定策略,这种做法是十分危险的,本文将就这个问题进行探讨。在这里需要声明的是,本文是处于对对MAC与IP地址绑定策略安全的忧虑,不带有任何黑客性质。
1.1 为什么要绑定MAC与IP 地址
影响网络安全的因素很多,IP地址盗用或地址欺骗就是其中一个常见且危害极大的因素。现实中,许多网络应用是基于IP的,比如流量统计、账号控制等都将IP地址作为标志用户的一个重要的参数。如果有人盗用了合法地址并伪装成合法用户,网络上传输的数据就可能被破坏、窃听,甚至盗用,造成无法弥补的损失。
盗用外部网络的IP地址比较困难,因为路由器等网络互连设备一般都会设置通过各个端口的IP地址范围,不属于该IP地址范围的报文将无法通过这些互连设备。但如果盗用的是Ethernet内部合法用户的IP地址,这种网络互连设备显然无能为力了。“道高一尺,魔高一丈”,对于Ethernet内部的IP地址被盗用,当然也有相应的解决办法。绑定MAC地址与IP地址就是防止内部IP盗用的一个常用的、简单的、有效的措施。
1.2 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协议进行用户认证的方法;基于目录服务策略的方法;统一身份认证与计费软件相结合的方法等。在这里笔者尤其推荐最后一种方法,这种方法是将校园网办公自动化系统和网络计费软件结合在一起而实现的,这在校园网信息化建设的今天具有很强的实践性。
同时设置网桥和ICS 导致IP地址冲突
故障现象
网络上有4台机器:两台Windows XP和两台Windows 98通过hub连接组成对等网。并通过其中一台Windows XP机器通过ADSL共享上网 (通过Windows XP的网桥功能),前一段时间一直运行良好。
前两天,直接连接Internet的那台机器在 "网络邻居"中看不见其他任何机器,通过检查发现与其他机器IP地址冲突,都是192.168.0.1。无论如何都无法改过来!经过用iPscan软件检查,发现另一台Windows XP的机器居然占用两个IP地址 (192.168.0.1和192.168.0.15,其中192.168.0.15是我设置的,主机名都是另一台机器的名称)!但是该计算机只有一个网卡:用ipconfig检查也只有一个网卡用的192.168.0.15地址。现在。如果拔下网线并开机后再插上网线或者先屏蔽连接Hub的网卡并上网后再启用,就能一切和正常一样。
诊断过程
计算机为什么会自动获取一个192.168.0.1地址呢?在什么情况下,计算机才会目动获取192.168.O.1地址呢?第一,网络内存在一个DHCP服务器,由该DHCP服务器为网络内的计算机动态分配IP地址;第二,DHCP服务器的IP地址池范围是192.168.0.1~192.168.0.254。
就目前情况来看,作为只有4台计算机的对等网络,肯定没有也没有必要使用专用的DHCP服务器。还有谁会提供DHCP服务呢?很自然,我想到了Windows的ICS服务。
Internet连接共享(ICS)使用一个 Internet连接将多台计算机连接到Inernet。一台称为ICS主机的计算机直接连接到Internet,然后与网络上的其余计算机共享其连接。客户计算机依赖于ICS主机提供对Internet的访问。启用ICS可以增强安全性:因为只有ICS主机对Internet是可见的。所有从客户计算机到Internet的通讯都要经过ICS主机,此过程使客户计算机的地址在Internet上得到隐藏,由于无法从该网络以外看到客户计算机,所以客户计算机受到保护。从公共方看见的只有运行ICS的计算机。另外,ICS主机还管理网络编址。ICS主机为自己指派一个永久地址,同时为每台ICS客户机提供了为其指派唯一地址的动态主机配置协议DHCP),这样就为网络上的计算机提供了相互通讯的方式。
很简单,这台计算机被设置为ICS主机了。Internet连接共享主机本身拥有一个DHCP服务,将本地计算机的局域网端口设置为192.168.0.1,并自动为网络内的其他计算机动态分配IP地址,网段为192.168.2~192.l68.254。所以,计算机启动后:就会为自己分配一个IP地址。然后,为那些没有IP地址的计算机也分配一个IP地址,从而实现网络连接和Internet共享。
所以,在网络内设置ICS主机后:所有的计算机都不要分配IP地址。原因如下:
第二,当ICS主机开机后:所有的计算机都会自动从ICF主机中获得一个IP地址进行通讯;
第二,如果ICS主机没有开机,那么,Windows计算机会自动使用APIPA(Automatic private IP Addressing,自动专用IP寻址)给计算机分配一个私有IP地址。这个地址来自于保留的授权私有地址段169.254.0.1,169.254.255.254,子网掩为:255.255.0.0。计算机之间仍然能够正常通讯。
因此,ICS的第二块网卡,以及网络内的所有计算机都不要设置IP地址,所有的计算机都设置为自动获取IP地址即可。当然,跟ADSL M0dem连接的那块网卡一定要设置IP地址哦,需要它跟Internet连接呢。也就是说,整个网络中,只有跟Internet连接的那块网卡才需要设置IP地址,其他的所有网卡都不需要设置IP地址。
经检查发现,作为Internet连接服务器的计算机同时设置了网桥和Internet连接共享,去掉网桥:只保留Internet连接共享,网络恢复正常。
排除心得
网络内只能有一个网络管理员,否则,大家都对服务器随意设置,就非常容易导致网络服务的失败,而故障的检查和排除也将非常困难:因为通常情况下,作为普通的计算机用户,很难知道从哪里下手,往往是在不得已的情况下,重新安装服务器。
解决LAN环路引起的广播风暴
笔者公司局域网采用的是星型拓扑结构千兆以太网技术,中心机房配备一台三层路由交换机,各楼层采用接入核心交换机,各部门计算机通过直接接入或用级连方式通过接入层交换机接进网络。中心的服务器有多台,提供FTP、文件服务、Web等多项服务。
全网分为5个VLAN,根据业务不同为不同网段定义了IP地址。
随着接进网络PC的不断增多及信息流量的增加,在网络维护中遇到过各类问题及故障,现在分析其中影响较大的一个故障,谈谈在管理与维护上的一点经验和体会。
◆故障现象
某日有多个用户反映网络连接情况时通时断,有时同一楼层的计算机都无法互相Ping通,故障用户分布在多个楼层,故障点不集中。对个别端口做互换测试,故障仍然存在。在故障计算机上进行测试,发现可以Ping通网络中的部分服务器或计算机,Ping核心交换机的IP地址常出现不通、丢包、时延大的现象。利用网络软件对可管理的交换机做检查,没有明显的报错。
◆故障排查
首先怀疑为核心交换机物理故障,观察交换机的指示灯状态以及各端口的状态,显示正常。对核心交换机清除缓存、关闭重启,并检查交换机的配置情况,没有改变。
经过以上的检查和测试,分析故障应该不在硬件部分,利用Sniffer抓包分析软件将网络中的数据包抓下来分析,发现有大量数据包来自同一个MAC地址,目的地址是根本不存在的IP,怀疑是类似于“冲击波杀手”一类会造成网络堵塞的蠕虫病毒。根据网络正常时建立的IP地址及MAC地址对应表查出该机属于某层的一台PC,初步确认故障点后将MAC地址对应的计算机从网络中断开并升级杀毒软件,然后重新接入网络,此时故障仍然存在。
为了确定具体故障点,要求该单位提供其接入拓扑图分析,发现该单位将分属于两个不同VLAN的连线分别连接两个不同的Hub,当天为了使用方便,将两个Hub用级联的方式连接到了一起,将其连线断开后,故障彻底排除。
◆故障原因
此次故障原因分析主要是由于网络中有环路存在,造成每一帧都在网络中重复广播,引起了广播风暴。要消除这种网络循环连接带来的网络广播风暴可以使用STP协议(生成树协议),以网络中一台交换机为节点生成一棵转发树,而树是没有环路的,这样所有的数据都只在这棵树所指示的路径上传输,就不会产生广播风暴,但由于SPT算法的开销非常大,所以交换机上都未启用该协议。
为避免在接入层出现同样的故障,从而影响整个局域网络用户的使用,所以在接入层启用树生成协议是必要的,或者在诊断故障时可以打开SPT协议协助确定故障点。
◆经验总结
在故障发生时,应首先了解故障前网络的改动,建立完善的网络文档资料。包括网络布线图、IP及MAC对应表等,否则在确定MAC地址端口时会消耗大量的时间。现在有很多局域网工具软件都可以通过扫描获取网络中的计算机的这些信息,如LanExplorer等。随机文章:
十大奇功轻松应对局域网故障 2007年10月11日如何解决局域网中网络邻居访问响应"慢" 2007年09月17日腾讯官方确认QQ完成IP加密打击非法外挂 2008年11月13日电脑关机就重启的经典解决方法四例 2008年10月23日explorer.exe出错的几种可能原因及解决 2008年07月13日
收藏到:Del.icio.us























