2008年11月11日星期二

ARP透视——ARP欺骗的危害

作为一名网络管理员,应该明确的知道网络中的 ARP 列表,收集ARP列表信息。或者,为每台机器手工绑定IP地址,不允许客户机随意更改IP地址,将每

台机器的 IP --> MAC 信息保存为文件。
MAC地址:通过一些方法可以使网卡的MAC地址发生改变。所以不允许修改网卡的MAC地址。
IP地址与主机相对应。
xxxx_001 为系统保留,通常就是网关了。IP地址为xxx.xxx.xxx.1
例如:xxxx_002 这台主机的IP地址为局域网地址 xxx.xxx.xxx.2

ARP table
主机名 部门 IP地址 C地址
xxxx_002-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx
xxxx_003-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx
xxxx_004-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx
xxxx_005-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx
xxxx_006-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx
xxxx_007-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx
xxxx_008-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx
xxxx_009-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx
xxxx_011-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx
xxxx_012-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx
xxxx_013-xxx.xxx.xxx.xxx-xx-xx-xx-xx-xx-xx

ARP协议:

#### 源IP地址 --> 源MAC地址 ##### 将源IP地址解析为源MAC地址
#### 目标IP地址 --> 目标MAC地址 #### 将目标IP地址解析为目标MAC地址

RARP协议:

#### 源MAC地址 --> 源IP地址 #### 将源MAC地址解析为源IP地址
#### 目标MAC地址 --> 目标IP地址 #### 将目标MAC地址解析为目标IP地址

ARP攻击检测:

# ARP –a
查看本机ARP缓存 ,正常情况下第一栏打印本机IP地址,第二栏返回当前网关的IP地址和MAC地址。
正常模式:网络中只有一个网关,客户机 ARP 缓存只有一条 ARP 记录,并且这条记录是当前网关的IP --> MAC 的映射。

混杂模式:当ARP缓存中有多条IP -->MAC 的记录,说明当前为混杂模式,网的网关不是唯一的。

排除:在 SuSE Linux 系统中,如果使用ping命令ping网络中的另一台主机,再用 ARP -a 的命令查看本机ARP缓存会多出一条ARP记录。这条记录的源IP

地址就是刚才ping的那台主机的IP地址,源MAC地址就是刚才ping的那台主机的 MAC址址。

获取网络中的ARP信息:使用ping命令ping网络中的另一台主机,然后再使用ARP -a 或者是ARP -na 的命令可以查看到刚才ping的那台网络中的主机的 IP

和MAC地址的映射关系。注意,使用此方法获得的ARP信息不代表网络一定为混杂模式。如果网关路由工作正常,且有合法的公网地址

sled10:~ # ARP -na
(192.168.1.241) at 00:01:01:02:02:39 [ether] on eth0
(192.168.1.150) at 00:E0:4C:3A:1D:BC [ether] on eth0
(192.168.1.1) at 00:14:78:A1:7F:78 [ether] on eth0
sled10:~ #

能够访问广域网的情况下:
使用ping命令ping广域网上的一个域名

> 正常的现象 :
# ping www.qq.com

# ping www.baidu.com

# ping www.yahoo.com
sled10:~ # ping www.yahoo.com
PING www.yahoo-ht2.akadns.net (209.131.36.158) 56(84) bytes of data.
64 bytes from f1.www.vip.sp1.yahoo.com (209.131.36.158): ICMP_seq=1 ttl=51 time=1183 ms
64 bytes from f1.www.vip.sp1.yahoo.com (209.131.36.158): ICMP_seq=2 ttl=51 time=1458 ms
64 bytes from f1.www.vip.sp1.yahoo.com (209.131.36.158): ICMP_seq=3 ttl=51 time=1287 ms
64 bytes from f1.www.vip.sp1.yahoo.com (209.131.36.158): ICMP_seq=4 ttl=51 time=1185 ms
64 bytes from f1.www.vip.sp1.yahoo.com (209.131.36.158): ICMP_seq=5 ttl=51 time=934 ms

> 非正常情况:
分析ARP欺骗的原理
sled10:~ # ping www.qq.com
PING www.qq.com (61.172.240.44) 56(84) bytes of data.
From 192.168.1.241: ICMP_seq=237 Redirect Host(New nexthop: 192.168.1.1)
64 bytes from 61.172.240.45: ICMP_seq=237 ttl=53 time=25.6 ms
From 192.168.1.241: ICMP_seq=238 Redirect Host(New nexthop: 192.168.1.1)
64 bytes from 61.172.240.45: ICMP_seq=238 ttl=53 time=25.3 ms
From 192.168.1.241: ICMP_seq=239 Redirect Host(New nexthop: 192.168.1.1)
64 bytes from 61.172.240.45: ICMP_seq=239 ttl=53 time=25.6 ms
From 192.168.1.241: ICMP_seq=240 Redirect Host(New nexthop: 192.168.1.1)
64 bytes from 61.172.240.45: ICMP_seq=240 ttl=53 time=25.8 ms
From 192.168.1.241: ICMP_seq=241 Redirect Host(New nexthop: 192.168.1.1)
64 bytes from 61.172.240.45: ICMP_seq=241 ttl=53 time=26.0 ms
From 192.168.1.241: ICMP_seq=242 Redirect Host(New nexthop: 192.168.1.1)

From 192.168.1.241: ICMP_seq=240 Redirect Host(New nexthop: 192.168.1.1)
上面的 ping www.qq.com 后,从局域网的192.168.1.241返回一条ICMP包。
>>>
64 bytes from 61.172.240.45: ICMP_seq=239 ttl=53 time=25.6 ms
接着,从广域网返回一条ICMP包。

注意,正常的的情况下ping广域网的域名或IP地址应该只会收到广域网地址返回的ICMP包。
同时反覆的高频率的从局域网的一台主机返回的ICMP包属于非正常的情况。
.......................................................................................................
From 192.168.1.241: ICMP_seq=240 Redirect Host(New nexthop: 192.168.1.1)

Redirect: [ 'ri:di'rekt ]

a. 再直接的
v. 重新传入,重新寄送

英英解释:
动词redirect:

.......................................................................................................

注意!!
上面的英文解释是 “再连接的” ,也就是说每次ping广域网的一个域名都会先收到这个局域网内的机器的ICMP包。
这个ICMP包是 “再连接的”,也就是说不是始终连接的。只有当有网络请求时才会 “再次连接”,而不需要访问网络时就断开了连接或者说连接不起作

用。每次访问网络都需要和这台局域网中的机器连接,每发送一个ping包到广域网的一个域名(主机)都要通过这台局域网中的主机,每收到广域网的一

个域(地址)的ICMP包之前都必须通过这台局域网中的机器。都要通过这台局域网中的主机。那么这台主机就相当于网关了。但是,实际的网关并不是这

台主机。
正常工作的网关,不会出出如此高频率的 “重新传入” 、 “再次连接” 。
合理的解释:本机的ARP缓存正在被高频率的刷新。
造成本机的ARP缓存高频率刷新的原因就在于局域网中的这台主机使用了不断的高频率的向局域网中发送ARP包,不断的高频率的向网络中的机器告白:“

大家好!我就是网关,你们跟着我就能够有吃有喝了。”

没有评论: