从数据流的走向看云安全问题如何解决
  

深拥 2616

{{ttag.title}}

以往大家更多是从云计算技术、云计算模型体系架构等方面来对云安全进行研究和探讨,本文将从另外一个角度——从数据流的走向来探讨一下云计算,尤其是云计算平台下的安全问题。


一. 云平台下数据流向的大致分类

从云平台数据流的方向来看,大致可分为以下几类:

外部访问虚拟机

外部用户访问虚拟机上承载的业务,流量由互联网进入——核心——接入——物理机网卡——虚拟机。

虚拟机访问外部

由虚拟机访问互联网,流量方向与上一种情况刚好相反,虚拟机——物理机网卡——接入——核心——互联网。

跨物理机的虚拟机之间访问

VM 1——物理机1网卡——接入交换机1——核心交换机(可有可无)——接入交换机2——物理机2网卡——VM 3。

同一物理机上的各虚拟机之间互相访问(隐蔽信道)

物理机1上的VM 1访问VM 2。

物理机和虚拟机之间的访问(虚拟机逃逸)

物理机和虚拟机之间的双向流量,物理机与VM相互访问。


二. 从数据流向分类看云安全


外部访问虚拟机

此种情况下与传统IDC的防护思路一样,就不详述了,只是部分串联设备部署方式需要考虑调整。一是因为云平台扁平化是趋势,能少串一个设备是一个设备,二来设备吞吐向来也不是安全设备的优势,云平台下动则10G、40G的链路串上去也吃不消,所以可以考虑旁路部署,按需防护


虚拟机访问外部

通常云平台虚拟机用来对外提供服务比较多,较少有主动访问互联网的需求。不过有一种较为常见的场景就是虚拟机被攻击者控制后用作跳板,往外进行大流量的 ddos攻击。这种情形下一方面会消耗服务器的CPU资源,另一方面也会消耗云平台的大量带宽。因此有必要对由内往外的流量进行监测,这里就可以使用 NTA(网络流量分析系统),一旦发现由内往外的DDoS攻击则可以将进行攻击的源IP路由直接丢弃,中断该IP的对外访问。


跨物理机的虚拟机之间访问

由于跨物理机的虚拟机访问会经过传统的交换机,因此该场景下可采用传统的安全措施来进行防护,如ACL、IDS等;如果没有这类需求,可直接通过VLAN划分的方式隔离。


同一物理机上的虚拟机之间访问(隐蔽信道)

常见的虚拟化软件缺省采用软件VEB(又称vSwitch)来完成同一个物理机上的虚拟机之间通讯,由于多数vSwitch只进行二层转发,导致VM互访流量不可见,是云平台下的一大安全问题。


先说说vSwitch的转发过程,正常情况下,VSwitch处理过程与传统交换机类似,如果从物理网卡收到报文后,查MAC表转发;如果从虚拟机收到报文,目的MAC在外部则从物理网卡转发,在内部则查MAC表转发,如下图所示:

目前的思路有两种,一种是通过vSwitch来解决。vSwitch在二层转发基础上还可实现其它功能,从VMware的介绍来看至少包括VLAN、安全功能、流量管理、甚至负载均衡等功能,但是由于其实现这些功能需要消耗服务器大量的CPU资源,使用效果如何还有待考验。


另一种解决办法是采用IEEE标准组织提出的802.1Qbg EVB(Edge Virtual Bridging)和802.1Qbh BPE(Bridge Port Extension)两条标准,这两条标准可以将虚拟机内部的流量引出到虚拟机外部,这样就可以采用传统的安全防护手段来解决隐蔽信道下的安全问题。这里主要探讨一下应用范围更广的802.1Qbg EVB,其包含了传统的vSwitch功能的VEB模式、VEPA(Virtual Ethernet Port Aggregator)和Multi-Channel。VEB上面已经说过了,简单说下另外两种处理方式。


一种是VEPA。VEPA组件从VM1接收到数据后,先转发到物理网卡,物理网卡不管三七二十一先转发出去到接入交换机,再由接入交换机根据MAC表原端口转回,VEPA收到从接入交换机来的报文才查表进行内部转发,最终数据到达VM2和VM3,如下图所示:

