企业网接入安全研究

2019-08-06 13:48刘珍亿苏峥嵘
无线互联科技 2019年10期

刘珍亿 苏峥嵘

摘   要:文章介绍了企业网接入层交换机所面临的安全威胁,分析了常见防范技术的原理,并对不同的应用环境给出了两种解决方案,并对这些方案进行了优劣比较。

关键词:MAC地址;ARP协议;DHCP协议;端口安全

企业网络的接入层交换机工作在数据链路层,它连接的是终端用户,基于介质访问控制(Media Access Control,MAC)地址表进行数据转发。由于传统局域网协议的设计得不够严谨,对数据报文来源的合法性缺乏足够的安全检查机制,导致局域网中经常出现拒绝服务、动态主机设置协议(Dynamic Host Configuration Protocol,DHCP)服务器仿冒、ARP欺骗等安全威胁。解决企业网接入层安全问题,可以将网络安全造成的损失大大降低,意义十分重大。

1    接入交换机常见安全威胁

1.1  MAC地址泛洪攻击

MAC地址,也叫物理地址,是全球唯一的48 bit的标识地址。在网络底层的比特流传输过程,是通过该地址来识别网络设备的。交换机在缓存中维护着一张计算机辅助制造(Computer Aided Manufacturing,CAM)表,它衍生自MAC地址表,它是交换机在做基于硬件的快速转发时要查找的一张二层转发表,表中记录了MAC地址与端口、VLAN的映射关系,表项内容自动老化。交换机的端口能够自动学习MAC地址,每收到一个帧时,都会检查该帧中的源MAC,并从CAM表查找对应条目,如果找到则直接转发,否则就将该MAC地址和端口的对应关系存入CAM表,以便当下一次往该MAC地址发送数据时,可以确定向哪个端口转发数据[1]。

交换机CAM表的容量是有限的,它能存储的行数取决于交换机的内存大小。如果攻击者发送大量伪造数据包,且源MAC不断改变,交换机的CAM表将很快被填满,再也无法接受新的条目,导致合法用户的数据流到达交换机时被挤出去,交换机的转发效率极其低下,影响到网络整体性能,攻击者还可以窃取合法用户的数据流量。

1.2  DHCP服务器攻击

DHCP服务器提供IP地址租用服务,当内网的PC设置为自动获取IP地址时,就会在开机后发送DHCP Request广播请求租用地址。DHCP服务器会分配一个可用IP给该计算机,请求IP地址的客户端计算机会得到一个IP地址,同时也获取到默认网关、DNS服务器地址等信息[2]。

最初的网络设计者主要考虑的是保证网络的连通性,而对网络的安全性考虑得不够周全。如果企业网内部有多台提供IP分配服务的Server,将会给网络管理带来麻烦。攻击者可以大量伪造DHCP Request请求包,耗尽合法DHCP Server的IP地址池。当有PC请求IP的时候,合法的DHCP服务器就无法为其分配地址,这就是DHCP服务器DoS攻击。

攻击者还可以非法搭建一个DHCP服务器供内网PC租用IP,并人为配置一个恶意的DNS地址。这时,用户可能获取到一个错误的IP地址导致不能上网,或者能上网但却被恶意的DNS地址引导到仿冒的网站。这就是DHCP服务器仿冒攻击。

1.3  ARP欺骗攻击

ARP协议工作在数据链路层,数据在以太网链路上是以帧的形式进行传输,要在以太网中传输IP数据包,必须知道目标IP所对应的MAC地址信息,ARP的基本功能就是根据目标IP来查找目标MAC地址,以确保通信的正常进行。网络中的主机、交换机和路由器上,都有一张ARP缓存表,表中记录了IP地址与MAC地址的一一对应关系[3]。

根据ARP协议的工作机制,为了降低网络上过多的ARP流量,一台设备哪怕收到的ARP Response报文并非自己请求的,它也会将其存入到自己的ARP缓存表中。例如,攻击者向PC1发送一个伪造的ARP响应报文,告诉PC1:地址172.16.1.2(PC2的IP)对应的MAC是D4-3A-7E-C6-D3-E2(攻击者的MAC),PC1将这个映射关系写入自己的ARP缓存,以后发送数据时,将本该发往PC2的数据发送给了攻击者。攻击者就截获了PC1发往PC2的通信。攻击者不但可以欺骗主机,还可以欺骗网关[4]。

