当前位置: 首页 > news >正文

ARP攻击 DAI动态ARP检测学习笔记(超详细)

一、概述

        ARP(Address Resolution Protocol,地址解析协议)是将IP地址解析为以太网MAC地址(或称为物理地址)的协议,指导三层报文的转发。ARP有简单、易用的优点,但是也因为其没有任何安全认证机制而容易被攻击者利用。属于是又爱又恨的一种协议了。目前ARP攻击和ARP病毒已经成为局域网安全的一大威胁,为了避免各种攻击带来的危害,华为S系列交换机提供了多种技术对攻击进行检测和解决,这就是本章节的内容了。


1、ARP表项

在聊ARP攻击前我们先回顾一下ARP表项以及ARP相关报文

        ARP通过IP地址解析MAC地址的基本原理就是查看对应的ARP表项中的IP地址与MAC地址的绑定关系,所以必须要有对应的ARP表项。

        ARP表项和MAC表项一样,总体来说也有静态和动态之分。


1.静态ARP表项

        静态ARP表项是由网络管理员手工建立的IP地址和MAC地址之间固定的映射关系。静态ARP表项不会被老化,不会被动态ARP表项覆盖。

        静态ARP表项又分为短静态ARP表项和长静态ARP表项。

  • 短静态ARP表项:仅配置了IP地址和MAC地址之间固定的映射关系,没有同时指定VLAN和出接口的ARP表项
    • 如果出接口是处于二层模式的以太网接口,短静态ARP表项不能直接用于报文转发,因为没出指定VLAN和出接口,无法得到转发路径。此时,需要发送报文时,设备会先发送ARP请求报文,如果收到的ARP应答报文中的源IP地址和源MAC地址与所配置的某短静态ARP表项的IP地址和MAC地址相同,则将收到ARP应答报文的VLAN和接口加入该静态ARP表项中,后续设备可直接用该静态ARP表项转发报文。
  • 长静态ARP表项:同时指定了IP地址和MAC地址之间固定的映射关系,以及该ARP表项所在VLAN和出接口。
    • 因为长静态ARP表项中同时包含了VLAN和出接口,故可以直接用于报文转发。建议用户采用长静态ARP表项。

对于以下场景,用户可以配置静态ARP表项

  • 对于网络中的重要设备,如服务器等,可以在交换机上配置静态ARP表项。这样,可以避免交换机上重要设备的IP地址对应的ARP表项被ARP攻击报文错误更新,从而保证用户与重要设备之间的正常通信。
  • 当网络中用户设备的MAC地址为组播MAC地址(如交换机与NLB服务器集群进行连接,而NLB服务器集群工作在组播模式,集群IP地址对应的集群MAC地址是组播MAC地址)时,可以在交换机上配置静态ARP表项,映射组播MAC地址。缺省情况下,设备收到源MAC地址为组播MAC地址的ARP报文时不会进行ARP学习。
  • 当希望禁止某个IP地址访问设备时,可以在交换机上配置静态ARP表项,将该IP地址与一个不存在的MAC地址进行绑定。

2.动态ARP表项

        动态ARP表项由ARP通过ARP报文自动生成和维护,可以被老化,可以被新的ARP报文更新,可以被静态ARP表项覆盖。动态ARP通过广播ARP请求和单播ARP应答这两个过程完成地址解析。


2、免费ARP报文

        免费ARP报文是一种特俗的ARP报文,其特殊性就是报文中的源IP地址和目的IP地址相同。免费ARP的作用主要体现在以下3个方面。

        1.IP地址冲突检测

        当设备接口的协议状态变为Up时,设备主动对外发送免费ARP报文。正常情况下不会收到ARP应答,如果收到,则表明本网络中存在与自身IP地址重复的地址。如果检测到IP地址冲突,设备会周期性地广播发送免费ARP应答报文,直到冲突解除。DHCP服务器在为客户端分配一个IP地址前也会发送免费ARP报文进行IP地址冲突检测,其中的源IP地址和目的IP地址都是待分配的IP地址在DHCP章节有介绍过。

        2.通过一个新的MAC地址

        发送方更换了网卡,MAC地址发生了变化,为了能够在动态ARP表项老化前通告网络中其他设备,发送方可以发送一个免费ARP。

        3.在VRRP备份组中用来通过主备发生了变换

        在VRRP中,发生主备变换后,新Master设备会广播发送一个免费ARP报文来通告发生了主备变换。

        设备在收到免费ARP报文后根据以下情形选择处理

  • 如果没有使能ARP表项严格学习功能(下面会介绍),设备会进行ARP学习。
  • 如果使能了ARP表项严格学习功能,则进行以下判断。
    • 如果免费ARP报文中源IP地址和自己的IP地址相同,则周期性地广播发送免费ARP应答报文,告知此IP地址在网络中存在冲突,直到冲突解除。
    • 如果免费ARP报文中源IP地址和自己的IP地址不同,免费ARP报文是在VLANIF接口收到的,并且设备上已经有免费ARP报文中源IP地址对应的动态ARP表项,则进行ARP学习,即根据收到的免费ARP报文更新该ARP表项。其余情况收到免费ARP报文后均不机进行ARP学习。

