为什么需要二层隔离技术
首先,考虑个问题,二层网络是安全的吗?
以太网其实是不安全的,以太网的命根子“载波侦听/冲突检测(CSMA/CD)”机制就决定了以太网是“基于广播的、不安全的”。以太网天然地违背了信息安全中的“不可窃取”原则。但也正是由于这个机制,决定了以太网是“高效的”,这奠定了以太网最终胜利的基础。改一句古话就是“败也萧何,成也萧何”。
“效率”和“安全”这两个一直在网络安全领域博弈的话题。“效率”永远是优先的,因为只有当数据流动起来,才会出现安全问题。如果基本业务都不能保证的话,安全根本无从谈起。
然而,随着网络技术的发展,网络的物理建设成本的降低,带宽的飞速提升,以太网的“高效”渐渐成为了一个“供大于求”的卖点——园区内的带宽已经多到用不完了,这个时候即使效率降低那么一点,也无所谓了。
此降就要彼涨,当“效率”越来越不是问题,大家对于效率的关注就会降低,与此同时,“安全”就要抬头。不管是从产品销售的角度,还是客户真实需求的角度,二层网络中的安全性都可以作为重要的网络建设考虑因素。
那么,二层网络要考虑哪些安全因素呢?
在以太网中通过交换机的“冲突域隔离”作用,一台主机已经不能够简单通过直接侦听链路广播报文来获取不属于自己的数据了。
所以,目前主要存在以下几种攻击方法:
· 通过ARP报文,让其他主机或网关以为某个IP地址对应的MAC地址是自己的MAC地址
· 将自己伪装为DHCP服务器,最终将自己伪装为网关,从而代理所有用户流量
· 通过耗尽交换机表项,让交换机把所有报文都按照未知单播来进行广播
· 将自己的IP和MAC地址伪装成其他主机的IP和MAC地址,从而借用他人身份接入网络
其中前三项攻击方法得以实施的网络基础都在于:二层网络中的主机之间,可以经由功能和职责都更简单的接入交换机直接通信,而不用经过传统意义上的网络控制点:网关。
最后一种方法需要通过认证技术来解决,这里不再深入讨论。
我们先看解决前三种攻击方法的思路。
为了解决前三种攻击方法,接入交换机上提供了很多复杂的技术,例如ARP攻击检测,DHCP Snooping,MAC地址转发表项和ARP表占用率检测等等。其实每一种技术的思想都是:在不改变交换机现有转发机制,保证正常转发效率的前提下,识别异常报文或异常事件,从而阻断异常主机的异常流量。
相比之下,“禁止主机通过二层互访”这种防护方法则彻底改变了以太网的“广播”特征,将二层网络改造成了主机跟网关之间的点到点通信。实现机制非常简单,解决问题非常彻底,但是有点简单粗暴。
到底是在所有接入交换机上都开启各种防攻击功能,还是把所有流量引导至网关,“所有痛苦都由网关一机承担”。这是个见仁见智的问题,孰是孰非任君评说。