2    应对安全威胁的技术手段

2.1  风暴控制(Storm  Control)

合理细分VLAN可以减小局域网广播风暴的影响范围,但光这样还不够。当交换机的某个端口接收大量的broadcast,multiast或未知unicast报文时,仍会引发广播风暴。攻击者发动DoS攻击、协议栈的错误实现、网络设备的错误配置均可能导致局域网广播风暴的发生。在接入交换机上配置的Storm Control功能,可以成功地避免二层广播风暴导致的网络性能下降或网络故障。Storm Control功能监视进栈的流量状态,通过一定时间内的比较和测量,预先设定阈值的方法来管理流量,当某种类型流量的阈值到达时,这种流量就会被丢弃。

2.2  端口安全(Port  Security)

通過配置端口安全,可以只允许特殊MAC或IP的PC接入网络,还可以限制交换机端口接入设备的数量。为了提高安全性,可将MAC地址和对应的端口绑定起来(绑定的地址称为安全地址),当然也可以把指定的IP地址和相应的端口绑定起来,或者是两者都绑定。对某端口启用端口安全功能后,当其安全地址的数目达到最大允许数目后,若该端口再接收一个源地址不属于安全地址的数据包时,将产生一个安全违例,此时管理人员可以根据需要,采用不同的安全违例处理方式,主要有protect,restrict和shutdown 3种[5]。

2.3  DHCP监听(DHCP  Snooping)

通过配置DHCP Snooping,交换机能够阻拦DHCP报文。DHCP Snooping将交换机的所有端口划分成两种类型:trust和untrust。交换机限定untrust端口只能够发送DHCP Request报文,丢弃来自untrust端口的所有其他DHCP报文。trust端口可以接收所有的DHCP报文。一般把连接到真实DHCP Server的端口设置为trust端口,其他端口设置为untrust端口。

DHCP Snooping还有一个附带的功能就是创建了一个DHCP监听数据库。一旦某台PC成功获取了一个IP,交换机便会自动在监听数据库中添加一条绑定项,该绑定条项可作为其他应用的依据。

2.4  动态ARP检测

部署动态ARP检测(Dynamic ARP Detection,DAI)的前提是要部署DHCP Snooping,在DHCP环境下,通过部署DHCP Snooping将会生成一个监听绑定数据库,这个数据库包含的信息可以作为ARP合法性检验的依据。DAI技术将交换机的物理接口分为trust和untrust两种状态,对trust端口直接放行(不做检测),而对于untrust接口,收到ARP报文后会进行合法性检验。

DAI功能会消耗交换机的CPU资源的,开启DAI后有可能会成为DoS攻击的目标。所以我们有必要再对端口配置ARP报文限速。untrust端口的默认速度限制是15 pps,trust端口则是无限制。当untrust端口收到的ARP报文数量超出配置的阀值,端口将会进入errdisable状态[6]。

2.5  ARP报文校验(ARP  Check)

在PC发送ARP报文前获得PC真实的IP和MAC,然后进行ARP Check:校验ARP报文中发送者MAC与真实的MAC是否相同,不同则丢弃;校验ARP报文中发送者IP与真实的IP是否相同,不同则丢弃。

除了以上技术手段,还有环路检测、保护端口、端口阻塞、系统保护、CPU保护策略(CPP)、STP安全机制、dot1X等措施可以提高接入交换机的安全性。

3    应对安全威胁的综合解决方案

3.1  静态IP环境解决方案

3.1.1  端口安全+ARP报文校验

对接入交换机上连接PC的二层端口开启Port Security功能,将合法PC的IP地址和MAC地址(安全地址)写入交换机的硬件表项;在接入交换机连接终端用户的端口开启ARP-Check功能,通过使用ARP-Check技术校验ARP报文的正确性。如果非法的IP/MAC接入网络,ARP校验将失败,这样的用户将不能正常使用网络。

