0


以太网交换安全(二)----MAC地址表安全&MAC地址漂移防止与检测

目录

一、MAC地址表安全

MAC地址表项类型包括:

MAC地址表安全功能:​

实验部分:

黑洞MAC地址表:

更改动态MAC地址老化时间:​

交换机MAC学习功能切换:

静态MAC地址:

限制接口的MAC地址学习数量:

二、MAC地址漂移

什么是MAC地址漂移?

解决方法:(实验部分:)

1、优先级部署:

​2、还可以拒绝相同的优先级:

3、MAC地址漂移检测

(1)基于VLAN的MAC地址漂移检测

(2)基于全局的MAC地址漂移检测


一、MAC地址表安全

MAC地址表项类型包括:

  • 动态MAC地址表项:由接口通过报文中的源MAC地址学习获得,表项可老化。在系统复位、接口板热插拔或接口板复位后,动态表项会丢失。#无流量无人维护5分钟300s后自动老化
  • 静态MAC地址表项:由用户手工配置并下发到各接口板,表项不老化。在系统复位、接口板热插拔或接口板复位后,保存的表项不会丢失。接口和MAC地址静态绑定后,其他接口收到源MAC是该MAC地址的报文将会被丢弃。
  • 黑洞MAC地址表项:由用户手工配置,并下发到各接口板,表项不可老化。配置黑洞MAC地址后,源MAC地址或目的MAC地址是该MAC的报文将会被丢弃。#只要匹配到手动配置指定的mac地址就丢弃,用于封掉某些出故障中毒的主机,防止一直出故障占用cpu,解决故障后可恢复。

MAC地址表安全功能:

  • 为了防止一些关键设备(如各种服务器或上行设备)被非法用户恶意修改其MAC地址表项,可将这些设备的MAC地址配置为静态MAC地址表项,因为静态MAC地址表项优先于动态MAC地址表项,不易被非法修改。
  • 为了防止无用MAC地址表项占用MAC地址表,同时为了防止黑客通过MAC地址攻击用户设备或网络,可将那些有着恶意历史的非信任MAC地址配置为黑洞MAC地址,使设备在收到目的MAC或源MAC地址为这些黑洞MAC地址的报文时,直接予以丢弃,不修改原有的MAC地址表项,也不增加新的MAC地址表项。
  • 为了减轻手工配置静态MAC地址表项,华为S系列交换机缺省已使能了动态MAC地址表项学习功能。但为了避免MAC地址表项爆炸式增长,可合理配置动态MAC表项的老化时间,以便及时删除MAC地址表中的废弃MAC地址表项。
  • 为了提高网络的安全性,防止设备学习到非法的MAC地址,错误地修改MAC地址表中的原MAC地址表项,可以选择关闭设备上指定接口或指定VLAN中所有接口的MAC地址学习功能,这样设备将不再从这些接口上学习新的MAC地址。
  • 配置限制MAC地址学习数,当超过限制数时不再学习MAC地址,同时可以配置当MAC地址数达到限制后对报文采取的动作,从而防止MAC地址表资源耗尽,提高网络安全性。

实验部分:

拓扑:

配好所有地址任意主机产生通信则产生mac-add表:这个表就是动态的表自动生成的

黑洞MAC地址表:

#SW1
mac-address blackhole aabb-cc00-0010 vlan 1 (没配vlan,默认vlan)
这里把PC1设置成了黑洞mac-address,于是现象为PC1ping谁也不通,谁也ping不通PC1,黑洞这一词很形象。
现象如图:
![](https://img-
blog.csdnimg.cn/08017668cd0840edb05041f2fe8d0ed4.png)![](https://img-
blog.csdnimg.cn/7c5cc342c2134da2b27701ccef63929f.png)![](https://img-
blog.csdnimg.cn/ccf46e89d1f0482eab7ec5d46e52f9ce.png)

更改动态MAC地址老化时间:

备注:时间一般就默认的即可,现网基本没人动这个,太长更新不及时,太短占用CPU也不太好。

交换机MAC学习功能切换:

控制是否学习MAC地址并指定后续动作:泛洪/丢弃::forward Forward packets,discard Discard packets
命令:
#SW1
interface GigabitEthernet0/0/1
mac-address learning disable action discard
这里的意思是不学习来自g0/1的源MAC地址并且收到数据包时找不到对应表项不转发泛洪

现象为PC1到PC2/3 不通,交换机也学不到任何mac地址
![](https://img-
blog.csdnimg.cn/f6ec7f70a7f642ffbba8c94778b3901e.png)![](https://img-
blog.csdnimg.cn/37e5ec09016e4282ab464106c2ce8046.png)

其他:

静态MAC地址:

最安全但是要手写条目多比较烦,就是手写静态MAC地址,不是手写的就丢弃
配置:接上边的禁止学习之后,禁止学习配置还在
#SW1
mac-address static aabb-cc00-0010 GigabitEthernet 0/0/1 vlan 1
可以看到PC1到PC2/3通了,这样结合上边的禁止学习功能更加安全实用

限制接口的MAC地址学习数量:

配置:
#SW1
interface GigabitEthernet 0/0/3
mac-limit maximum 3 alarm enable
#最多学习3个,超出告警
现象:
3个以内时都是正常:


超过三个后:


可以看到触发告警:

还可以加上动作(模拟器垃圾做不了)

还能基于vlan进行控制

二、MAC地址漂移

