如何以一种不会使我面临VLAN跳动风险的方式设置VLAN?


14

我们计划将生产网络从无VLAN配置迁移到标记VLAN(802.1q)配置。此图总结了计划的配置:

VLAN配置

一个重要的细节是,这些主机中的很大一部分实际上将是一台裸机上的VM。实际上,唯一的物理计算机将是DB01,DB02,防火墙和交换机。所有其他计算机将在单个主机上虚拟化。

人们一直担心的是这种方法很复杂(隐含的过于复杂),并且VLAN仅提供了一种安全感,因为“ VLAN跳跃很容易”。

鉴于由于虚拟化将多个VLAN用于单个物理交换机端口,这是否是一个有效的问题?我如何适当地设置VLAN以防止这种风险?

另外,我听说VMWare ESX有一个称为“虚拟交换机”的东西。这是VMWare虚拟机管理程序唯一的吗?如果没有,它是否可以与KVM(我计划的虚拟机管理程序)一起使用?它如何发挥作用?


2
在你问.. Omnigraffle。
hobodave

1
不是重复的,但是serverfault.com/questions/220442是相关的
voretaq7 2011年

7
不要以这种错误的方式来做:您现在没有第2层安全性,但是您担心通过以VLAN的形式实现第2层安全性来引入可能的但不太可能的安全性缺陷吗?
joeqwerty

@joeqwerty:没有冒犯。关心的不是我自己的。
hobodave 2011年

Answers:


16

除了有关“ 为什么人们告诉我不要使用VLAN来确保安全性”的信息之外,以下是一些需要考虑的更具体和通用的内容:


关于安全性
一般思考最安全的系统是每个子网的主机都连接到一台交换机的系统,该交换机具有与所连接设备完全相同的端口数。在这种配置下,您将无法将随机计算机插入安全网络,因为这样做将需要拔出某些东西(理论上,您的监视系统会注意到这一点)。

VLAN在安全性方面为您提供了类似的东西,将您的交换机分解成逻辑上相互隔离的较小的虚拟交换机(虚拟LAN:VLAN),并且通过适当的配置,连接到它们的所有系统都可以看起来像物理上一样孤立。


关于相对安全的VLAN设置的一般想法对于具有VLAN
功能的交换机,我的做法是必须将所有流量分配给VLAN,并具有以下基本配置:

将所有未使用的端口分配给“未使用”的VLAN。

连接到特定计算机的所有端口都应本机分配给该计算机应位于的VLAN。这些端口应位于一个 VLAN中,并且只能位于一个 VLAN中(除非我们暂时忽略某些例外)。
在这些端口上,所有(到交换机的)传入数据包都用本机VLAN标记,并且(从交换机)传出数据包将(a)仅源自分配的VLAN,并且(b)不加标签,并像任何常规以太网一样出现包。

唯一应为“ VLAN中继”(多个VLAN中的端口)的端口是中继端口-那些端口在交换机之间承载流量,或连接到防火墙,防火墙将自行拆分VLAN流量。
在中继端口上,将考虑进入交换机的vlan标签,并且不会从离开交换机的数据包中剥离vlan标签。

上面描述的配置意味着,您可以轻松注入“ VLAN跳跃”流量的唯一位置是中继端口(除非您的交换机的VLAN实现中存在软件问题),并且与“最安全”方案中的情况类似,这意味着您需要拔出某些插头重要,并引起监视警报。同样,如果拔出主机以连接到VLAN,则该主机将位于监视系统中,请注意该主机的神秘消失并向您发出警报。
在这两种情况下,我们都在谈论涉及对服务器进行物理访问的攻击-尽管打破VLAN隔离并不是完全不可能的,但在如上所述的环境中,至少起码是非常困难的。


关于VMWare和VLAN安全性的特殊思考

可以将VMWare虚拟交换机分配给VLAN-当这些虚拟交换机连接到VMWare主机上的物理接口时,发出的所有流量都将具有适当的VLAN标签。
您的VMWare机器的物理接口将需要连接到VLAN中继端口(承载需要访问的VLAN)。

在这种情况下,注意将管理NIC与虚拟机NIC分开的VMWare最佳做法至关重要:您的管理NIC应连接到适当VLAN中的本机端口,而虚拟机NIC应连接到虚拟机NIC。具有虚拟机所需VLAN的主干(理想情况下,它不应承载VMWare管理VLAN)。

在实践中,与我提到的项目以及我确定其他人会提出的建议一起,加强这种分离将产生一个相当安全的环境。


12

当且仅当允许恶意设备在没有vlan标签的中继线上传输数据包时,VLan跳跃容易。

在以下情况下最常见。您的“正常”流量没有被标记;你有一个“安全的” VLAN 标记。由于“正常”网络上的计算机可以传输未经标签检查的数据包(最常见的是由访问交换机进行检测),因此该数据包可能具有错误的vlan标签,从而跳到vlan上。

防止这种情况的简单方法:所有流量都由访问交换机标记(防火墙/路由器可能是个例外,具体取决于网络的配置方式)。如果访问交换机标记了“正常”流量,则流氓客户端伪造的任何标签都将被访问交换机丢弃(因为该端口将无法访问该标签)。

简而言之,如果使用VLAN标记,则必须在中继中标记所有内容以确保其安全。


在谈论vlan时,不确定是否会使用术语“封装” ...它只是一个标签,对吗?
SpacemanSpiff

2
只需添加来自特定端口的所有流量就可以在vlan中进行标记,从而确保将来自主机的所有流量都包含到该vlan,因此不会跳动。
Joris

基本的问题是,其中还包含虚拟机,他必须相信虚拟机与交换机一样值得信赖。
克里斯,

3
@chris,如果VM主机具有中继线,则是的,您必须信任主机。但是,主机的虚拟机管理程序软件应自行进行标记,因此您不必信任VM。我知道ESXi和Hyper-V会这样做,其他人也可能会这样做。
克里斯·S

4

通过在虚拟环境上进行大量的渗透测试,我需要添加以下两项内容:

完全像实际环境一样规划虚拟环境 -因为您在现实世界中引入的任何结构或体系结构漏洞都会很好地转化为虚拟世界。

正确配置您的虚拟配置 -我管理的VM或LPAR的所有成功渗透的99%是由于配置错误或凭据重用。

而且,从技术角度上讲,还应考虑职责分工。网络团队,服务器团队等可能已经处理的现在可能是一个团队。您的审计师可能会发现这一点很重要!


1
+1用于规划虚拟机环境,就像它的物理状态一样-漏洞可能不会一对一映射,但通常非常危险。
voretaq7 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.