简述ARP欺骗攻击的原理以及防护办法

如题所述

ARP欺骗不是一种新技术。它已经存在了相当长的一段时间。

 

ARP欺骗就好像是攻击者不断地跟局域网中的其他设备说:"嘿!我是路由器!向我发送您想要在网络中交换的详细信息"。这是通过不断向该特定设备发送包含欺骗细节的ARP数据包,以便它相信它正在与它应该与之通话的设备通话。

 

而公共WiFi网络,使用场景恰恰能解释这一点:

 

假设有一家咖啡店,提供"免费WiFi",方便客人连接互联网。"免费WiFi"由本地网络中IP地址为192.168.1.1的无线路由器提供服务,无线路由器的MAC地址为5F:8B:B9:86:29:22。然后,顺序发生以下事件:

 

1. 合法用户连接到咖啡店提供的公共WiFi网络,并获得IP地址168.1.100。假设此用户使用的手机的MAC地址为9E:E6:85:8B:21:32。

 

 

2. 用户打开他的手机浏览器并使用公共WiFi服务连接到互联网。在这种情况下,他的手机通过ARP表知道接入点的IP地址是168.1.1,其MAC地址是5F:8B:B9:86:29:22。

 

3. 攻击者连接到同一公共WiFi网络,并获得IP地址168.1.101。假设此用户正在使用MAC地址为8E:9E:E2:45:85:C0的笔记本电脑。

 

4. 攻击者使用接入点192.168.1.1的IP地址而不是他分配的IP地址192.168.1.101来制作包含其MAC地址8E:9E:E2:45:85:C0的伪ARP数据包。然后,攻击者使用这个精心制作的数据包来泛洪(广播)给合法用户的手机,其IP为192.168.1.100,使其更新其ARP表条目:

 

 

一旦数据包被发送,移动电话的ARP表就会更新以下信息:192.168.1.1(接入点的IP)< - > 8E:9E:E2:45:85:C0(攻击者的MAC)而不是:192.168.1.1 (接入点的IP)< - > 5F:8B:B9:86:29:22(接入点的MAC)

 

发生这种情况时,用户每次连接到互联网时,网络流量并不是发送到无线路由器,而是会把所有的网络流量转发给攻击者的设备,因为网络中的设备的APP表中IP 192.168.1.1与攻击者的MAC地址是相关联的。然后攻击者接收到被攻击者的网络流量时是可以将接收到的网络流量转发到无线路由器(中间人攻击)再由无线路由器将这些网络流量发送到互联网上,又或者是直接不转发给路由器这样就会导致用户无法连接到互联网。

受到ARP欺骗攻击后,黑客就可以截取你所有的网络流量,再慢慢一一进行分析,这时,你所有的用网数据都变成透明公开的状态了。

 

那我们应该如何去防御呢?除了尽可能的不连接这些公共WiFi,还可以使用防火墙软件。除此之外最简单便捷的方式,那就是使用代理IP。这样,在用网的过程中,我们的真实数据被隐藏,并且加密传输,纵使是黑客,也很难破解你的账户与密码。因此,在不得不连接公共WIFI的情况下,记得使用代理IP,使用AES技术加密线上数据,开启数据保护。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-12-05
  ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
  ARP协议主要负责将局域网中的32位IP地址转换为对应的48位物理地址,即网卡的MAC地址,比如IP地址位192.168.0.1网卡MAC地址为00-03-0F-FD-1D-2B.整个转换过程是一台主机先向目标主机发送包含有IP地址和MAC地址的数据包,通过MAC地址两个主机就可以实现数据传输了.

  在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的,如附表所示。
  附表
  我们以主机A(192.168.1.5)向主机B(192.168.1.1)发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到相对应的IP地址,主机A就会在网络上发送一个广播,目标MAC地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:“192.168.1.1的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:“192.168.1.1的MAC地址是00-aa-00-62-c6-09”。这样,主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表,下次再向主机B发送信息时,直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。
  ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。
  ARP攻击主要是存在于局域网网络中,局域网中若有一个人感染ARP木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。
  RARP的工作原理:
  1. 发送主机发送一个本地的RARP广播,在此广播包中,声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址;
  2. 本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址;
  3. 如果存在,RARP服务器就给源主机发送一个响应数据包并将此IP地址提供给对方主机使用;
  4. 如果不存在,RARP服务器对此不做任何的响应;
  5. 源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。

  可以通过邦定IP和MAC 来防御。具体: ARP -S IP MAC
  天网防火墙也是个好东西。本回答被提问者采纳
第2个回答  2008-10-21
安装360安全卫或者金山ARP防火墙吧~基本没问题的了~
相似回答