文丨五年宝
编辑丨五年宝
前言
云计算服务的快速和广泛采用使得该技术基础设施成为攻击的目标,在过去几年中,由于越来越多的基于云和基于应用程序的服务穿越零信任公共网络。
动态和复杂的流量已成为企业网络的一个问题,OpenStack、Eucalyptus、OpenNebula等社区驱动的云计算生态系统提供了各种服务、框架和全面的接口。
但这些解决方案大多数缺乏对租户以及托管应用程序和用户的安全和隐私保证。
云基础设施存在的危险和监管方法
Verizon最近的研究报告得出结论,34%的攻击涉及利用云网络漏洞的内部攻击,云基础设施服务提供商采用入侵防御和检测系统、周边安全、威胁监控系统和防火墙网关等安全机制。
并在端点机器或设备或租户虚拟机上运行反恶意软件软件和代理,在云网络的背景下,最近出现的SDN和NFV范式重新定义了网络架构,并提供了防御网络攻击的新机会。
在与云服务提供商和网络安全打交道时,安全和隐私至关重要,有研究人员表示了传统云模型如何演变为SDN模型。
而SDN将网络智能与数据包转发和路由分开,并提供高性能可编程网络,控制平面和数据平面之间的交互通过OpenFlow进行协议。
传统的网络流量管理侧重于设备状态和跟踪统计计数器值,但它只能衡量网络吞吐量和容量,不能衡量全业务承载场景。
通过端到端的流量行为建模和人工智能功能,网络流量分析可以构建网络运行性能与安全之间的紧密耦合关联,为优化网络容量和预警安全威胁提供全面的技术支撑。
网络、用户和应用程序比例给出适当反映,而当前网络、用户和应用程序运行状况的风险评分,数据之间的内在关系被合并以产生多维相关性,有助于检测网络问题和故障。
以及一个内联流式AI分析器管道,用于对数据包进行深入分析,通过将入侵检测和防御系统功能,作为OpenStack网络关键路径中的嵌入式逻辑执行。
研究人员缩短了在网络路径中动态部署IDS的时间,使用先进的SDN数据平面交换,可以完成完整的流量监控和分析,无需在租户网络中出现任何冗余流量绕行。
现代虚拟化数据中心,最近开始采用SDN和其他虚拟化网络平台来提供完整的网络编排和保护服务。
传统方法利用路由器的功能和交换机,将流量从一个和多个端口镜像到同一结构上的设计端口,这种技术称为交换端口分析器(SPAN)过滤器。
可以配置规则和策略来复制符合条件的所有和特定数据包,连接到该交换机上的SPAN端口的系统将接收数据包,扫描任何恶意软件或攻击,并在该网络中启用响应和缓解操作。
在虚拟化云网络中,SPAN功能是在软件交换机OpenvSwitch中实现的镜像选定的数据包,标准计算机网络和SDN之间存在多种差异。
开源社区开发了OpenStack云平台,该平台也部署在生产数据中心,而OpenStack由数十个独立的部分组成,称为OpenStack服务。
在内部,每个OpenStack服务都包含多个进程,所有服务都至少有一个API进程侦听、预处理并将API请求传递到服务的其他部分。
而OpenStackNetworking服务的主进程称为neutron-server,这一个Python守护进程,公开NeutronAPI并将租户请求传递给一套插件以进行额外处理。
Neutron允许租户创建高级虚拟网络拓扑,其中包括防火墙、负载均衡器、虚拟专用网络等服务。
它是OpenStack项目中最复杂的组件之一,因为它是围绕核心网络概念构建的,Cinder是OpenStack块存储服务,而Cinder允许用户创建和删除块设备并管理块设备与虚拟机的连接。
API传输数据期间的数据保护
OpenStack环境中发现的主要威胁,包括Neutron网络中通过网络API传输数据期间的数据保护以及CinderBlockStore中数据复制期间的虚拟化安全。
造成这些安全风险的主要原因是开源特性以及OpenStack广泛采用的一些安全算法,但也存在其局限性。
尽管由Nova、Neutron、CinderBlockstore和Horizon等特定组件组成的OpenStack平台报告了许多问题,但安全问题主要发生在Neutron网络组件的运行中。
OpenStack插件Tap-as-a-Service(TaaS) 支持多管理程序云环境的镜像,但未来的云计算环境将支持SDNFV。
云基础设施供应商通常通过启动预制的VNF镜像来为客户不可预测的流量提供反应式解决方案,虽然反应式系统在某些情况下可以提供帮助,但它们并不是最佳策略。
因此,研究人员的研究提出了一种主动可扩展的可编程方法,用于弹性扩展服务链、监控威胁以及在支持SDNFV的OpenStack云中动态部署防御机制。
通过在网络协议级别将访问限制与云功能分开,云服务提供商和租户管理者可以获得其安全边界的全局视图:整个数据中心域或单个租户。
统一的API和REST接口还可以修改安全设置,尤其是策略设置,从之前的CloudSDN提案并利用最新的OpenStack Liberty 框架进行基准测试。
通过实验,研究人员通过针对不同类型的攻击(涵盖约90%的所有已知网络攻击)的各个阶段,展示了OpenStackDP的功效。
除了这些情况之外,OpenStackDP保护功能远远超出了此处介绍的范围,提供这些示例是为了说明系统在各种流量场景下的执行情况。
研究人员比较了相关工作,并为OpenStack云生态系统中用于攻击检测的SDN概念提供了安全视角,并提供了经过充分测试的缓解技术来解决这些问题。
最终的解决方案的全面安全分析、威胁模型缓解和有效性是通过STRIDE方法完成的,评估结果和基于流行威胁模型的安全分析表明。
与传统的Linux网络机制相比,根据SDN的OpenStack系统可以在威胁检测和缓解方面提高云基础设施的性能。
研究人员的研究是,在使用OpenStack平台的实际云计算基础设施和使用OpenDayLight控制器的SDN环境中进行的。
尽管如此,它们仍然可以轻松地适应其他控制器,之后研究人员将其与DragonFlow进行了比较。
而DragonFlow是OpenStackNeutron的分布式SDN控制器,支持分布式交换、路由、DHCP等。
OpenStack架构与SDN集成
最近,云服务提供商和企业数据中心已将服务从硬件设备迁移到具有虚拟化网络功能(VNF)的软件化NFV平台。
而SDN社区一直在积极开发开源控制器软件平台,比如说开放网络操作系统(ONOS)和OpenDayLight (ODL),这些平台为虚拟资源管理和网络编排问题提供了有前途的解决方案。
中央数据库存储所有配置和关键设置(例如用户、凭据和实例),并且可供授权组件服务访问,OpenStack部署环境由网络域(ND)构成。
公共ND包括外部网络、公共网络和API网络,访客ND只有一个网络而ND用于服务活动和内部管理沟通。
OpenStack需要SDN控制器使用RESTAPI(表述性状态传输接口)与Neutron连接,当前的解决方案有Floodlight、OpenDayLight和Ryu。
每个解决方案都支持不同的OpenFlow要求和TLS实现(传输层安全),OpenDayLight(ODL)平台是符合OpenFlow标准的SDN控制器的广泛实现,由社区开发和维护。
neutron是OpenStack架构的核心技术之一,它能够实现内部网络上所有节点的互连,并通过网关路由到外部互联网连接。
而网络-ODL则是OpenStack的ODL插件,ODL控制器使用Netvirt,配置OpenvSwitch (OVS)网络设置,IP和MAC路由、安全类和其他网络抽象都是该网络模型的元素。
ODL可以以不同的方式部署,定制组件以实现SDN与OpenStack架构的互操作,一些具体的用例是,意图驱动的数据模型和OVSDB模型,利用NFV、OvS并包括南向OpenFlow接口。
还有虚拟租户网络:二ODLVTN是为多域租户虚拟化网络开发的,并作为控制器应用程序的插件安装,ODL支持用于Layer2网络的RESTfulAPI函数。
主包(驱动模块)networking-odl,充当SDN抽象和OpenStack安全和策略配置之间的重定向器和代理和路由组件接口。
Networking -odl模块包括创建新网络和为租户建立安全组的功能,OpenStack平台的DragonFlow并不旨在成为功能齐全的SDN控制器。
因为它只是简单轻松地实现DVR和虚拟网络连接,几乎无缝集成在OpenStackNeutron之上,无需任何额外的组件或安装。
OpenStack云的安全威胁
从本质上讲,OpenStack是一个包含许多小型项目的大型项目,但随着OpenStack的发展势头强劲,新功能不断集成和交付,带来了新的漏洞。
最近的Glibc、OpenSSL缺陷和log4j日志记录库漏洞(最常用的Java应用程序)凸显了单个组件如何暴露整个系统。
OpenStack中有如此多的开源新功能,攻击面非常广泛,之后在2020年开源安全与风险分析报告中99%的代码库中发现了开源组件来自新思科技。
开源软件(OSS)受益于社区方法,但会产生攻击面,恶意开发人员可以在OSS系统中引入后门,后门可以通过多种方式被利用,包括重用以前使用过的漏洞和简单地犯错误。
但由于开发人员重复使用开源软件(OSS),因此可能会对依赖OSS易受攻击部分的软件进行攻击,修补开源错误变得越来越具有挑战性,因为这些缺陷可能会传播到整个组织的网络。
随着OpenStack私有云在企业开发运营(DevOps)中的日益普及,遭受攻击的风险也随之增加。
2011年至2019年报告的最常见漏洞是分布式拒绝服务(DDoS)攻击以及信息收集和注入缺陷(SQL)漏洞。
这些缺陷会影响云用户,并可能导致进一步的有害攻击,所以研究人员必须首先确定潜在的安全问题和攻击路线,以提供缓解方法。
OpenStack网络安全
物理交换机在云网络中互连虚拟化服务器,而覆盖(虚拟)网络则连接虚拟机,OpenStackNetworking允许用户管理他们的网络。
通过使用策略和配置管理器,可以授权用户使用特定的项目网络方法和对象,这种灵活的管理方法可能会影响网络可用性、安全性和OpenStack基础设施状况。
而neutron利用云基础设施服务为虚拟机(租户)提供网络服务和地址,Neutron架构基于插件,因此了解第三方解决方案所需的插件及其用法并禁用任何不必要的插件至关重要。
安全组功能非常通用,它将安全组调用转发到OpenStackNetworkingAPI,安全组的规定包含在组定义中。
管理员和项目可以使用安全组和规则指定可通过虚拟接口端口传输的流量类型,OpenStackNetworking将虚拟接口端口分配给安全组。
动态服务功能链系统
OpenStack-Neutron本身不支持服务功能链(SFC)功能,部署在计算节点上的虚拟网络功能(VNF)必须链接到网络网关节点,以启用网络功能和服务的链接和管道。
数据包和流必须在链路点之间引导,这涉及复杂的逻辑和路由和拆分和合并操作,OpenStack社区开发的networking-sfc模块已经解决了这个问题,并为此使用了各种驱动程序。
直到现在,驱动程序可用于OVS、ONOS和ODL基础设施,在OpenStackDP中,OVN通过服务链和驱动程序得到增强,以便在网络-sfc之间进行通信和OVN架构。
增强了OpenvSwitch模块以启用网络功能链,该模块与计算节点上运行的代理和插件交互,进入和退出链的流量顺序是通过使用流分类器确定的。
一个常见的模块是流分类器,它可用于其他应用程序,比如说防火墙、服务质量、负载平衡等,Monitor和DoSScrubberVM部署在OpenStack计算节点上。
流分析器引擎对流进行分类和标记以进行优先级排队,从而对大流的吞吐量影响最小,嵌入式NF根据相位变化、突发间隔和数据包大小等流特征。
并且通过交换机中的ChangePath消息进行分类和动态路径调整,但基于内容检查,顶点节点和边描述数据包的多路径轨迹。
顶点节点的边确定数据包的下一跳,作为NF依赖分析和运营商策略模板的结果,ODL控制器创建最终的服务图。
服务图和潜在子图由SDN控制器转换为流表规则定义,以便数据平面交换机可以安装和管理NFV处理。
当VNF完成对数据包的处理时,NF处理程序调用流规则<匹配:VNF的结果,操作:丢弃和发送到和默认>,对于每个节点,ODL控制器指定默认路径和默认操作。
结论
基于人工智能的自动网络策略优化,使工程师能够通过自动学习和数据分析,全面感知网络流量状况、数据响应时间、业务传输状态等信息。
并且根据网络流量和健康状态变化自动调整网络,自动执行调整策略的一致性和完整性检查,以减少出错的机会和网络运行的风险。
之后研究人员,提出了一个适用于SDN管理的OpenStack云基础设施的OpenStackDP安全框架,网络功能和服务的软件化和虚拟化改变了企业网络的现状。
NIDS服务架构为云租户提供高效的入侵检测服务,OpenStackDP使创建、管理和终止NIDS服务变得简单。
在OpenStack下进行的实验表明,即使在保持低延迟的情况下,OpenStackDP也能实现97%的检测率。
结果表明,软件定义系统具有变得更加广泛并与OpenStack集成的潜力,从而推动该开源平台流畅地迁移到虚拟化数据中心的完整集成堆栈中。
这项研究结合了SDN、NFV范式和ML和AI技术,提供智能高效的数据平面和网络结构来保护OpenStack架构。
之后研究人员推进了最先进的云安全研究、设计软件定义的OpenStack架构并提高云基础设施的敏捷性和安全状况。