女人左眼跳是什么意思:arp的介绍与防范

来源:百度文库 编辑:高考问答 时间:2024/05/09 02:09:50

没什么

首先说一下什么是ARP,如果你在电脑命令提示下输入 arp -a,你的输出看起来应该是像这样:
Interface: 192.254.0.18 --- 0x2
Internet Address Physical Address Type
70.196.198.173 00-05-dc-e3-57-bc dynamic
70.196.198.178 00-02-55-73-6b-ad dynamic
这里第一列显示的是ip地址,第二列显示的是和ip地址对应的网络接口卡的硬件地址(MAC),第三列是该ip和mac的对应关系类型。
可见,arp是一种将ip转化成以ip对应的网卡的物理地址的一种协议,或者说ARP协议是一种将ip地址转化成MAC地址的一种协议。它靠维持在内存中保存的一张表来使ip得以在网络上被目标机器应答。

为什么要将ip转化成mac呢?简单的说,这是因为在tcp网络环境下,一个ip包走到哪里,要怎么走是靠路由表定义。但是,当ip包到达该网络后,哪台机器响应这个ip包却是靠该ip包中所包含的mac地址来识别。也就是说,只有机器的mac地址和该ip包中的mac地址相同的机器才会应答这个ip包。因为在网络中,每一台主机都会有发送ip包的时候。所以,在每台主机的内存中,都有一个 arp--> mac 的转换表。通常是动态的转换表(注意在路由中,该arp表可以被设置成静态)。也就是说,该对应表会被主机在需要的时候刷新。这是由于以太网在子网层上的传输是靠48位的mac地址而决定的。

通常主机在发送一个ip包之前,它要到该转换表中寻找和ip包对应的mac地址。如果没有找到,该主机就发送一个ARP广播包,看起来象这样子;"我是主机xxx.xxx.xxx.xxx , mac是xxxxxxxxxxx ,ip为xxx.xxx.xxx.xx1的主机请告之你的mac来" ip为xxx.xxx.xxx.xx1的主机响应这个广播,应答ARP广播为:"我是xxx.xxx.xxx.xx1,我的mac为xxxxxxxxxx2"

于是,主机刷新自己的ARP缓存,然后发出该ip包。

了解这些常识后,现在就可以谈在网络中如何实现ARP欺骗了,可以看看这样一个例子:

一个入侵者想非法进入某台主机,他知道这台主机的防火墙只对192.0.0.3(假设)这个ip

开放23口(telnet),而他必须要使用telnet来进入这台主机,所以他要这么做:

1、他先研究192.0.0.3这台主机,发现这台95的机器使用一个oob就可以让他死掉。

2、于是,他送一个洪水包给192.0.0.3的139口,于是,该机器应包而死。

3、这时,主机发到192.0.0.3的ip包将无法被机器应答,系统开始更新自己的arp对应表

。将192.0.0.3的项目搽去。

4、这段时间里,入侵者把自己的ip改成192.0.0.3

5、他发一个ping(icmp 0)给主机,要求主机更新主机的arp转换表。

6、主机找到该ip,然后在arp表中加入新的ip-->mac对应关系。

7、防火墙失效了,入侵的ip变成合法的mac地址,可以telnet了。

现在,假如该主机不只提供telnet,它还提供r命令(rsh,rcopy,rlogin等)那么,所有

的安全约定将无效,入侵者可以放心的使用这台主机的资源而不用担心被记录什么。

有人也许会说,这其实就是冒用ip嘛。是冒用了ip,但决不是ip欺骗,ip欺骗的原理比这

要复杂的多,实现的机理也完全不一样。

上面就是一个ARP的欺骗过程,这是在同网段发生的情况。但是,提醒注意的是,利用交

换集线器或网桥是无法阻止ARP欺骗的,只有路由分段是有效的阻止手段。(也就是ip包必须

经过路由转发。在有路由转发的情况下,ARP欺骗如配合ICMP欺骗将对网络造成极大的危害。

从某种角度讲,入侵者可以跨过路由监听网络中任何两点的通讯,如果设置防火墙,请注意

防火墙有没有提示过类似"某某IP是局域IP但从某某路由来"等这样的信息。

在有路由转发的情况下,发送到达路由的ip的主机其arp对应表中,ip的对应值是路由的mac。

比如: 我ping www.abc.com后,那么在我主机中,www. abc.com的IP对应项不是xxxx

的mac,而是我路由的mac,其ip也是我路由的IP。(有些网络软件通过交换路由ARP可以得到

远程IP的MAC)。

那么,如何防止ARP欺骗呢?

1、不要把你的网络安全信任关系建立在ip基础上或mac基础上,(rarp同样存在欺骗的

问题),理想的关系应该建立在ip+mac基础上。

2、设置静态的mac-->ip对应表,不要让主机刷新你设定好的转换表。

3、除非很有必要,否则停止使用ARP,将ARP做为永久条目保存在对应表中。

4、使用ARP服务器。通过该服务器查找自己的ARP转换表来响应其他机器的ARP广播。确

保这台ARP服务器不被黑。

5、使用"proxy"代理ip的传输。

6、使用硬件屏蔽主机。设置好你的路由,确保ip地址能到达合法的路径。(静态配置路

由ARP条目),注意,使用交换集线器和网桥无法阻止ARP欺骗。

7、管理员定期用响应的ip包中获得一个rarp请求,然后检查ARP响应的真实性。

8、管理员定期轮询,检查主机上的ARP缓存。

9、使用防火墙连续监控网络。注意有使用SNMP的情况下,ARP的欺骗有可能导致陷阱包

丢失。