通过这种方式可以将所有VM之间的交互数据通过接入交换机上进行转发,因此可以在交换机上实施访问控制策略,隔离不相关的业务,对流量进行分析实现入侵检测和审计等功能。


另一种是通道技术(Multichannel Technology),多通道技术方案将交换机端口或网卡划分为多个逻辑通道,并且各通道间逻辑隔离。每个逻辑通道可由用户根据需要定义成VEB、 VEPA或Dircetor IO(基于网卡SR-IOV技术实现的硬件VEB技术,减小了CPU的开销,但是与软件VEB存在相同的问题)的任何一种。每个逻辑通道作为一个独立的到外部网络的通道进行处理。多通道技术借用了802.1ad S-TAG(Q-IN-Q)标准,通过一个附加的S-TAG和VLAN-ID来区分网卡或交换机端口上划分的不同逻辑通道。如下图所示,多个VEB或 VEPA共享同一个物理网卡。

因此从理论上来说,虚拟机之间可以套用安全域划分的概念,依靠多通道技术进行合理的虚拟安全域划分,同一个虚拟安全域内采用VEB技术,域内虚拟机互访不受限制,保证了足够的交换性能;虚拟安全域之间采用VEPA技术,将流量引到交换机上,部署访问控制与流量监控策略等;对于单独的安全域,尤其是独立业务的虚拟机,采用Dircetor IO,与其它虚拟机流量隔离,直接转发到外部,在外部交换机上监控其流量。


同一物理机和虚拟机之间的访问(虚拟机逃逸)

由于Hypervisor(Hypervisor是一种运行在物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享一套基础物理硬件,也可以看作是虚拟环境中的”元”操作系统)存在一些已知的漏洞,这就为攻击者从已控制的虚拟机利用Hypervisor的漏洞渗透到Hypervisor提供了可能。虽然利用这种方式的技术难度相对较高,但是由于所有的VM都由Hypervisor来控制(启动、停止、暂停、重启虚拟机;监控和配置虚拟机资源等),因此危害相当大。要解决这个问题必须得修复Hypervisor的漏洞,一方面依赖于能否发现这些已知漏洞(可采用具备虚拟化检测能力的漏扫工具或专业的渗透测试服务),另一方面依靠于VM厂商是否能够及时提供补丁。同时个人猜想是否可以采用VEPA(从能查到的资料来看都是VEPA如何解决VM之间的流量问题的)或者类似VEPA之类的技术,将VM到Hypervisor的双向流量引出到外部的交换机转发一下,这样就为监测这类攻击提供了可能。


三. 小结

总的来说,本文简单地从数据流的走向来探讨了一下云计算,尤其是云计算平台下的安全问题和解决思路,对于云计算平台下的安全问题除了云计算技术引发的特定的安全问题外(隐蔽信道、虚拟机逃逸、虚拟化漏洞等),其它的安全问题基本都可以用传统的思路来解决。


本文转自http://www.d1net.com/cloud/security/356775.html

共同学习

打赏鼓励作者,期待更多好文!

打赏
暂无人打赏

Sangfor_闪电回_小云 发表于 2016-7-28 09:31
  
感谢楼主的转载分享~
新手741261 发表于 2020-3-11 19:14
  
感谢楼主,楼主厉害
新手770264 发表于 2020-3-19 11:31
  
楼主发光发热
新手081074 发表于 2020-3-19 16:25
  
感谢分享
新手780102 发表于 2020-5-17 20:22
  
感谢分享
发表新帖
热门标签
全部标签>
每日一问
技术笔记
技术咨询
功能体验
新版本体验
2023技术争霸赛专题
干货满满
技术盲盒
标准化排查
产品连连看
技术晨报
GIF动图学习
信服课堂视频
安装部署配置
运维工具
深信服技术支持平台
秒懂零信任
自助服务平台操作指引
答题自测
安全攻防
每日一记
用户认证
通用技术
云计算知识
SDP百科
畅聊IT
sangfor周刊
资源访问
排障笔记本
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
上网策略
测试报告
日志审计
问题分析处理
流量管理
原创分享
解决方案
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
设备维护
迁移
地址转换
虚拟机
存储
加速技术
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
社区帮助指南
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版达人

新手68983...

本周分享达人

零和一网络

本周提问达人