ARP欺骗工具-arpspoof

arpspoof

arpspoof是dsniff下的一个ARP欺骗工具
大概原理:
两台主机HostA 和 HostB想要进行通信的流程,那么主机A将需要知道自己的ip,mac 以及主机B的ip, mac。但是主机B的mac地址主机A是不知道的,所以主机A如果将他自己的IP与子网掩码进行 & 与运算得到一个ip1, 然后将主机B的ip与这个子网掩码进行相同运算得到一个ip2, 如果ip1 等于 ip2, 那么此时A与B属于同一子网。否则不属于一个子网。

每台计算机都有一个ARP缓存表,缓存表里面对应的有每一个IP地址对应的MAC地址 (MAC地址是指定计算机的标识,计算机会通过MAC地址进行通信) ,这个MAC地址是主机在和其他主机ARP通信时候的缓存,会时时刷新。
也就是说,我们伪造一个数据包,受害者被我们的数据包欺骗,得到攻击者的MAC地址,受害者就会根据ARP找到攻击者的MAC,认为攻击机就是网关,会把他上网的信息交给攻击机,这个时候攻击机有两种选项,拦截数据包,照成断网操作,也可以开启转发,看着受害者都干了些什么。

简单来说就是攻击机告诉靶机,我就是网关,计算机呢,只看数据,也不管你是谁,你说啥就是啥,靶机相信,目的达成。

操作:

攻击机IP:172.16.1.222
靶机IP:172.16.1.113
网关IP:172.16.1.254

  • 开启路由转发,否者很容易被发现,如果想要达到 断网操作,就不需要开启
  echo "1" > /proc/sys/net/ipv4/ip_forwrd
  • 进行正反向欺骗
  arpspoof -i eth1 -t 172.16.1.113 172.16.1.254
  arpspoof -i eth1 -t 172.16.1.254 172.16.1.113
  • 这个时候靶机中网关的MAC地址会变为攻击机的MAC地址,使用ARP-a查看

  • 由于我们开启的路由转发,使用靶机ping www.baidu.com查看靶机是否可以上网

    可以上网,此时我们就达到了ARP欺骗的目的

  • 我们使用命令 echo "0" > /proc/sys/net/ipv4/ip_forward 将路由转发关闭,再次验证靶机是否可以上网

    靶机无法上网,断网操作成功

posted @ 2021-11-07 15:39  Junglezt  阅读(2427)  评论(0编辑  收藏  举报