(缺省情况下,设备不使能ARP表项严格学习功能)


3、ARP安全

ARP安全是针对ARP攻击的一种安全特性。它通过一系列对ARP表项学习和ARP报文处理的限制、检测等措施来保证网络设备的安全性。ARP安全特性不仅能够防范针对ARP的攻击,还可以防范网段扫描攻击等基于ARP的攻击。常见的ARP攻击方式主要包括以下两种

1.ARP泛洪攻击,也叫Dos(Denial of Service,拒绝服务)攻击,主要采用以下两种攻击方式

  • 攻击者通过伪造大量源IP地址变化的ARP报文(以广播的方式发送),使得设备ARP映射表缓存资源被无效的ARP表项耗尽(因为设备在接收到ARP报文后会提取报文中的源IP地址和源MAC地址,如果设备上没有对应的ARP映射表就会生成新的ARP映射表项),造成合法用户的ARP报文不能继续生成ARP表项,最终导致正常用户的通信中断。
  • 攻击者利用工具扫描本网段主机或者进行跨网段扫描时,会向设备发送大量目的IP地址不能被解析的IP报文,导致设备触发大量ARP Miss(ARP表项丢失)消息,生成并下发大量临时ARP表项,然后还会广播大量ARP请求报文以对目的IP地址进行解析,从而造成CPU负荷过重,直到瘫痪。

针对防ARP泛洪攻击提供的ARP安全特性方案包括以下几个方面:

  • ARP报文限速
  • ARP Miss消息限速
  • ARP优化应答
  • 免费ARP报文主动丢弃
  • ARP表项严格学习
  • ARP表项限制
  • 禁止接口学习ARP表项

2.ARP欺骗攻击,是指攻击者通过发送伪造的ARP报文(可以是伪造的免费ARP报文,也可以是伪造的ARP请求报文或ARP应答报文),非法修改设备或网络内其他用户主机的ARP表项,造成用户或网络的报文通信异常。

针对防ARP欺骗攻击所提供的ARP安全特性方案包括以下几个方面:

  • ARP表项固化
  • 动态ARP检测(DAI)
  • ARP防网关冲突
  • 免费ARP保卫呢主动丢弃
  • 发送免费ARP报文
  • ARP报文内MAC地址一致性检查
  • ARP报文合法性检查
  • ARP表项严格学习
  • DHCP触发ARP学习

以上这些ARP安全特性的具体工作原理和具体配置方法将在下一章详细介绍

相关文章:

  • python网络爬虫
  • 一种反激变换器的设计思路(01)
  • golang-defer延迟机制
  • Spring Boot 邮件发送配置遇到的坑:解决 JavaMailSenderImpl 未找到的错误
  • 力扣第444场周赛
  • springMVC-拦截器详解
  • 算法精讲【整数二分】(实战教学)
  • Python语言的需求分析
  • 快速掌握Phoenix:简单易懂的搭建与配置指南
  • 2025 XYCTF Pwn-wp(含附件)
  • 【比赛编排软件的设计与实现】
  • Spring Boot默认注册的转换器列表及其功能说明。这些转换器使得控制器方法可以直接接收Integer、Long、Date等类型参数,无需手动实现转换
  • 重回全面发展亲自操刀
  • Redis哨兵模式下执行sentinel failover mymaster命令可能导致什么风险,如何避免
  • 1021 Deepest Root
  • 气象水文研究利器WRF-Hydro 耦合模式:从流域建模到洪水预报指南
  • MySQL的子查询
  • 网络安全小知识课堂(五)
  • Linux 进程 | 概念 / 特征 / 状态 / 优先级 / 空间
  • 【leetcode 100】贪心Java版本