希望了解更多ARP工作原理的朋友可以参考一下我前面写的两篇文章:
[CCNA图文笔记二]OSI参考模型和设备的对应关系 ,这篇文章中“数据链路层”那一节对交换机原理的描述,对理解ARP攻击非常有帮助。
arp欺骗的原理不多述,基本就是利用发 送假的arp数据包,冒充网关。一般在网上通讯的时候网关的IP和MAC的绑定是放在arp 缓存里面的,假的arp包就会刷新这个缓存,导致本该发送到网关的数据包发到了欺骗 者那里。解决的办法就是静态arp。假设网关的IP是192.168.0.1,我们要 先得到网关的正确MAC,先ping一下网关:
ping 192.168.0.1
然后运行arp查看arp缓存中的网关MAC:
localhost~$ arp
Address HWtype HWaddressFlags MaskInterface
192.168.0.1 ether 00:12:34:56:78:9AC eth0
、这里得到的网关MAC假定 为00:12:34:56:78:9A,C代表这个绑定是保存在缓冲里的,我们要做的就是把这个IP和 MAC静态的绑定在一起,首先建立/etc/ethers文件,输入以下内容:
192.168.0.1 00:12:34:56:78:9A
保存退出,之后便是应 用这个静态绑定:
localhost~$ arp -f
再运行arp查看:
localhost~$ arp
Address HWtype HWaddressFlags MaskInterface
192.168.0.1 ether 00:12:34:56:78:9ACMeth0
多了个M,表示静态网关 ~
另外,如果你不会和局域网内的用户通讯的话,那么可以干脆 把arp解析关掉,假定你的网卡是eth0,那么可以运行:
localhost~$ ifconfig eth0 -arp
这样对付那些终结者软件就可以了,但是真的有人 向攻击的话,这样还是不够的,因为攻击者还可以欺骗网关,解决的办法就是在网关和 局域网内机器上做双向绑定,原理方法同上,一般网吧里面也是这样做的。
arp是将IP地址转换为mac地址的协议。局域网内的信息交换要基于mac地址进行,所以在同一个局域网内的机器A想要和机器B通讯,它就得通过arp协议获取B的mac地址。过程:A在局域网中发送广播请求,请求中包含B的IP地址,当B监听到此请求,它就发送一个响应,响应中包含B的mac地址,A收到该响应,就会跟响应中的mac地址进行通讯。
注意这里只要局域网内有机器发送了响应,机器A就认为是机器B发送的,而不会去校验。arp攻击就针对这种漏洞进行攻击,攻击者会分别对机器A和机器B的arp请求进行响应,在A和B之间充当一个中间人,从而监听A和B的通讯。
KALI LINUX
扫描当前局域网,获取目标的IP地址和网关IP地址
2.2.1. 开启内核路由转发功能
2.2.2. 使用arpspoof开启攻击
通过 man arpspoof 可以看该命令的详细信息,此处不赘述。
截图即为arpspoof在发送伪ARP响应。
打开wireshark 并选择使用arp进行攻击的网卡。
在过滤选择器中过滤出目标IP的网络报文
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)