ARP协议
广播与广播域概述
·广播与广播域
-广播:将官博地址作为目的地址的数据帧
-广播域:网络中能接收到同一个广播所有节点的集合
·MAC地址广播
-广播地址为FF-FF-FF-FF-FF-FF
·IP地址广播
1)255.255.255.255
2)广播IP地址为IP地址网段的广播地址,如192.168.1.255/24
ARP协议概述
什么是ARP协议
Address Resolution Protocol,地址解析协议
将一个已知的IP地址解析成MAC地址
为什么需要ARP协议
网络设备有数据要发送给另一台网络设备时,必须要知道对方的IP 地址。IP的hi子由网络层来提供,但是仅有IP地址是不够的,IP数据报文必须封装成帧才能通过数据链路进行发送。输一局帧必须要包含目标的MAC地址,因此发送数据的那一台设备必须获取到目的MAC地址。
ARP协议过程
1)PC1发送数据给PC2,查看缓存没有PC2的MAC地址
2)PC1发送ARP请求消息(广播)
3)所有主机收到ARP请求消息
PC2回复ARP应答(单播)
其他主机丢弃
4)PC1将PC2的MAC地址保存到缓存中,发送数据
ARP攻击/欺骗
简单原理:
通过发送伪造虚假的ARP报文 (广播或单播),来实现的攻击或欺骗。
如虚假报文的mac是伪造的不存在的或者是别人的,实现ARP攻击,结果为中断通信/断网
如虚假报文的mac是攻击者自身的mac地址,实现ARP欺骗,结果可以监听、窃取、篡改、控制流量但不中断通信。
攻击方式:
主动扫描:
Hacker接入了一个陌生的WIFI网络,但是只知道自己的IP地址,还有网关地址。其他的信息都不知道(局域网设备数量,其他设备的 IP地址是多少),这时候Hacker就要通过ARP工具对这个WIFI网络进行扫描。具体方式是通过“盲扫”或者“暴力扫描”,将这个网段的IP地址都来ARP广播一次,通过应答信息来确认有什么设备,它对应的MAC,以及一些设备厂商信息。
通过这种主动扫描的方式,能得知局域网里面所有设备的信息。
这时候Hacker可以对外宣称自己是“所有人”(即可以是任何一个人),这样子可以覆盖掉其他主机的ARP缓存信息表,并生成错误的ARP映射,最终将通信流量交给Hacker。Hacker将这段通信流量丢弃,就能做到中断对方的通信。
另外一种就是告诉所有人,自己就是网关。让局域网所有人的网络数据都传给Hacker,Hacker后续转发到互联网,做到不断网但是可以监听用户数据。
被动监听:
现在设有3台主机位于局域网中,之间通过交换机联通。
现在PC1需要和PC2进行通信,因为PC1的ARP表中没有PC2的记录,接着会采用广播的方式向全体发送ARP请求。正常情况下,若收到的ARP请求不是自己的,则直接丢弃;而这里的HACKER在监听后直接发起ARP回应包:我就是PC2
现在PC1收到了两个ARP回应包,内容分别如下:
1)我是PC2,我的IP是IP2,我的MAC地址是MAC2;
2)我是PC2,我的IP是IP2,我的MAC地址是MAC3;
这时候PC1的选择优先级是---选择最新的ARP回应包(最晚到达的)
对于如何让HACKER自己的ARP回应包是后到的,只要HACKER对外不断的发出ARP欺骗包,就一定能够覆盖掉正常的ARP回应包。那么接下来PC1就建立了一个错误的ARP缓存表,此后的数据都会发送给HACKER。
ARP攻击防御
1)静态ARP绑定:
手工绑定/双向绑定(网段人数较多时,操作数量大)
windows客户机:
arp -s 网关ip 网关MAC地址
2)ARP防火墙:
自动绑定静态ARP
主动防御(网段人数较多时,容易对网关造成负担)
3)硬件级ARP防御:
交换机支持“端口”做动态ARP绑定(配合DHCP服务器)或者做静态ARP绑定
标签:ARP,协议,广播,PC2,MAC,地址,IP地址 From: https://www.cnblogs.com/ethereal258/p/17700844.html