HCIP——以太网交换安全(四)&DHCP Snooping

时间:2024-10-17 18:12:43

目录

一、DHCP Snooping的知识点

二、DHCP Snooping实验拓扑

三、总结

一、DHCP Snooping的知识点

1.1、DHCP snooping 概述:

①DHCP Snooping使能DHCP的一种安全特性,用于保证DHCP客户端从合法的DHCP服务端获取IP地址。DHCP服务器记录DHCP客户端IP地址与MAC地址等参数的对应关系,防止网络针对DHCP攻击。

②目前DHCP协议在应用的过程中遇到很多安全的问题,网络中存在一些针对DHCP的攻击,如DHCP Server仿冒者攻击、DHCP Server的拒绝服务攻击、仿冒DHCP报文攻击等。

1.2、DHCP snooping信任功能

1.3、DHCP Snooping绑定表

二层接入设备使用了DHCP Snooping功能后,从收到DHCP ACK报文中的提取关键信息(包括PC的MAC地址以及获取到的IP地址等),并获取与PC连接的使用了DHCP Snooping功能的接口信息(包括接口编号以及接口所属的VLAN),根据这些信息生成DHCP Snooping绑定表。

1.4、DHCP饿死攻击

①攻击原理:攻击者持续大量地向DHCP Server申请IP地址,知道耗尽DHCP Server地址池中的IP地址,导致DHCP Server不能给正常的用户进行分配。

②漏洞分析:DHCP Server向申请者分配IP地址使,无法区分正常的申请者与恶意的申请者。

1.5、DHCP Snooping 防饿死攻击

解决方法:对于饿死攻击,可以通过DHCP Snooping的MAC地址限制功能来防止。该功能通过限制交换机接口上允许学习到的最多MAC地址数目,防止通过变换MAC地址,大量发送DHCP请求。

1.6、改变CHADDR值Dos攻击

①攻击原理:攻击者持续大量地向DHCP Server申请IP地址,知道耗尽DHCP Server不能给正常的用户进行分配。

②漏洞分析:DHCP Server向申请者分配IP地址时,无法区分正常的区分申请者与恶意申请者。

1.7、DHCP Snooping防改变CHADDR值的Dos攻击的解决方法是

可以在设备配置DHCP Snooping功能,检查DHCP Request报文中的CHADDR字段,如果该字段数据帧头部的源MAC相匹配,转发报文,否则,丢弃报文。如图所示

 

1.8、DHCP中间人攻击

就是DHCP中间人攻击本质上是一种Spoofing IP/MAC攻击。要想防止DHCP中间人攻击,其实就是要防止Spoofing IP/MAC攻击。

1.9、DHCP Snooping配置方法

需要在支持DHCP Snoping功能的交换机上进行配置,包括设置信任端口、非信任端口以及生成和管理DHCP Snooping绑定表等步骤。

 二、DHCP Snooping实验

 2.1、实验拓扑图:

2.2、实验要求

1.配置合法dhcp服务器以及非法dhcp服务器的dhcp功能;

2.在SW1开启dhcp snooping功能,并且将连接合法dhcp服务器的端口设置为信任接口;

3.在G0/0/3口设置通过dhcp获取ip地址的最大数量为1,修改PC1的mac地址,模拟网络攻击。

 2.3、详细步骤和命令

(1)在合法DHCP服务器上的配置

<Huawei>system-view

[Huawei]undo info-center enable

[dhcp serrver]sys dhcp server

[dhcp server]dhcp en

[dhcp server]int g0/0/0

[dhcp server-GigabitEthernet0/0/0]ip address 10.1.1.254 24

[dhcp server-GigabitEthernet0/0/0]dhcp select interface

(2)在非合法DHCP服务器上的配置

<Huawei>system-view

[Huawei]undo info-center enable

[SW2]sys Attacker

[Attacker]int g0/0/0

[Attacker]dhcp en

[Attacker]int g0/0/0

[Attacker-GigabitEthernet0/0/0]ip address 192.168.1.254 24

(3)在LSW1上开启DHCP Snooping功能,并将连接合法DHCP服务的端口设置为信任接口

<Huawei>sys

[Huawei]undo info-center en

[Huawei]sys SW1

[SW1]dhcp en

[SW1]dhcp snooping enable

[SW1]vlan 1

[SW1-vlan1]dhcp snooping enable

[SW1-vlan1]dhcp snooping trusted interface g0/0/1

[SW1-vlan1]q

注:在这里为什么要设置信任端口呢?缺省情况下,默认所有的接口都是不信任的,因此要设置信任端口

(4)使用PC1和PC2获取IP地址

 

可以看到两台PC获取的IP地址都为合法服务器分配的IP地址。

(5)也可以数据抓包来查看

下面这张图片接口是指向合法DHCP服务器的接口G0/0/1

 

下面这张图片接口是指向非合法DHCP服务器的接口G0/0/2

从上面两张图就可以看出了

(6)查看DHCP Snooping生成的绑定表项

可以看到SW1生成了DHCP Snooping的绑定表项

(7)在G0/0/3口设置通过dhcp获取ip地址的最大数量为1,修改PC1的mac地址,模拟网络攻击

[SW1]int g0/0/3

[SW1-GigabitEthernet0/0/3]dhcp snooping max-user-number 1

[SW1-GigabitEthernet0/0/3]

修改PC1的MAC地址,重新获取IP地址,将MAC地址修改为5489-98F4-648D,然后再重新获取IP地址

可以看到,IP地址已经无法获取了,因为设备发出去的DHCP请求报文MAC地址与DHCP Snooping绑定表不一致,从而防止DHCP饿死攻击。

三、总结

总的来说,DHCP Snooping技术提供了一种有效的方法来保护网络不受DHCP相关攻击的影响,通过限制和监控DHCP流量,确保只有授权的DHCP服务器可以管理网络中的IP地址分配