该方案的优点是采用硬件的方式直接校验ARP报文,控制十分严格,不消耗CPU资源。缺点是端口安全必须逐一进行配置,需收集所有终端的IP和MAC信息,对于用户可能要频繁变动端口的环境不太适合。

3.1.2  全局地址绑定+ARP报文校验

在接入交换机上全局开启address-bind功能,全局绑定IP与对应MAC,将安全地址写入交换机的硬件表项,在下联口开启ARP-Check功能,对于未绑定或匹配错误的用户都不能正常使用网络。

该方案的优点是控制相对严格(但比端口安全要宽松),因为其地址不绑定到具体端口。采用硬件校验方式,效率较高。缺点是必须逐一配置并收集所有用户IP地址和MAC地址,但比前一方案要灵活,不需确认IP所对应的端口,适用于用户需频繁变动交换机端口的场景[7]。

3.2  DHCP环境解决方案

3.2.1  DHCP  Snooping+IP  Source  Guard+ARP報文校验

提取DHCP Snooping数据库中的IP和MAC信息,然后通过IP Source Guard特性将数据库中的IP和MAC信息写入交换机的硬件表项,最后使用ARP报文校验功能检验所有ARP报文的合法性。如果用户通过DHCP获取到IP后试图发动ARP欺骗攻击,或者是用户私设静态IP,他们的ARP报文校验都将失败,这样的用户将不能正常使用网络[8]。

该方案的优点是不必逐一去做每个终端的地址绑定,硬件方式检查安全表项。缺点是在安全功能上,对交换机的要求比较严格,交换机需同时具备DHCP监听、IP源防护和ARP报文检验这3种安全特性,会消耗交换机的硬件资源表项。

3.2.2  DHCP  Snooping +DAI

提取DHCP Snooping绑定数据库中的IP与MAC,然后通过DAI特性检验进入的ARP报文,将ARP报文中的发送者IP及发送者 MAC字段与DHCP Snooping绑定数据库里面的对应信息进行对比,如果相同则允许通过,否则将丢弃该报文。

该方案的优点是不必逐一去做每个用户的地址绑定,配置和维护管理相对简单;和方案(1)相比,可以节省设备所需的硬件安全资源表项。缺点是DAI是CPU检查ARP报文,这将会额外消耗交换机的CPU资源,当交换机上连接的用户较少时可以使用(例如低于30),如果交换机连接的用户数量较多时,方案(1)比较适合。

4    结语

接入层交换机的安全威胁主要是由于ARP协议和DHCP协议自身的缺陷造成的,在流量控制的前提下,做好防ARP攻击尤为重要,防止ARP攻击的关键在于对ARP报文进行合法性校验。单一的安全技术往往无法解决问题,实际应用中往往综合多种技术进行防范。

在静态IP环境下,用户接入端口如果不经常变动,可以选择较为严格的端口安全+ARP报文校验方案;如果用户经常变动接入端口,可以选择全局地址绑定+ARP报文校验方案。

在动态IP环境下,推荐使用DHCP Snooping + IP Source Guard + ARP报文校验方案,因为该方案不消耗CPU资源,能承载更多的用户数量。

[参考文献]

[1]林圣杰.校园网络安全接入技术与应用[J].硅谷,2009(11):82-83.

[2]谢希仁.计算机网络[M].4版.北京:电子工业出版社,2003.

[3]史寿乐.ARP病毒与校园网络安全研究[J].信息安全与技术,2014(9):33-35.

[4]赵罡.简单网络管理协议的ARP欺骗防御机制[J].武汉工程大学学报,2011(4):103-105.

[5]汪双顶,余明辉.网络组建与维护技术[M].2版.北京:人民邮电出版社,2014.

[6]张文库.企业网络搭建及应用(锐捷版)[M].3版.北京:电子工业出版社,2013.

[7]张文杰.你不可忽视的园区网ARP安全防护[EB/OL].(2010-04-03)[2019-05-20].http://www.ruijie.com.cn/fa/xw-hlw/83468.

[8]汤小康.基于DHCP Snooping技术的校园网非法DHCP服务器的接入[J].网络安全技术与应用,2015(7):48-51.