以太网交换安全:DHCP Snooping

一、DHCP Snooping的概念及功能

DHCP Snooping是一种用于增强网络中DHCP服务安全性的技术。以下是对以太网交换安全中的DHCP Snooping进行详细的介绍:

  1. 基本概述
    • 定义目的:DHCP Snooping是一种网络安全技术,旨在防止未经授权的DHCP服务器在网络中分配IP地址,从而保护网络不受中间人攻击和其他相关威胁。
    • 工作原理:通过监控DHCP交互过程中的报文,DHCP Snooping能够区分合法与非法的DHCP服务器,并确保只有经过验证的DHCP服务器才能为客户端分配IP地址。它通过建立和维护一个包含MAC地址、IP地址和VLAN信息的绑定表来实现这一目标。当设备收到来自非信任端口的DHCP响应时,会检查这些信息是否与绑定表中的记录匹配,如果不匹配则丢弃该报文。
  2. 主要功能
    • 过滤非法DHCP服务器:DHCP Snooping能够识别并阻止非法DHCP服务器发出的响应,确保网络中的设备只能从管理员指定的合法DHCP服务器获取IP地址。
    • 信任接口功能:DHCP Snooping的信任功能能够保证客户端从合法的服务器获取IP地址。网络如果存在私自架设的DHCP服务器仿冒者,则可能导致DHCP客户端获取错误的IP地址和网络配置参数,无法正常通信。DHCP Snooping信任功能可以控制DHCP服务器应答报文的来源,以防止网络中可能存在的DHCP服务器仿冒者为DHCP客户端分配IP地址及其他配置信息 DHCP Snooping信任功能将接口分为信任接口和非信任接口
    • 生成并维护绑定表:开启DHCP Snooping功能的交换机会从收到的DHCP ACK报文中提取关键信息,如客户端的MAC地址、分配的IP地址等,并与接口编号和VLAN等信息一起组成DHCP Snooping绑定表。这张表记录了DHCP客户端与服务器之间的各种关系,可以用于防范非法用户的攻击。
    • 源MAC校验:除了基本的绑定表功能外,DHCP Snooping还支持源MAC地址校验。这意味着交换机会检查收到的DHCP请求报文中的二层源MAC地址是否与CHADDR字段中的硬件地址一致,如果不一致则丢弃该报文,以防止仿冒DHCP报文攻击。
  3. 应用场景
    • 防止DHCP Server仿冒者攻击:由于DHCP协议本身缺乏认证机制,网络上可能存在伪造的DHCP服务器。DHCP Snooping可以通过配置信任和非信任接口来防止这种情况的发生,从而保证客户端只能从合法的DHCP服务器获取IP地址。
    • 防止非DHCP用户攻击:静态获取IP地址的用户(非DHCP用户)可能对网络造成多种攻击。通过开启根据DHCP Snooping绑定表生成接口静态MAC表项的功能,可以有效防止这类攻击。
    • 防止DHCP报文泛洪攻击:如果攻击者短时间内向设备发送大量的DHCP报文,可能会对设备的性能造成冲击。DHCP Snooping可以通过检测DHCP报文的上送速率来防止这种攻击。
    • 防止仿冒DHCP报文攻击:已获取到IP地址的合法用户可能通过发送伪造的DHCP Request或Release报文来进行续租或释放IP地址。DHCP Snooping可以通过匹配操作来判别这些报文是否合法,从而防止仿冒攻击。
    • 防止DHCP Server饿死攻击和更改CHADDR值的Dos攻击:如果设备接口下存在大量攻击者恶意申请IP地址,可能会导致DHCP Server中的IP地址快速耗尽。通过配置允许接入的最大DHCP用户数和检测Request报文中的CHADDR字段与帧头MAC地址是否一致,可以有效防止这种攻击。

二、 实验

命令配置

合法服务器

dhcp serverdhcp enable //打开DHCP

dhcp serverint g0/0/0

dhcp server-GigabitEthernet0/0/0ip add 10.1.1.254 24

