局域网 ARP 欺骗原理详解

你的名字 2021-11-22 17:34 493阅读 0赞

局域网 ARP 欺骗原理详解

ARP 欺骗是一种以 ARP 地址解析协议为基础的一种网络攻击方式, 那么什么是 ARP 地址解析协议: 首先我们要知道, 一台电脑主机要把以太网数据帧发送到同一局域网的另外一台主机, 它的底层是通过 48bit 的 Mac 地址来确定目的接口的, 但是我们在应用层是使用 IP 地址来访问目标主机的, 所以 ARP 的作用就是当一台主机访问一个目标 IP 地址的时候, 它为该主机返回目标 IP 主机的 Mac 地址, 并且这个过程是自动完成的, 应用层的程序是不用关心这件事的.

在讲 ARP 欺骗之前我们先来了解一下正常情况下一台主机是如何通过路由器上网的:

553241-20190722112252695-1084098637.png

如上图, 我们以 A 主机 ping 8.8.8.8 为例:

  1. 主机 A 上执行 ping 8.8.8.8
  2. 主机 A 准备根据默认路由将数据包发送给 192.168.0.1, 但是最开始的时候主机 A 不知道 192.168.0.1 的 Mac 地址, 所以主机 A 广播一条 ARP Request, 询问 192.168.0.1 的 Mac 地址是什么
  3. 路由器收到该 ARP 请求, 发现自己是 192.168.0.1 于是向主机 A 回复一条 ARP Reply, 告诉主机 A 192.168.0.1 的 Mac 地址是 xxxGW.
  4. 主机 A 收到该 ARP Reply, 并使用该 Reply 中的 MAC 地址封一个 ICMP Request 包, 然后将包发出去
  5. 路由器收到该 ICMP 包, 发现目标 IP 是公网 IP, 便将该包放送到公网, 公网返回 ICMP Reply 给路由器
  6. 路由器准备将 ICMP Reply 发送给 192.168.0.100, 但是同第2步, 路由器最开始的时候也不知道 192.168.0.100 的 Mac 地址是多少, 所以路由器会广播一条 ARP Request, 询问 192.168.0.100 的 Mac 地址是什么
  7. 主机 A 收到 ARP Request, 发现自己是 192.168.0.100, 于是向路由器回复 ARP Reply, 告诉路由器 192.168.0.100的 Mac 地址是 xxxA.
  8. 路由器收到 ARP Reply, 并使用该 Reply 中的 MAC 地址将第5步收到 ICMP Reply 包重新封包, 并发送出去
  9. 主机 A 收到 ICMP Reply

至此, 正常的上网流程结束. 然后对照上面的流程回答下面两个问题:

  1. 如果主机 B 无脑的向主机 A 发送 ARP Reply, 告诉 A 192.168.0.1 的 MAC 是 xxxB, 会发生什么?
  2. 如果主机 B 无脑的向路由器 GW 发送 ARP Reply, 告诉 GW 192.168.0.100 的 MAC 是 xxxB, 会发生什么?

答案如下图:

553241-20190722112403431-997800086.png

如果主机 B 做了上面说的两件事的话, 那么主机 A 访问网络的所有数据都会先经过主机 B, 并且回来的数据也都会经过 B, 至此, 整个 ARP 欺骗完成.

至于实际操作, 在自己的机器上安装一个 arpspoof 工具便可以, Ubuntu 下可以直接使用如下命令安装:

  1. apt install dsniff

安装好之后先打开 IP 转发:

  1. echo 1 > /proc/sys/net/ipv4/ip_forward

然后使用 arpspoof 命令进行欺骗, 命令使用方法如下:

  1. arpspoof -i <网卡名> -t <欺骗的目标> <我是谁>

比如上面我举得例子, 分别开两个终端:

终端1, 欺骗主机 A 我是网关

  1. arpspoof -i eth0 -t 192.168.0.100 192.168.0.1

终端2, 欺骗网关我是主机 A

  1. arpspoof -i eth0 -t 192.168.0.1 192.168.0.100

欺骗成功之后可以通过抓包工具查看主机 A 所有的流量, 这里不再多说.

转载于:https://www.cnblogs.com/qingchen1984/p/11224790.html

发表评论

表情:
评论列表 (有 0 条评论,493人围观)

还没有评论,来说两句吧...

相关阅读

    相关 ARP欺骗之——原理分析

    今天学的知识不多,忙了一天学校的东西,做了一上午路由实验,下午做了个社会调查报告,晚上才腾出时间学一些,然后得知明儿竟然要补五一的课,然而我周二是刚好没课的哈哈,下了两天雨在家

    相关 ARP欺骗原理图解

    计算机之间的通信不是按照ip地址去发送信息的,而是根据MAC地址去通信的,所以Kali机(攻击者)只要欺骗苹果机,把自己的MAC地址说成是邮递员的MAC地址就OK了,苹果机就信