交换机安全问题研究Word文件下载.docx
- 文档编号:19716943
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:9
- 大小:46.64KB
交换机安全问题研究Word文件下载.docx
《交换机安全问题研究Word文件下载.docx》由会员分享,可在线阅读,更多相关《交换机安全问题研究Word文件下载.docx(9页珍藏版)》请在冰豆网上搜索。
网络入侵者可以使用大量无效的源MAC地址,来恶意地向交换机泛洪。
如果在老的条目过期之前交换机接收到了足够多的新条目,那么它就不会再接收新的合法条目。
如果这时去往交换机端口所连合法设备的流量抵达交换机,它也无法创建一个CAM表条目,交换机必须向所有端口泛洪这个数据帧。
这样会造成的不良影响有:
1.交换机流量转发的效率很低且流量巨大,这可能会影响到网络中所有用户的传输速度。
2.入侵设备可以连接到任意交换机端口,并截获该接口平常无法收到的流量。
MAC泛洪攻击的过程及步骤如下:
步骤1:
交换机基于合法MAC地址表的条目来转发流量。
步骤2:
攻击者以不同的源MAC地址发送大量数据包。
步骤3:
在较短时间内,交换机的CAM表会一直被填充,直到它再也无法接受新的条目为止,只要攻击行为还在进行中,交换机的MAC地址表就一直处于填满的状态。
步骤4:
交换机开始把它接收到的所有数据包,向所有端口泛洪,而不管是单播、组播还是广播数据帧。
步骤5:
攻击者在攻击主机上安装网络捕获软件,如Sniffer之类,就可捕获网络流量,加以分析,从而达到窃听的目的。
为了防止MAC地址泛洪,管理员可以使用端口安全特性。
在端口安全特性的配置中,管理员可以定义某个端口上允许接入的MAC地址数量,也可以在端口特性中指定该端口允许接入的MAC地址。
1.端口安全
端口安全是目前市场上CiscoCatalyst交换机上所支持的特性,它可以在交换机端口上限定一个具体的MAC地址或限定MAC地址的数量。
为防止MAC地址泛洪攻击,管理员可以在非信任用户端口上配置端口安全特性,利用端口安全特性限制MAC泛地址攻击,并锁定端口。
端口特性还可以设置一个SNMPTrap消息,来通告违规行为。
该特性会在端口允许接入的MAC地址数量范围之内,允许安全MAC地址接入,超出MAC地址最大数量的新MAC地址所发来的数据帧则会被丢弃。
2.端口安全配置
设置端口安全来限制交换机端口可接入的MAC地址数量,以及指定某个具体终端设备MAC地址的步骤如下:
启用端口安全。
Switch(config-if)#switchportport-security
设置该接口上允许接入的最大MAC地址数量,默认值是1。
Switch(config-if)#switchportport-securitymaximumvalue
指定该接口上允许接入的具体MAC地址。
Switch(config-if)#switchportport-securitymac-addressmac-address
当不允许的MAC地址尝试接入时,定义该接口要采取的行为。
Switch(config-if)#Switch(config-if)#switchportport-securityviolation{shutdown|restrict|protect}
在步骤4中的三种行为分别是:
保护(Protect):
丢弃从未授权地址发来的数据帧,但不会为这个违规行为创建日志消息。
限制(Restrict):
丢弃从未授权地址发来的数据帧,创建日志消息并发送SNMPTrap消息。
关闭(Shutdown):
交换机从一个端口收到未授权地址发来的数据帧后,就会把这个端口置于err-disabled(因错误而禁用)状态,记录日志并发送SNMPTrap消息。
管理员必须手动介入或使用errdisablereccovery特性来重新启用该端口。
违规行为的默认模式是shoutdown(关闭)模式。
管理员可以使用命令showport-security来查看各端口安全特性情况。
在接口配置模式下使用命令switchportblock{unicast|multicast}在必要的端口上阻塞单播泛洪。
1.2VLAN跳转攻击极其防御
在使用链路聚集协议(Trunking)的网络中,未授权流量能够从一个VLAN跳转(Hopping)到另一个VLAN中,因此这里存在着漏洞。
1.VLAN跳转
VLAN跳转是一种网络攻击方式,指的是终端系统向管理员不允许它访问的VLAN发送数据包,或者接收这个VLAN数据包。
这种攻击的实现的方法是为攻击流量打上特定的VLANID标,或者通过协商Trunk链路来发送和接收所需VLAN流量。
攻击者可以通过使用交换机欺骗或者双层标签的方式,来实现VLAN跳转攻击。
VLAN跳转攻击是指恶意设备试图访问与其配置不同的VLAN。
VLAN跳转攻击有两种形式。
第一种形式是源于Catalyst交换机端口的默认配置。
目前市场上CiscoCatalyst交换机端口上默认启动自动(Auto)模式的链路聚集协议。
因此接口在接收到DTP帧后就会变为Trunk端口。
攻击者可以利用这种默认行为,通过两种方式来访问交换机上配置的VLAN。
第一种方法是攻击者发送诶DTP帧,交换机收到DTP帧后可能会把端口设置为Trunk模式,从而使攻击者能够通过Trunk访问所有VLAN,进而去攻击任意VLAN中的任何设备。
第二种方式是,在交换机欺骗攻击中,网络攻击者可以通过系统配置,把自己伪装成一台交换机。
通常攻击者会把一台未授权的交换机连接到交换机端口,未授权的交换机可以发送DTP帧,然后建立Trunk端口,这样攻击者就可以通过Trunk链路访问所有VLAN。
交换机欺骗攻击中的事件顺序如下所示:
(1)攻击者顺利接入交换机端口,向运行了DTP且打开了自动协商的交换机发送DTP协商帧。
(2)攻击者和交换机协商在端口上使用链路汇聚协议。
(3)交换机允许所有VLAN(默认)在Trunk链路上传输。
(4)攻击者可以向Trunk链路承载的所有VLAN发送数据,也可以接收这些VLAN的数据。
第二种形式的VLAN跳转攻击是使用双层标签实现VLAN跳转攻击,即使在交换机端口关闭了链路聚集特性的情况下也可以实施。
这类攻击中,攻击者会发送带有双层802.1Q标签的数据帧。
这类攻击需要客户端连接在攻击者所连交换机之外的交换机。
这里以实例来介绍,网络拓扑图如下所示。
图2.
使用双层标签的VLAN跳转攻击步骤如下:
攻击者向交换机SW0发送带有两个802.1Q头部的数据帧。
交换机SW0剥除数据帧的外部标签,并向相同VLAN中的所有端口转发该数据帧。
交换机SW1根据内部标签中的信息(VLANID20)来转发这个数据帧。
交换机SW1向VLAN20中的所有端口,包括Trunk端口,转发该数据帧。
2.缓解VLAN跳转攻击
在建立Trunk端口时,为了防御网路中的VLAN跳转攻击,可以按下列方法对所有交换机端口和参数进行配置。
(1)把所有未使用的端口设置为Access端口,使这些链路无法协商链路汇聚协议。
(2)把所有未使用的端口设置为关闭(shutdown)状态,并把它们放入同一个VLAN中,这个VLAN专门用于未使用端口,因而并不承载任何用户数据流量。
(3)在建立Trunk链路时,管理员应通过正确的变量配置,实现下列要求:
1 NativeVLAN与任何数据VLAN都不相同。
2 把链路汇聚协议设置为ON(启用)或Nonegotiate(不协商),而不要设置为Negotiate(协商)。
3 在Trunk链路上配置它所需要承载的具体VLAN范围,这样可以把NativeVLAN以及其它隐含放行的VLAN排除在外。
还可以使用私用VLAN确保VLAN安全性,私用VLAN可以分离用户并通过VLANACL过滤相同VLAN内的流量。
3.VLAN访问控制列表
访问控制列表(ACL)有助于在多层交换网络中实施网络控制。
VACL(VLANACL)可以控制VLAN中的流量或者控制通过交换的方式转发的流量。
Catalyst交换机支持通过4个ACL对数据包进行检查:
输入和输出安全ACL、输入和输出QoS(服务质量)ACL。
配置VACL的步骤如下:
定义VLANaccess-map
Switch(config)#vlanaccess-mapmap_name[seq#]
配置匹配规则。
Switch(config-access-map)#match{drop|[log]}|{forward[capture]}|
{redirect{{fastethernet|gigabitethernet|tengigabitethernet}slot/port}|
port-channelchannel-id}}
配置行为规则。
Switch(config-access-map)#action{drop|[log]}|{forward[capture]}|
把映射集应用到VLAN。
Switch(config)#vlanfiltermap-namevlan-listlist
检查VLAN配置。
Switch(config)#showvlanaccess-mapmap-name
Switch(config)#showvlanfilter[access-mapmap-name|vlan-id]
1.3欺骗攻击极其防御
欺骗攻击之所以能发生,是因为很多协议都需要主机返回应答消息,即使有时主机并没有收到请求。
通过欺骗或假扮成另一台设备,攻击者可以重定向从预定目标来的部分或全部流量,或者重定向去往预定目标的部分或全部流量。
攻击开始后,被攻击的设备发出的所有流量都会穿越攻击者的计算机,然后才转发到路由器、交换机或主机。
欺骗攻击可以通过向攻击者所在子网中的设备发送虚假消息,来影响连接在二层网络中的主机、交换机和路由器。
欺骗攻击也可以拦截其它子网中的主机的流量。
1.DHCP欺骗攻击
DHCP协议用于为网络中的客户端动态分配IP地址和默认网关等配置。
DHCP是通过在客户端和DHCP服务器之间交换一系列协议数据包来实现的。
其实现过程如下图3所示。
图3.
攻击者获得网络流量的其中个方法就是发送虚假应答消息,这些应答消息本应该由合法DHCP服务器发送。
DHCP欺骗设备会对客户端发出的DHCP请求作出应答,入侵者会在DHCP应答消息中提供一个IP地址,并在支持信息中把自己指定为默认网关或DNS服务器。
若指定为网关,客户端就会把数据包发送给攻击设备,之后再由设备把数据包发往正确目的地,这种攻击称为中间人攻击,并且在入侵者拦截网络数据流的期间,管理员可能无法检测出攻击的存在。
在启用了DHCP的网络中可能会发生两种情况。
攻击者可以通过发送千个DHCP请求,来发起DoS攻击。
由于DHCP服务器无法判断请求是否是真实的,因此最终会消耗所有可用的IP地址。
这会导致合法客户端无法通过DHCP获得IP地址。
另一种可能发生的情况是攻击者把一台DHCP服务器连接到网络中,并使其充当该网段的DHCP服务器角色。
这样入侵者就可以为默认网关和域名服务器分配错误的DHCP信息,也就是把客户端指向黑客的设备。
这个错误的指示使黑客成为中间人,在终端用户对攻击一无所知的情况下获取机密信息,比如用户名密码对。
2.DHCP欺骗攻击的防御措施
DHCP侦听特性可以防御以上两类攻击。
DHCP侦听特性是基于端口的安全机制,用来把交换机端口划分为不可信端口和可信端口。
管理员可以再每个VLAN中启用该特性。
DHCP侦听只允许授权的DHCP服务器来应答DHCP请求并向客户端分发网络信息。
启用DHCP侦听的步骤及命令如下:
在全局启用DHCP侦听特性。
Switch(config)#ipdhcpsnooping
(可选)启用DHCPOption82。
Switch(config)#ipdhcpsnoopinginformationoption
把DHCP服务器所连端口或上行链路接口配置为可信端口。
Switch(config)#ipdhcpsnoopingtrust
配置该端口上每秒可接收的DHCP数据包数量。
Switch(config-if)#ipdhcpsnoopinglimitraterate
在指定VLAN上启用DHCP侦听特性。
Switch(config)#ipdhcpsnoopingvlannumber[number]
步骤6:
检查配置。
Switch#showipdhcpsnooping
1.4ARP欺骗攻击
1.ARP欺骗攻击的工作原理
在正常的ARP运作中,主机会通过发送广播来查询特定IP地址的MAC地址,使用这个IP地址的设备以自己的MAC地址作为应答。
发出查询的主机缓存ARP应答,并在发往这个IP地址的数据包的二层头部中,使用缓存的MAC地址作为目的地址。
攻击者可以对合法设备发出的无故ARP进行ARP欺骗应答,使发送方设备认为攻击设备就是目的地主机。
攻击者发出的ARP应答会使发送方设备把攻击系统的MAC地址放入自己的ARP缓存。
之后发送方设备会把所有去往那些IP地址的数据包,都转发给攻击系统,从而捕获目标主机的敏感信息。
2.通过DAI(动态ARP检测)来防御ARP欺骗攻击
由于ARP不提供任何认证机制,因此恶意用户很容易使用软件工具,如ettercap、dsniff和arpspoof等来实施地址欺骗。
毒化相同VLAN中其它主机的ARP表。
ARP毒化会导致多种中间人攻击,而这些攻击会威胁网络的安全。
DAI检测能够帮助防御中间人攻击,使用该特性,交换机就不会向相同VLAN中其它端口转发非法或无故ARP应答。
为确保只转发合法的ARP请求与应答,DAI需要采取下列措施:
(1)从可信端口收到的ARP数据包,不用经过任何检查可以直接进行转发。
(2)拦截不可信端口上的所有ARP数据包。
(3)在将这些数ARP数据包转发出去并使其更新本地ARP缓存之前,先根据IP与MAC地址绑定数据库来检测每个ARP数据包的合法性。
(4)丢弃并记录与绑定数据库信息不符的的非法ARP数据包。
另外,通过DAI可以控制某个端口的ARP请求报文频率。
一旦ARP请求频率的频率超过预先设定的阈值,立即关闭该端口。
该功能可以阻止网络扫描工具的使用,同时对有大量ARP报文特征的病毒或攻击也可以起到阻断作用。
在Catalyst交换机上配置DAI的命令如下:
1 在一个VLAN或一组VLAN上启用DAI。
Switch(config)#iparpinspectionvlanvlan-id
2 在接口上启用DAI,设置高端口为可信端口。
Switch(config-if)#iparpinspectiontrust
3 配置DAI当发现非法IP地址时,或适当ARP数据包中的MAC地址与定义在以太网头部的地址不同时,丢弃ARP数据包。
Switch(config)#iparpinspectionvalidate{[src-mac][dst-mac][ip]}
2网络交换机的安全
网络中的每台叫交换机都提供了各种服务,这些服务是通过交换数据帧实现的。
这些服务包括管理Web界面、CDP、邻居发现,Telnet、预配置端口等。
管理员可以开启和禁用各种服务。
2.1交换机访问的安全
1.SSH
网络管理员通常会使用Telnet来访问交换机,现在SSH已经成为企业标准,因为它对于安全性具有更为严格的要求。
同样地,通过HTTP访问设备也已经被安全的HTTPS所代替。
SSH是一个客户端/服务器协议,使用SSH可以跨越网络登录另一台设备。
SSH在不安全的通道上提供了强健的认证机制和安全通信机制。
在使用SSH进行登录时,整个登录会话(包括密码的传输)都是加密的,因此外部攻击者无法获取密码。
在CiscoIOS交换机上配置SSH的步骤如下:
配置用户和密码。
Switch(config)#username[string]password[string]
配置主机名和域名。
Switch(config)#ipdomain-namedomain_name
生成RSA密钥。
Switch(config)#cryptokeygeneratersa
在VTY线路上启用SSH传输。
Switch(config)#ipsshversion2
Switch(config)#linevty015
Switch(config-line)#loginlocal
Switch(config-line)#transportinputssh
2.HTTP安全服务器
管理员通过Web界面可以配置大多数交换机。
Web界面最主要的缺点就是它不提供加密,并且其中一部分不提供过滤机制。
为了保护Web服务的安全性,管理员可以按照下列步骤采取行为。
(1)使用HTTPS代替不受保护的HTTP,也就是用命令iphttpsecure-server代替iphttpserver。
(2)为了使用HTTPS,交换机中的Web服务器需要发送一个证书。
可以使用密钥管理基础结构PKI,把这个证书下载到交换机中。
也可以使用命令cryptokeygeneratersa,在交换机本地生成一个证书。
(3)管理员还应对Web服务的访问进行过滤,只允许管理员设备或子网对Web界面进行访问。
管理员可以创建访问列表来达到过滤目的,使用命令httpaccess-class把这个访问列表过滤器应用到Web服务上。
(4)用户访问交换机时,应该要经过认证。
命令httpauthenticationlocal决定交换机中包含一个本地用户证书列表。
管理员可以使用命令username[string]password[string]来创建一个本地用户。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 交换机 安全问题 研究