什么是MAC地址漂移?

MAC地址漂移是指:
在同一个VLAN内,一个MAC地址有两个出接口,并且后学习到的出接口覆盖原出接口的现象。这是官方定义,通俗的讲,MAC地址漂移指的是MAC地址表项的出接口发生了变更

图文转自:知乎
----作者:网工Fox,原链接:

https://zhuanlan.zhihu.com/p/345269149![icon- default.png?t=N7T8](https://csdnimg.cn/release/blog_editor_html/release2.3.6/ckeditor/plugins/CsdnLink/icons/icon- default.png?t=N7T8)https://zhuanlan.zhihu.com/p/345269149

  • MAC地址漂移是指交换机上一个VLAN内有两个端口学习到同一个MAC地址,后学习到的MAC地址表项覆盖原MAC地址表项的现象。同一个mac地址在不同地方学到了
  • 当一个MAC地址在两个端口之间频繁发生迁移时,即会产生MAC地址漂移现象。
  • 正常情况下,网络中不会在短时间内出现大量MAC地址漂移的情况。出现这种现象一般都意味着网络中存在环路,或者存在网络攻击行为。
  • 如图:

![](https://img-
blog.csdnimg.cn/8145678caddc4dd98fb77722f820ead9.png)![](https://img-
blog.csdnimg.cn/e11094b2357045b88b9340503c9dc446.png)
但是有的时候漂移是正常的:比如VRRP备设备切换为主设备时发送免费ARP;WLAN的漫游功能也会有漂移。

解决方法:

(实验部分:)

1、优先级部署:

缺省时接口MAC地址学习的优先级均为0,数值越大优先级越高。当同一个MAC地址被两个个接口学习到后,接口MAC地址学习优先级高的会被保留,MAC地址学习优先级低的被覆盖。
拓扑图:
配置之前可以看到攻击者会把主机顶下去造成网络故障:

ping同一个地址都能ping通
配置:
interface g 0/0/1
mac-learning priority 3
可以看到PC2开始不通了,PC1通信正常
![](https://img-
blog.csdnimg.cn/8d79342df23b40809179d7d7769e7b6d.png)![](https://img-
blog.csdnimg.cn/7777c693bcc44839a55c882ede7d9221.png)

mac-address地址表也正常:

2、还可以拒绝相同的优先级:

相同优先级不准漂移,后来的不能覆盖之前的
配置:
#SW1
undo mac-learning priority 0 allow-flapping
现象:
先让PC1上线,再让攻击者:PC2上线,可以看到:
地址表正常:


PC1依然正常,PC2失败:

TEST----
PC1
TEST----PC2

3、MAC地址漂移检测
(1)基于VLAN的MAC地址漂移检测

根据检测做出相应动作:

  • 发送告警,当检测到MAC地址发生漂移时只给网管发送告警。
  • 接口阻断,当检测到MAC地址发生漂移时,根据设置的阻塞时间对接口进行阻塞,并关闭接口收发报文的能力。
  • MAC地址阻断,当检测到MAC地址发生漂移时,只阻塞当前MAC地址,而不对物理接口进行阻塞,当前接口下的其他MAC的通信不受影响。
(2)基于全局的MAC地址漂移检测

mac-address flapping
detection----#默认配置,华为交换机默认开启全局MAC地址漂移检测功能,因此缺省时交换机便会对设备上的所有VLAN进行MAC地址漂移检测。
当交换机检测到MAC地址漂移,在缺省情况下,它只是简单地上报告警,并不会采取其他动作。在实际网络部署中,可以根据网络需求,对检测到MAC地址漂移之后定义以下动作:

  • error-down 当配置了MAC地址漂移检测的端口检测到有MAC地址漂移时,将对应接口状态置为error-down,不再转发数据。
  • quit-vlan 当配置了MAC地址漂移检测的端口检测到有MAC地址漂移时,将退出当前接口所属的VLAN。

其他:
eNSP上是这个:好像有现象但是我这里做实验的时候bug了

​​​​

还是以PPT上为准吧:
[Switch2-GigabitEthernet0/0/1] mac-address flapping action error-down

在某些场景下,需要对某些VLAN不进行MAC地址漂移检测,可以通过配置MAC地址漂移检测的VLAN白名单来实现。
如果接口由于发生了MAC地址漂移从而被设置为Error-Down,默认情况下是不会自动恢复的。
如果希望Error-Down的接口能够自动恢复,

  • 在系统视图下配置如下命令: error-down auto-recovery cause mac-address-flapping interval time-value

如果接口由于发生了MAC地址漂移,被设置为离开VLAN,
如要实现接口自动恢复,

  • 可以在系统视图下配置如下命令: mac-address flapping quit-vlan recover-time time-value

配置命令:由于eNSP有的都不支持,就只放截图了看看就好。

display mac-address flapping record 可查看到漂移记录

网络安全工程师(白帽子)企业级学习路线

第一阶段:安全基础(入门)

img

第二阶段:Web渗透(初级网安工程师)

img

第三阶段:进阶部分(中级网络安全工程师)

img

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

学习资源分享

标签: ssl 安全

本文转载自: https://blog.csdn.net/ZL_1618/article/details/136642984
版权归原作者 程序员--青青 所有, 如有侵权,请联系我们删除。

“以太网交换安全(二)----MAC地址表安全&MAC地址漂移防止与检测”的评论:

还没有评论