实验十一 计算机网络安全之MAC地址泛洪攻击
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验十一MAC地址泛洪攻击及应对策略
【实验目的】
通过本实验理解MAC地址泛洪攻击的基本原理,加深对交换机工作原理的理解,掌握应对MAC攻击的基本方法。
【实验任务】
1、按照参考拓扑图构建逻辑拓扑图;
2、通过实验理解MAC地址泛洪攻击的工作原理;
3、通过交换机MAC地址绑定实现对MAC地址泛洪攻击的防御。
【实验背景】
计算机网络的组建,交换机是必不可少的一个设备,我们都会用它来做一些相应的配置,如划分VLAN、VTP、以及生成树这些,但是当我们配置了这些以后呢?我们如何来保证我们局域网内的端口安全呢?这是一个必要的操作。
首先我们来看一下交换机到需要要应对哪些方面的安全隐患:
1).VLAN attacks
2).Spoofing attacks
3).Attacks on switch devices
4).MAC Layer attacks
MAC Layer attacks主要就是MAC地址地址的泛洪攻击。
大家都知道交换机需要对MAC 地址进行不断的学习,并且对学习到的MAC地址进行存储。
MAC地址表有一个老化时间,默认为5分钟,如果交换机在5分钟之内都没有再收到一个MAC地址表条目的数据帧,交换机将从MAC地址表中清除这个MAC地址条目;如果收到,则刷新MAC地址老化时间。
因此在正常情况下,MAC地址表的容量是足够使用的。
但如果攻击者通过程序伪造大量包含随机源MAC地址的数据帧发往交换机(有些攻击程序一分钟可以发出十几万分伪造MAC地址的数据帧),交换机根据数据帧中的MAC地址进行学习,一般交换机的MAC地址表的容量也就几千条,交换机的MAC地址表瞬间被伪造的MAC地址填满。
交换机的MAC地址表填满后,交换机再收到数据,不管是单播、广播还是组播,交换机都不在学习MAC地址,如果交换机在MAC地址表中找不到目的MAC地址对应的端口,交换机将像集线器一样,向所有的端口广播数据。
这样就达到了攻击者瘫痪交换机的目的,攻击者就可以轻而易举的获取全网的数据包,这就是MAC地址的泛洪攻击,而我们的应对方法就是限定映射的MAC地址数量。
【实验背景】
Catalyst Switch2950-24 1台
PC PC—PT 4台
【实验拓扑图和配置参数表】
表10.1 配置参数表
主机名IP地址缺省网关所属网段子网掩码
PC0 192.168.1.2 192.168.1.1 192.168.1.0 255.255.255.0 PC1 192.168.1.3 192.168.1.1 192.168.1.0 255.255.255.0 PC2 192.168.1.4 192.168.1.1 192.168.1.0 255.255.255.0 PC3 192.168.1.5 192.168.1.1 192.168.1.0 255.255.255.0
图10.1 参考拓扑图
【实验步骤】
步骤1 按照给出的参考拓扑图和配置参数表,构建实验拓扑图,完成对PC机的配置,并且测试下网络的连通性。
步骤2 .1 在交换机Fa0/1端口上配置MAC地址绑定:
Switch>enable
Switch#configure term
Switch(config)#interface fastethernet0/1
Switch(config-if)#switchport mode access //当连接是主机时,接入链路
Switch(config-if)#switchport port-security //启动端口安全
Switch(config-if)#switchport port-security mac-address 00E0.F7C5.4670
//绑定MAC地址(此处MAC地址为PC0的MAC地址),默认只能绑定一个
Switch(config-if)#switchport port-security violation ?
protect Security violation protect mode //不转发数据
restrict Security violation restrict mode //不转发数据,上报网管平台
shutdown Security violation shutdown mode //关闭接口,并上报网管平台Switch(config-if)#switchport port-security violation shutdown
下面我们进行下测试,看看能否正常使用。
图10.2 PC0连通性测试
我们测试完之后查看下MAC地址表
Switch#show mac-address-table
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
1 0001.426d.74cd DYNAMIC Fa0/
2 //这一条动态学习到的
1 0001.63bc.d28a DYNAMIC Fa0/3 //这条也是动态学习到的
1 00e0.f7c5.4670 STATIC Fa0/1
//从这可以看出这MAC地址是静态指定的
从这里我们可以看出,PC0能够正常使用。
如果我们用PC3代替PC0接到Fa0/1端口上看看有什么效果。
图10.3 发送数据包之前的拓扑图
从上图我们可以看出,PC3接在Fa0/1接口上面,当PC3没有向其他网段发送数据包的时候一切正常,如果发送了数据包会有什么样的反应? 接下来我们进行测试一下
图10.4 PC3连通性测试
图10.5 发送数据包之后的拓扑图
由此可以看出,当交换机的Fa0/1接口接PC0的时候,能够正常使用,但当PC3接入到交换机的Fa0/1接口之后,PC3向PC2发送数据包的时候,交换机发现PC3的MAC地址不是所指定的MAC地址,所以就执行将此端口shutdown,从上图可以看到PC3 连接的Fa0/1接口已经被shutdown。
如何对已经shutdown的端口进行恢复呢在实际应对的时候交换机都可以有缺省恢复时间,但在仿真环境下没有这项功能。
步骤2.2 更换一台交换机然后输入对交换机再进行如下配置:
Switch>enable
Switch#configure terminal
Switch(config)#interface fastethernet0/1
Switch(config-if)#switchport mode access //当连接是主机时,接入链路
Switch(config-if)#switchport port-security //启动端口安全
Switch(config-if)#switchport port-security mac-address 00E0.F7C5.4670
Switch(config-if)#switchport port-security violation restrict
再次进行测试的时候交换机的Fa0/1端口就不会出现shutdown的情况了。
图10.6 发送数据包之后的拓扑图
但是在实际中不可能一个端口只绑定一个MAC地址。
如果要绑定100条MAC地址,不管是MAC地址的收集还是绑定都是一件非常繁琐的事,所以一种让交换机自动获得接入设备的MAC地址并进行绑定的方法是十分必要的。
接下对Fa0/1和Fa0/2接口来我们进行相应的设置:
Switch(config)#interface fastethernet 0/1
Switch(config-if)#switch port-security maximum 3
//设定绑定多个MAC地址
Switch(config-if)#switchport port-security mac-address sticky
Switch(config-if)#exit
Switch(config)#interface fastethernet 0/2
Switch(config-if)#switch port-security maximum 3
Switch(config-if)#switch port-security mac-address sticky
Switch(config-if)#end
接下来我们测试下PC3到PC1的链路通还是不通,
可以看出通信链路已经可以进行通信了。
然后查看下MAC地址表:
Switch#show mac-address-table
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
1 0001.426d.74cd DYNAMIC Fa0/2
1 0001.63bc.d28a DYNAMIC Fa0/3
1 0090.2bca.63de STATIC Fa0/1
1 00e0.f7c5.4670 STATIC Fa0/1
可以看出交换机的Fa0/1接口自动获取了PC3的MAC地址作为绑定的静态MAC地址,这样PC3才能够通过Fa0/1端口发送数据包。
可以看出这样的策略才使得交换机能够在应对MAC地址泛洪攻击的同时不影响正常的通信设备的更换。
【实验思考】
1、在我们进行包测试的时候经常出现的STP类型的数据包属于哪个协议,其应对的是什么样的问题,在计算机网络中发挥什么样的作用?
2、交换机面临的安全威胁还有哪些?
3、路由器会面临哪些网络安全威胁,有什么样应对策略?。