前言
在越来越关注攻防对抗实战防护能力的今天,在零信任网络被炒的越来越热的今天,我们重新审视按照这些新理念构建的纵深防御体系,结果发现依然问题重重:在堆砌了大量安全产品后发现资产管理、漏洞安全运营到内部隔离等基础安全工作依然跟不上安全态势的变化。
就拿隔离来说,当攻击者有机会拿到内网一个跳板机,结果发现内网网络基本是畅通的;这两年的HW攻防对抗演练活动中这个问题的暴露尤为明显,原来奉行的内网基本安全的策略在攻防对抗中被“打”的体无完肤;同时随着内部网络的架构从传统的IT架构向虚拟化、混合云和容器化升级变迁,结果发现内部隔离不再是一件容易的事情。为了适应攻防对抗防护的要求、为了满足新的IT架构的要求,我们不得不再重新分析和审视隔离的重要性。
什么是微隔离?
作为实现“零信任”的三大技术路径之一,网络隔离并不是新的概念,而微隔离技术(Micro-Segmentation)是VMware在应对虚拟化隔离技术时提出来的,但真正让微隔离备受大家关注是从2016年起连续3年微隔离技术都进入Gartner年度安全技术榜单开始。在2016年的Gartner安全与风险管理峰会上,Gartner副总裁、知名分析师Neil MacDonald提出了微隔离技术的概念。“安全解决方案应当为企业提供流量的可见性和监控。可视化工具可以让安全运维与管理人员了解内部网络信息流动的情况,使得微隔离能够更好地设置策略并协助纠偏。”
从微隔离概念和技术诞生以来,对其核心的能力要求是聚焦在东西向流量的隔离上(当然对南北向隔离也能发挥左右),一是有别于防火墙的隔离作用,二是在云计算环境中的真实需求。
微隔离系统工作范围:微隔离顾名思义是细粒度更小的网络隔离技术,能够应对传统环境、虚拟化环境、混合云环境、容器环境下对于东西向流量隔离的需求,重点用于阻止攻击者进入企业数据中心网络内部后的横向平移(或者叫东西向移动)。
微隔离系统的组成:有别于传统防火墙单点边界上的隔离(控制平台和隔离策略执行单元都是耦合在一台设备系统中),微隔离系统的控制中心平台和策略执行单元是分离的,具备分布式和自适应特点:
(1)策略控制中心:是微隔离系统的中心大脑,需要具备以下几个重点能力:
- 能够可视化展现内部系统之间和业务应用之间的访问关系,让平台使用者能够快速理清内部访问关系;
- 能够按角色、业务功能等多维度标签对需要隔离的工作负载进行快速分组;
- 能够灵活的配置工作负载、业务应用之间的隔离策略,策略能够根据工作组和工作负载进行自适应配置和迁移。
(2)策略执行单元:执行流量数据监测和隔离策略的工作单元,可以是虚拟化设备也可以是主机Agent。
为什么需要微隔离?
不少人提出来有VLAN技术、VxLAN技术、VPC技术,为什么还需要微隔离?在回答这个问题之前,我们先来看看这几个技术的定义和作用:
- VLAN:即虚拟局域网,是通过以太网协议将一个物理网络空间逻辑划分成几个隔离的局域网,是我们目前做内部不同局域网段的一种常用技术;由于以太网协议的限制,VLAN能划分的虚拟局域网最多只有4096个。
- VxLAN:即虚拟扩展局域网,为了解决VLAN技术在大规模计算数据中心虚拟网络不足的问题而出现的技术,最多可支持1600万个虚拟网络的同时存在可适应大规模租户的部署。
- VPC:Virtual Private Cloud,即虚拟私有云,最早由AWS于2009年发布的一种技术,为公有云租户实现在公有云上创建相互隔离的虚拟网络,其技术原理类似于VxLAN。
从技术特点上看,VLAN是一种粗粒度的网络隔离技术,VxLAN和VPC更接近于微隔离的技术要求但还不是微隔离最终的产品形态。我们来看一个真实的生产环境中的工作负载之间的访问关系:
从这张图中我们看到少数的几台工作负载都会有如何复杂的业务访问关系,那么当工作负载数量急剧上升时我们急需一套更加智能的隔离系统。以下是我们总结需要微隔离技术的几大理由:
- 实现基于业务角色的快速分组能力,为隔离分区提供基于业务细粒度的视角(解决传统基于IP视角存在较多管理上的问题);
- 在业务分组的基础上自动化识别内部业务的访问关系,并能通过可视化方式进行展示;
- 实现基于业务组之间的隔离能力、端到端的工作负载隔离能力、异常外联的隔离能力,支持物理服务器之间、虚拟机之间、容器之间的访问隔离;通过隔离全面降低东西向的横向穿透风险,支持隔离到应用访问端口,实现各业务单元的安全运行;
- 具备可视化的策略编辑能力和批量设置能力,支持大规模场景下的策略设置和管理;
- 具备策略自动化部署能力,能够适应私有云弹性可拓展的特性,在虚拟机迁移、克隆、拓展等场景下,安全策略能够自动迁移;
- 在混合云环境下,支持跨平台的流量识别及策略统一管理。
微隔离如何技术选型?
目前市面上对于微隔离产品还没有统一的产品检测标准,属于一种比较新的产品形态。Gartner给出了评估微隔离的几个关键衡量指标,包括:
- 是基于代理的、基于虚拟化设备的还是基于容器的?
- 如果是基于代理的,对宿主的性能影响性如何?
- 如果是基于虚拟化设备的,它如何接入网络中?
- 该解决方案支持公共云IaaS吗?
Gartner还给客户提出了如下几点建议:
- 欲建微隔离,先从获得网络可见性开始,可见才可隔离;
- 谨防过度隔离,从关键应用开始;
- 鞭策IaaS、防火墙、交换机厂商原生支持微隔离;
从技术层面看微隔离产品实现主要采用虚拟化设备和主机Agent两种模式,这两种方式的技术对比如下表:
总体来说两种方案各有优缺点:如果环境中租户数量较少且有跨云的情况,主机Agent方案可以作为第一选择;如果环境中有较多租户分隔的需求且不存在跨云的情况采用SDN虚拟化设备的方式是较优的选择,主机Agent方案作为补充。另外主机Agent方案还可以结合主机漏洞风险发现、主机入侵检测能力相结合,形成更立体化的解决方案。
企业如何实施微隔离?
在成功部署微隔离中的最大拦路虎首推可见性问题。分隔粒度越细,IT部门越需要了解数据流,需要理解系统、应用和服务之间到底是怎样相互沟通的。
同时需要建立微隔离可持续性。随着公司不断往微隔离中引入更多资产,负责团队需考虑长远发展,微隔离不是“设置了就可以丢开不管”的策略。这意味着,企业需设立长期机制以维持数据流的可见性,设置技术功能以灵活维护策略改变与实施要求;还意味着需清晰描述微隔离配置管理中各人都负责做些什么。
微隔离管理的角色和责任同样很重要。微隔离规则的改变应经过审查,类似配置控制委员会这种运营和安全团队可验证变更适当性的地方。
如何检验微隔离的效果?
检验微隔离是否真正发挥效果,最直接的方式就是在攻防对抗中进行检验。我们可以模拟以下几个场景进行检验:
- 互联网一台主机被攻陷后,能够触达内部多大范围的主机和工作负载;
- 同一业务区域一台主机被攻陷后,能否攻陷该业务区域的其他主机和工作负载(所有工作负载都存在可以利用的漏洞);
- 某一业务区域一台主机被攻陷后,能否触达跟该业务区域有访问关系的其他业务区域的核心主机和工作负载;
- 内部一台主机被攻陷后,能够触达到域控主机以及能否攻陷域控主机(域控主机存在可以利用的漏洞);
- 内部一个容器工作负载被攻陷后,能够触达内部其他多少个容器工作负载;能否通过该容器渗透到宿主主机;
- 以上所有网络访问行为是否在微隔离系统中的策略智能管控平台上监测到,是否有明显报警标记。
以上是我们可以总结的一些检测场景,安全部门还可以根据自身业务的实际情况模拟更多的攻防对抗场景进行检验,才能做到“知己知彼,百战不殆”。
【本文是51CTO专栏作者“安全牛”的原创文章,转载请通过安全牛(微信公众号id:gooann-sectv)获取授权】