dhcp server-GigabitEthernet0/0/0dhcp select interface //基于接口的DHCP

非法服务器

Attackerdhcp enable

Attackerint g0/0/0

Attacker-GigabitEthernet0/0/0ip add 192.168.1.254 24

Attacker-GigabitEthernet0/0/0dhcp select interface

LSW1

SW1dhcp enable

SW1dhcp snooping enable //开启DHCP snooping功能

SW1vlan 1 //进入VLAN1

SW1-vlan1dhcp snooping enable

SW1-vlan1dhcp snooping trusted interface g0/0/1 //将G0/0/1的接口设为信任接口

SW1int g0/0/3

SW1-GigabitEthernet0/0/3dhcp snooping max-user-number 1 //将接口的最大MAC地址学习数为1

SW1dis dhcp snooping user-bind all //查看DHCP snooping的绑定表

DHCP Dynamic Bind-table:

Flags:O - outer vlan ,I - inner vlan ,P - map vlan

IP Address MAC Address VSI/VLAN(O/I/P) Interface Lease


10.1.1.251 5489-98f4-648d 1 /-- /-- GE0/0/3 2024.10.17-15:25

10.1.1.250 5489-98b7-5bb8 1 /-- /-- GE0/0/4 2024.10.17-15:06

10.1.1.249 5489-982c-5138 1 /-- /-- GE0/0/5 2024.10.17-15:11

10.1.1.252 5489-98b7-5bb9 1 /-- /-- GE0/0/4 2024.10.17-15:25

10.1.1.248 5489-98b2-2984 1 /-- /-- GE0/0/6 2024.10.17-15:33


print count: 5 total count: 5

dhcp server-GigabitEthernet0/0/0 dhcp select interface
这个意思是使用接口的ip作为网关,例如你vlanif的ip是192.168.100.1,那么下面的pc获取的地址就是192.168.100.254,网关就是192.168.100.1

dhcp server-GigabitEthernet0/0/0dhcp select global
这个是dhcp选择全局地址池,这个你要定义dhcp pool,具体的网关啥的需要你自己配置

三、测试

我们可以修改一个PC的MAC地址来达成实验的目的,首先查看一下PC1的IP地址,然后将PC1的MAC地址修改就可以看到,PC1获取不到IP地址了,这是因为我们限制PC1与交换机连接的接口最大学习数为1,所以我们PC1的MAC地址修改后它就获取不到了

PC2因为没有限制学习数所以可以更改MAC地址获取IP地址

四、总结

总的来说,DHCP Snooping是提升网络中DHCP服务安全性的重要技术手段之一。它通过监控和管理DHCP交互过程,确保只有经过验证的DHCP服务器才能为客户端分配IP地址,从而有效防止了多种针对DHCP的攻击行为

相关推荐
fei_sun23 分钟前
黑洞路由(Null Route/空接口路由)
服务器·前端·javascript
Tipriest_41 分钟前
ubuntu创建和更换当前swap大小
linux·运维·ubuntu
碎碎念_49242 分钟前
以太网技术、VLAN、STP详解
网络·stp·vlan
云水一下1 小时前
DVWA从入门到精通(四):CSRF(跨站请求伪造)
安全·csrf·dvwa
tuddy7894641 小时前
Codex++ 安全边界探秘:从模型能力到风险防御
人工智能·python·安全
hbugs0011 小时前
【案例分享】全网首个华三数据中心流量可视化实验,基于EVE-NG V7平台
网络·网络协议·安全·devops·eve-ng
深盾科技_Virbox1 小时前
深盾科技·Virbox产品体系全景解读:软件安全如何从加密锁走向全生命周期
java·大数据·算法·安全·软件需求
云边云科技_云网融合2 小时前
零信任安全:数字化时代的企业防护新范式
人工智能·安全·ai
WI8LbH7882 小时前
Ubuntu 部署Harbor
linux·运维·ubuntu
不会C语言的男孩2 小时前
第 13 章 网络与分布式系统基础
网络