DHCP Snooping如何防止欺骗

wen 网络安全 2

本文目录导读:

DHCP Snooping如何防止欺骗

  1. 建立信任端口与非信任端口
  2. 验证 DHCP 消息的源 MAC 地址
  3. 维护 DHCP 绑定数据库(DHCP Snooping Binding Database)
  4. 速率限制(Rate Limiting)
  5. 选项 82 注入(Option 82)
  6. 常见欺骗攻击防御对比
  7. 配置示例(Cisco 交换机)

DHCP Snooping(DHCP 监听)是一种网络安全功能,主要用于防止 DHCP 相关的欺骗攻击,它通过监控和过滤 DHCP 消息,确保只有来自可信 DHCP 服务器的响应才能被客户端接收,以下是 DHCP Snooping 防止欺骗的具体机制:

建立信任端口与非信任端口

  • 信任端口(Trusted Port):通常连接合法的 DHCP 服务器或上行链路,这些端口可以发送和接收所有类型的 DHCP 消息(如 Offer、ACK)。
  • 非信任端口(Untrusted Port):通常连接客户端(如用户设备、交换机端口),非信任端口默认会过滤掉来自 DHCP 服务器的响应消息(如 Offer、ACK),只有 DHCP 请求消息(如 Discover、Request)允许从非信任端口发出。

作用:防止非信任端口接入的“伪 DHCP 服务器”向客户端发送欺骗性的 IP 配置(如伪造的网关地址)。

验证 DHCP 消息的源 MAC 地址

  • DHCP Snooping 会检查 DHCP 消息中的 CHADDR 字段(客户端硬件地址)是否与数据链路层的 源 MAC 地址 一致。
  • 如果两者不匹配(攻击者伪造了客户端 MAC 地址或发送欺骗应答),交换机将丢弃该 DHCP 消息。

作用:防止攻击者利用 MAC 地址欺骗(MAC Spoofing)冒充其他客户端或服务器。

维护 DHCP 绑定数据库(DHCP Snooping Binding Database)

  • 交换机在非信任端口上监听 DHCP 请求和应答过程,记录每个客户端的 MAC 地址IP 地址租约时间绑定端口VLAN 等信息,并存储到 DHCP Snooping 绑定表中。
  • 该表用于后续的防御检查,
    • IP 源保护(IP Source Guard):结合 DHCP Snooping 绑定表,只允许表中记录的 IP 地址和 MAC 地址从对应端口发送数据。
    • 动态 ARP 检测(DAI,Dynamic ARP Inspection):利用绑定表验证 ARP 包中的 IP 和 MAC 映射关系,防止 ARP 欺骗。

作用:确保只有经过合法 DHCP 分配的 IP 地址才能被使用,防止攻击者盗用 IP 或配置静态 IP 绕过认证。

速率限制(Rate Limiting)

  • 对非信任端口的 DHCP 消息(如 Discover、Request、ACK 等)进行速率限制,如果某个端口在单位时间内发送的 DHCP 消息数量超过阈值,该端口会被暂时关闭或丢弃多余消息。

作用:防止 DHCP 饥饿攻击(即攻击者通过发送大量伪造的 DHCP 请求,耗尽 IP 地址池)。

选项 82 注入(Option 82)

  • 当 DHCP Snooping 在非信任端口收到客户端请求后,会在 DHCP 请求消息中插入 Option 82(Relay Agent Information Option),包含客户端的端口号和 VLAN ID。
  • 合法的 DHCP 服务器可以识别 Option 82 信息,将应答消息带回相同的端口,避免跨端口欺骗。
  • 如果非信任端口的 DHCP 应答中不包含正确的 Option 82 信息,交换机将丢弃该应答。

作用:防止二层网络中的“中间人”攻击或伪造 DHCP 响应,同时支持基于端口的策略(如特定端口获得特定 IP 段)。


常见欺骗攻击防御对比

攻击类型 攻击方式 DHCP Snooping 防御机制
DHCP 服务器欺骗 攻击者冒充合法 DHCP 服务器,提供错误的网关或 DNS。 信任端口只允许连接合法服务器,非信任端口丢弃 DHCP Offer/ACK。
DHCP 饥饿攻击 攻击者发送大量伪造 MAC 的 DHCP Discover 请求,耗尽 IP 池。 非信任端口速率限制,短时间内超阈值则关闭端口或丢弃消息。
MAC 地址欺骗 攻击者伪造 MAC 地址冒充客户端,获取 IP 或盗用 IP。 检查 CHADDR 与源 MAC 一致性,并维护绑定表验证。
中间人攻击 攻击者通过伪造 DHCP 消息插入链路。 Option 82 确保响应必须回到原端口,避免跨端口劫持。

配置示例(Cisco 交换机)

! 全局启用 DHCP Snooping
ip dhcp snooping
ip dhcp snooping vlan 10,20
! 将连接到合法 DHCP 服务器的端口设为信任端口
interface GigabitEthernet0/1
 description "连接到合法 DHCP 服务器"
 ip dhcp snooping trust
! 非信任端口默认即为 untrusted(无需显式配置),但可设置速率限制
interface GigabitEthernet0/2
 description "用户接入端口"
 ip dhcp snooping limit rate 10        ! 限制该端口每秒 DHCP 消息数不超过 10

DHCP Snooping 通过划分端口信任级别、验证消息合法性、维护绑定数据库、执行速率限制以及注入 Option 82 等多重手段,有效抵御 DHCP 相关的欺骗攻击,保证了网络 IP 分配的合法性和安全性,它常与 IP Source Guard 和 Dynamic ARP Inspection 配合使用,形成更完整的安全体系。

抱歉,评论功能暂时关闭!