针对交换机的攻击主要有以下几类:
1、交换机配置/管理的攻击
2、MAC泛洪攻击
3、DHCP欺骗攻击
4、MAC和IP欺骗攻击
5、ARP欺骗
6、VLAN跳跃攻击
7、STP攻击
8、VTP攻击
为了防止交换机被攻击者探测或控制,必须在交换机上配置基本的安全:
使用合格的密码
使用ACL,限制管理访问
配置系统警告用语
禁用不需要的服务
关闭CDP
启用系统日志
使用SSH替代Telnet
关闭SNMP或使用SNMP V3
交换机的端口安全
交换机依赖MAC地址表转发数据帧,如果MAC地址不存在,则交换机将帧转发到交换机上的每一个端口(泛洪),然而MAC地址表的大小是有限的。
MAC泛洪攻击利用这一限制用虚假源MAC地址轰炸交换机,直到交换机MAC地址表变满。交换机随后进入称为 “失效开放” (Fail-open)的模式,开始像集线器一样工作,将数据包广播到网络上的所有机器。
因此,攻击者可看到发送到无MAC地址表条目的另一台主机的所有帧。要防止MAC泛洪攻击,可以配置端口安全特性,限制端口上所允许的有效MAC地址的数量,并定义攻击发生时端口的动作:关闭、保护、限制。
DHCP Snooping
当交换机开启了 DHCP-Snooping后,会对DHCP报文进行侦听,并可以从接收到的DHCP Request或DHCP Ack报文中提取并记录IP地址和MAC地址信息。
另外,DHCP-Snooping允许将某个物理端口设置为信任端口或不信任端口。信任端口可以正常接收并转发DHCP Offer报文,而不信任端口会将接收到的DHCP Offer报文丢弃。
这样,可以完成交换机对假冒DHCP Server的屏蔽作用,确保客户端从合法的DHCP Server获取IP地址。
dhcp-snooping的主要作用就是隔绝非法的dhcp server,通过配置非信任端口。
与交换机DAI的配合,防止ARP病毒的传播。
建立和维护一张dhcp-snooping的绑定表,这张表一是通过dhcp ack包中的ip和mac地址生成的,二是可以手工指定。这张表是后续DAI(dynamic arp inspect)和IPSource Guard 基础。这两种类似的技术,是通过这张表来判定ip或者mac地址是否合法,来限制用户连接到网络的。
通过建立信任端口和非信任端口,对非法DHCP服务器进行隔离,信任端口正常转发DHCP数据包,非信任端口收到的服务器响应的DHCP offer和DHCPACK后,做丢包处理,不进行转发。
DAI
动态ARP检查(Dynamic ARP Inspection, DAI)可以防止ARP欺骗,它可以帮助保证接入交换机只传递“合法的"ARP请求和应答信息。
DAI基于DHCP Snooping来工作,DHCP Snooping监听绑定表,包括IP地址与MAC地址的绑定信息,并将其与特定的交换机端口相关联,动态ARP检测(DAI-Dynamic ARP Inspection)可以用来检查所有非信任端口的ARP请求和应答(主动式ARP和非主动式ARP) ,确保应答来自真正的MAC所有者。
交换机通过检查端口纪录的DHCP绑定信息和ARP应答的IP地址决定其是否是真正的MAC所有者,不合法的ARP包将被拒绝转发。
DAI针对VLAN配置,对于同一VLAN内的接口,可以开启DAI也可以关闭,如果ARP包是从一个可信任的接口接受到的,就不需要做任何检查;
如果ARP包是从一个不可信任的接口上接收到的,该包就只能在绑定信息被证明合法的情况下才会被转发出去。这样,,DHCP Snooping 对于DAI来说也成为必不可少的。
DAI是动态使用的,相连的客户端主机不需要进行任何设置上的改变。对于没有使用DHCP的服务器,个别机器可以采用静态添加DHCP绑定表或ARP access-list的方法实现。
另外,通过DAI可以控制某个端口的ARP请求报文频率。一旦ARP请求频率超过预先设定的阈值,立即关闭该端口。该功能可以阻止网络扫描工具的使用,同时对有大量ARP报文特征的病毒或攻击也可以起到阻断作用。