基于MAC的攻击
MAC地址泛洪和欺骗
MAC泛洪攻击
泛洪攻击解释:
(以上图为例)原本MAC A在交换机的 1 端口连接,即交换机的 1 端口记录着MAC A 的信息;端口 2 记录着MAC B 的信息;
攻击者 MAC C 向交换机发送大量的无效 MAC地址,使交换机将原有的MAC地址清除掉;
此时:MAC A需要向 MAC B发送数据,但是交换机中并没有MAC B的信息,就会将该信息进行泛洪,则主机 C 就会收到该报文,从而进行拦截。
注意:不同于之前的ARP攻击,ARP攻击指的是欺骗的是目的主机,而MAC泛洪攻击欺骗的是目的交换机。
MAC地址表项分类
类型
|
备注
|
动态表项
| 通过对帧内的源MAC进行学习而来,有老化时间 |
静态表项
|
由管理员手工配置,不会老化
|
黑洞表项
|
丢弃特定源MAC或目的MAC,不会老化
|
静态和黑洞表项不会被动态表项覆盖,而动态表项可以被静态和黑洞表项覆盖。
MAC地址表安全功能
功能
|
备注
|
禁止MAC地址学习功能
|
可以限制非信任用户登录
|
限制MAC地址学习数量
|
可以防止变化MAC地址攻击
|
端口安全
|
可以阻止其他非信任的主机通过本端口与设备通信
|
MAC-Spoofing-Defend
|
一个端口学习到的MAC不会再其他端口上学习
|
MAC地址防漂移
|
对于固定的上行设备,通过提高端口优先级,可以防止伪造MAC地址攻击
|
MAC地址漂移检测功能
|
减少网络环路对设备的影响
|
丢弃全0非法MAC地址报文
|
网络中一些主机或设备发送故障时,会发送源或目的MAC全0的报文
|
MAC地址刷新ARP功能
| MAC地址表项的端口发生变化,及时更新ARP表项 |
MAC地址表特性参数
特性
|
默认值
|
动态MAC地址表项老化时间
|
300秒
|
MAC地址学习
|
开启
|
端口MAC地址优先级
|
0
|
端口安全功能
|
关闭
|
端口安全MAC地址学习限制数量
|
1
|
端口安全的保护动作
| Restrict |
MAC地址漂移老化时间
|
300秒
|
丢弃全0非法MAC地址报文 |
关闭
|
收到全0非法MAC地址报文告警
|
关闭
|
MAC刷新ARP功能
|
关闭
|
MAC安全特性配置
命令
|
配置
|
mac-address static 0000-1111-2222 G0/0/1 vlan 10 |
添加静态MAC地址表项
|
mac-address blackhole 0666-0666-0666
|
添加黑洞MAC地址表项
|
mac-address aging-time 60
|
配置老化时间
|
mac-address learning disable
|
禁止MAC地址学习功能可在端口和VLAN下配置
VLAN下只有forward
|
mac-limit maximum 500 |
限制端口MAC地址学习数量
可在端口和VLAN下配置
|
mac-limt alarm enable /disable |
配置告警
|
drop illegal-mac enable |
丢弃全0非法MAC地址报文功能
|
drop illegal-mac alarm |
配置告警
|
mac-address update arp
|
配置MAC刷新ARP功能
|
display mac-address summary |
查看MAC地址表汇总信息
|
静态MAC和禁止MAC地址学习或限制端口MAC地址学习数量的配合使用
可先将某MAC地址绑定到某个端口上,再配置禁止MAC地址学习。
作用:防止该端口未来再接交换机,使该端口被攻击或学习到太多MAC。
MAC刷新ARP应用场景
当主机A ping 主机 B 可以ping通,而在交换机上新建的三层端口ping 主机B 不通时,可配置MAC刷新ARP。
原因:A ping B通,表示交换机中的MAC地址已经更新,所以可以将该报文进行转发;而交换机的三层端口ping 不通,表示交换机内的ARP表项老化时间未更新。