ARP欺骗原理及复现

免责声明:本文章所涉及到的内容仅可用于学习交流,严禁利用文中技术进行违法行为,否则后果自负!

前置条件:

    1.kali linux

    2.ettercap工具

    3.一个具有收发功能的网卡

    4.我们的老伙计wireshark

    5.目标wifi的密码,可以看看前置文章

        暴力破解WPA加密WIFI的密码

    6.一颗积极阳光正直的心

一、ARP是什么?

    ARP:地址解析协议(Address Resolution Protocol),作用就是根据IP地址获取物理地址的一种协议。因为以太网内规定的是通过物理地址来通信的,而网络层是IP地址,为了解决这一问题,才出现了ARP协议(翻译官)。

    过程是这样的:

        主机A将包含一个IP地址的ARP请求包发送给局域网内的所有主机,询问:谁是这个IP?

        局域网内的所有主机都会收到这个包并且解析,发现不是自己就不管。

        这时B收到这个请求包,发现是自己,于是告诉A:我是这个IP,我的物理地址是XXX。

        A收到这个消息后,就在自己的小本本(ARP缓存)上记下这个IP对应的物理地址,之后要向这个IP发送消息时,他就知道这是B了

    这就是ARP的一个简略过程。

以下是wireshark抓到的一个真实请求包


 

二、ARP欺骗原理

    ARP协议的缺点是,他不会去验证这个消息是不是假的,也就是说,如果这个时候有个大坏蛋C对A说:IPXXX是我。那A就会在小本本上写下来:IPXXX的物理地址是C,然而实际上这个IP应该是B的。A不会验证,B也不会验证,这样C就把两边都给骗了。之后C就能收到两边的消息了

三、ARP欺骗复现

    这里我们要使用到的工具是ettercap

    第一步:route -n 查看网关

    第二步:调出ettercap 图形界面:ettercap -G

            选择我们的网卡wlan0并启动

    

    第三步:搜索局域网内的主机

    第四步:查看存活主机并设置目标

    第五步:开始ARP欺骗

    第六步:开启wireshark监控流量

这下我们可以看到目标访问了什么

结尾:我们可以窃听他们的数据包,但是对于https协议,我们没有密钥,所以不能知道具体内容,但也能知道向那个域名发起的请求,这也能看出https的安全性。