ARP原理及ARP欺骗实验

ARP原理及ARP欺骗实验

1. ARP原理

  • ARP是什么?

ARP(Address Resolution Protocol),即地址解析协议。可以根据IP地址获取到MAC地址,属于TCP/IP数据链路层。

  • 为什么需要ARP?

一个网络设备要发送给另一个网络设备时,必须要知道对方的IP地址。但是,IP数据报文必须要封装成帧才能通过数据链路层进行发送,而数据帧必须要包含目的MAC地址,因此发送端必须要获取到目的MAC。

  • ARP工作过程

ARP工作过程

  • ARP请求和ARP响应

  • ARP请求

主机A首次发送数据包给主机C时,主机A会发送ARP Request来获取主机C的MAC地址。由于主机A不知道主机C的MAC地址,所以目的MAC地址为FF-FF-FF-FF-FF(此过程即为广播)。ARP Request会在整个网络中传播,该网络中的所有主机包括网关都会收到此报文。
ARP Request

  • ARP响应

所有主机收到该ARP Request报文后,会检查目的IP是否与自身IP相匹配,如果不匹配,则丢弃此报文。如果匹配,则将ARP报文中的源MAC地址和源IP地址记录到自己的ARP缓存中,并通过ARP Reply报文进行响应。
ARP响应

2.ARP欺骗

  • ARP欺骗原理

如图中,主机B通过伪造ARP Reply响应包,将自己的MAC和和主机C的IP地址作为响应包发送给主机A,伪装成主机C。自此,主机A发送给主机C的数据包都会被主机B截获。基于ARP响应实现ARP欺骗

  • ARP欺骗实验

  • 实验环境

kali–10.0.0.200(攻击机),win10–10.0.0.201(靶机),网关10.0.0.2

  • 实验工具

arpspoof
wireshark

  • 配置文件

/proc/sys/net/ipv4/ip_forward是Linux系统的数据包转发配置文件,为了安全考虑,默认是禁止的。

echo 1 >/proc/sys/net/ipv4/ip_forward
  • 查看靶机ARP缓存表

靶机ARP缓存表

  • 开始ARP欺骗
root@kali:~# arpspoof -t 10.0.0.201 10.0.0.2
  • 查看靶机ARP缓存表

此时,攻击机已经伪装成网关。
在这里插入图片描述

  • 开启wireshark抓包
root@kali:~# wireshark

这里已经抓到靶机的流量。
在这里插入图片描述

3. ARP欺骗防护

ARP欺骗本质是利用了ARP协议自身的缺陷,只要能防止主机伪造IP对应的MAC地址即可防御。
所以,从以下两点进行:

  • 主机层面

安装防病毒软件,保证病毒库的及时更新。

  • 网络节点层面

在交换机或启用ARP代理的路由器上设置IP地址与MAC地址绑定。如果接入层交换机有ARP检查功能的话,一定要启用该功能。

  • 6
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值