1、概述

广播与广播域

  • 广播:将广播地址作为目标地址的数据帧。
  • 广播域:网络中所有能接收到同一个广播的所有节点的集合,广播域越小越好,交换机无法隔离广播域,路由器和网关会隔绝广播域。

Mac地址的广播地址:

  • FF-FF-FF-FF-FF-FF

IP广播地址:
255.255.255.255

  • 广播IP地址为IP地址网段的广播地址,如192.168.1.255/24

ARP协议(Address Resolution Protocol,地址解析协议):

  • 将每一个已知IP地址解析成MAC地址。

ARP协议原理:

  • 发送ARP广播请求:
    • ARP报文内容:我是10.1.1.1,我的Mac地址是AA
    • 谁是10.1.1.3,你的Mac地址是?
  • 接收ARP单播应答

image.png
f801c5e119cfbed1175999637afc51c.jpg
b9da57799fe213f5999899f38976d57.jpg
image.png

2、ARP攻击或欺骗的原理:

  • 通过发送伪造虚假的ARP报文(单播或广播),来实现的攻击或欺骗:
    • 如虚假报文的Mac地址是伪造的不存在的,实现的是ARP攻击,结果为终端通信/断网;
    • 如虚假报文的Mac地址是攻击者自身的Mac地址,实现的是ARP欺骗,可以实现监听、窃取、篡改、控制流量,但可以不中断通信。
  • 攻击原理:
    • 假设在10.1.1.0/24网段,网关为10.1.1.254,主机10.1.1.1广播询问主机10.1.1.3的Mac地址,主机10.1.1.2收到广播包后,用工具生成一个虚假的ARP应答报文,内容为“我是10.1.1.3,我的Mac地址为EE”,EE可以是伪造的Mac地址,这时候主机10.1.1.1会收到两个应答,ARP报文是”后到后得“,总是会学习最新的,只要10.1.1.2发送的虚假应答包比10.1.1.3晚,就能够被10.1.1.1学习到,10.1.1.1就会以为EE是目标主机,同样的10.1.1.3发送ARP广播请求包时,10.1.1.2采用同样的手段告诉10.1.1.3”我是10.1.1.1,我的Mac地址为EE“,这样主机1和主机3之间发送的信息全部会丢失,1和3之间无法通信。
    • 当一个主机发现目标IP与自己不在同一网段时,首先会发送ARP广播请求包询问网关的Mac地址,如果收到虚假的伪造的ARP应答报文,则会认为错误的地址是网关,从而无法访问互联网。
    • 通过广播请求报文攻击的原理:伪造虚假的请求,如将网关IP地址和伪造的Mac地址作为自己的信息,来询问一个伪造的IP,广播域内的主机收到广播请求包后,会学习其中的信息,将网关的IP和Mac地址缓存下来,当访问互联网时,由于网关IP的Mac地址是错误的,则广播域内的主机均无法访问互联网。
  • 欺骗原理
    • 假设10.1.1.1的Mac地址是AA,10.1.1.3的为CC,10.1.1.4的为DD,10.1.1.254的为BB,主机1和主机3在发送广播请求包时,主机4将自己的Mac地址DD作为应答发送给主机1和3,当主机1和3相互通信时,发送的信息都会到主机4,主机4可以随意处置收到的信息,可以将信息再发送给正确的主机让他们误以为还在通信;主机4可以篡改双方发送的信息;主机4可以丢弃部分信息,如果使用的是TCP服务时,接收端主机会询问发送端主机重传丢失的数据,双方传输的速率就会下降;主机4可以欺骗域内主机自己是网关,从而控制域内主机访问互联网发送的信息,可以达到控制流量的目的。
    • image.png
    • image.png

      3、路由器的工作原理:

  1. 当一个数据帧到达路由器时,路由器首先检查数据帧的目标Mac地址是否为自己,如果不是,直接丢弃,如果是,则解封装帧头帧尾,将IP数据包送到路由器内部;
  2. 路由器检查IP数据包包头种的目标IP,并匹配路由表,如果匹配失败,则丢弃该数据包,并向源IP返回错误信息,如果匹配成功,则将IP包路由到出接口;
  3. 封装帧,将出接口的Mac地址作为源Mac地址,然后检查ARP缓存表,检查是否有吓一跳的Mac地址,如果有,将提取并作为目标Mac地址封装到帧头,如果没有,则发送ARP广播请求报文请求下一跳Mac地址,获取到对方的Mac地址后,记录缓存,并封装到帧头,最后将帧发送出去。

    4、ARP攻击防御

  4. 静态ARP绑定,手工绑定/双向绑定(主机与路由器均静态ARP绑定)

    1. arp -s ip地址 mac地址
  5. ARP防火墙绑定,能够绑定静态ARP,能够主动防御,不断向网关发送ARP报文表明自己的身份,但是会造成网络负担。

  6. 硬件级ARP防御,企业级交换机支持在“端口”做动态ARP绑定,在DHCP动态分配IP时,动态绑定IP地址和Mac地址,只有数据包的IP地址和Mac地址一致才能通过;或者做静态ARP绑定。
    1. Switch(config)#ip dhcp snooping
    2. Switch(config)#int range f0/1 - 24(接口数量) #批量端口命令控制
    3. Switch(config-if-range)#shutdown
    image.png