又是三周没更新了,中途圣诞假期后面一直在玩和养伤,去浮潜导致手脚划伤休息了一个星期。在接下来又是工作第一周,修复了好几台卫星接收器。一直就没更新了,好了,言归正传,今天的CCNA课程主要是讲DHCP snooping。也就是DHCP窥探。

DHCP Snooping是交换机的一个安全特征或者安全性功能,用来窥探来自untrusted 也就是非信任接口的DHCP信息。然后将其丢弃或者过滤掉。DHCP Snooping只检测DHCP信息,其他类型的信息不会受到影响。

在默认情况下,交换机的所有接口是非信任接口,只有手动配置了才会变成新人接口,一般来说我们把下行接口配置为非信任接口,上行接口配置为信任接口。

如下图所示,连接到用户终端的就是下行端口,设置为非信任,连接到路由器或者服务器这种设备设置为信任。

那么DHCP Snooping的作用是啥呢,前面我们说过是安全性功能,所以我们先想一下常见的DHCP攻击,

第一种就是DHCP starvation(饥饿)attack,这种是比较常见的DHCP攻击,攻击者连接到交换机上后伪造大量的CHADDR(client hardware address),然后发送大量的DHCP discover message给DHCP服务器,那么DHCP服务器就会给出大量的IP地址。而一旦DHCP的IP池使用完后,其他设备和客户反而没有IP地址可以用了。如下图所示,

第二种就是DHCP Poisoning accack,这属于 man in middle attack,原理和ARP poisoning 一样,攻击者连接到交换机上,然后把自己伪装成DHCP服务器,也就是 spurious DHCP server,当其他设备发送DHCP请求时,这台伪造的DHCP服务器和真实的服务器会同时给出IP地址,但是通常来说,DHCP服务器可能要跨越若干个交换机或者其他设备,导致速度没有这台设备快,那么用户会使用伪造DHCP服务器给出的地址,然后拒绝掉真实DHCP服务器给出的地址。最后,所有的包都会先发送到伪造的DHCP服务器,然后再到网关。这就导致了所有的信息都会被监控,盗窃。攻击者甚至可以篡改信息等。如下图所示,

这里插播一下DHCP的流程,之前我们都知道叫做DORA,先是客户端发送discover,然后服务器回复offer,接下来客户端再发出request,最后服务器回复acknowledge,但是实际上还有几个信息。

DHCP服务器端,还有一个DHCP NAK,和ACK相反,这个就是用来拒绝客户端的请求。

DHCP服务器,还有Release,即释放IP地址,和decline,用来拒绝DHCP服务器给出的IP地址。

回到我们这节课的主要内容 DHCP Snooping,如果交换机开启了这个功能以后,从trusted port 接收到的信息不做任何处理,和之前一样正常的转发。如果从untrusted port接收到的信息,假如是DHCP 服务器类型的信息,则全部丢弃,比如DHCP off,DHCP acknowledge,DHCP NAK。

而假如从untrusted port接收到的信息是客户端类型的,那么需要执行检测,如果是discover和request信息,那么检测DHCP信息的CHADDR和这个包里面source MAC address是不是匹配。不匹配的话丢弃。如果是release和decline信息,那么检测包的source IP地址和之前端口记录的DHCP Snooping Blinding table是否一样,如果不一样那么丢弃掉。

那么常用的命令如下,首先还是进入到config模式

然后开启dhcp snooping

ip dhcp snooping

把dhcp snooping 应用在vlan1

ip dhcp snooping vlan 1

关闭掉这个特殊选项,默认情况下,relay agent交换机收到DHCP discover信息后会加一个 option 82,包含了从哪一台设备,哪一个接口,哪个VLAN收到的等等一系列信息然后转发给下一台设备。而DHCP snooping功能打开后,不管该设备是不是DHCP relay agent都会加上Option 82信息,而默认情况下从untrusted port收到的信息中只要含有option 82,设备就会把它丢弃掉,所以一般来说把该功能关闭掉。

no ip dhcp snooping information option

进入到某个端口

interface g0/0

将其设置为信任接口

ip dhcp snooping trust

以上就配置完毕了,下面这条用来查看 dhcp snooping blinding table,刚才我们提到了从untrusted port收到的release和decline 会被检测,就是从下面这个表来检测

show ip dhcp snooping binding

另外DHCP snooping 也可以设置速率,如果从该端口进入的DHCP信息超过设置的值,那么该端口将被err-disabled

命令如下,还是进入到config模式,并且开启了dhcp snooping

然后进入到端口后,最后的1就是设置的值,单位是每秒钟收到的包的数量

ip dhcp snooping limit rate 1

当然也可以通过下面的命令再config模式下将该端口回复。

errdisable recovery cause dhcp-rate-limit

这个功能非常适合针对攻击者使用第一种方法,DHCP starvation attacking.

YouTube player
YouTube player

-------------------------------------------------------分隔符-------------------------------------------------------------------

-------------------------------------------------------分隔符-------------------------------------------------------------------

-------------------------------------------------------分隔符-------------------------------------------------------------------

-------------------------------------------------------分隔符-------------------------------------------------------------------

-------------------------------------------------------分隔符-------------------------------------------------------------------

-------------------------------------------------------分隔符-------------------------------------------------------------------

-------------------------------------------------------分隔符-------------------------------------------------------------------

-------------------------------------------------------分隔符-------------------------------------------------------------------

-------------------------------------------------------分隔符-------------------------------------------------------------------

-------------------------------------------------------分隔符-------------------------------------------------------------------

Day 50 Anki Flashcard下载:https://drive.google.com/file/d/1DwoR5a-cHTfsOC5Q0ybUFHFxM32Z68Wn/view?usp=sharing

Day 50 Cisco Packet Tracer 练习题下载:https://drive.google.com/file/d/1ulvbkMTaOwzTW9SzTun9hmeHd-zk5DHP/view?usp=sharing

Day 50 Cisco Packet Tracer 练习题完成下载:https://drive.google.com/file/d/1qL-gutVwzH_PEeX5rflZ9Z_x_CoYSyS7/view?usp=sharing


Chao

一个三天打鱼两天晒网的博主 拖延症严重患者 干啥啥不行,学啥啥不会

0 条评论

发表回复

Avatar placeholder