一种面向云计算环境下虚拟机的威胁建模方法
扫描二维码
随时随地手机看文章
摘要:针时云计算环境中虚拟机平台存在的弱点和漏洞,分析研究了虚拟机可能面临的威胁和攻击,基于STRIDE建模技术构建了云计算环境下虚拟机平台的安全威胁模型。并对威胁发生的可能性和严重程度进行量化,从而进一步评估整个云计算系统面临的安全威胁。
关键词:云计算;虚拟机;STRIDE威胁建模
0 引言
云计算是一种基于互联网服务的新型计算模式,通过弹性动态分配虚拟化资源给用户带来全新的计算体验,让用户从繁重且昂贵的运营与维护中解脱出来。虚拟化技术是实现云计算最重要的技术基础,实现了物理资源的逻辑抽象和统一表示,解决了资源的动态可重构、监控和自动化部署问题。在云计算技术飞速发展的同时,云计算系统的安全问题也不断暴露出来。全球综合性网络安全信息解决方案供应商安博士公司基于网络安全监控平台与安全威胁趋势,发布了2011年七大网络安全威胁报告,其中指出,针对云计算及虚拟化技术漏洞的攻击所占比重越来越大。
云计算的安全问题引起了广泛的关注。Chen Qian,Jia Tiejun,J.Schiffman等人分别研究了云计算模型、云安全、云服务基础架构安全与挑战等问题。张红斌等人研究建立了内部威胁云模型,实现了基于云模型的内部威胁感知算法。本文拟通过分析研究云计算环境下虚拟机平台所面临的常见安全威胁,建立威胁模型来确定和评估云计算系统的安全威胁及系统漏洞严重程度,有助于制定完整的安全策略来对抗云计算系统所面临的威胁。
1 虚拟机威胁建模流程
STRIDE威胁建模技术是微软公司提出的一项技术,广泛用于安全系统的威胁建模。STRIDE是6种威胁的首字母缩写:
(1)欺骗标识(Spoofing identity),使用另一个用户的用户名和口令、认证信息等。
(2)篡改数据(Tampering with data),恶意修改数据。
(3)拒绝履约(Repudiation),用户拒绝从事一项活动,而又没有办法证明其拒绝履约。
(4)信息泄漏(Information disclosure),把信息暴露给无访问权限的用户。
(5)拒绝服务(Denial of Service),使合法用户得不到服务。
(6)特权提升(Elevation of Privilege),使没有特权的用户获得特权,从而有足够的能力损坏或摧毁整个系统。
云计算环境下虚拟机STRIDE安全威胁模型建立过程,可以概括为云系统结构分析、威胁识别、威胁量化评估3个阶段。其中,系统结构分析阶段是通过对云计算系统的架构分析,划定系统的各个层面和安全边界。威胁识别阶段通过分析、识别云计算系统运行的关键节点和数据所面临的威胁来构建STRIDE模型。威胁量化评估阶段是对识别的威胁进行量化,进而对整个云计算系统面临的安全威胁严重程度进行评估。
2 云计算环境下虚拟机架构分析
虚拟机按照实现架构主要分为I型(Bare-Metal,裸机型)和Ⅱ型(Hosted,宿主型)两大类。I型虚拟机中,虚拟化技术通过直接在硬件平台上添加一层虚拟机监控器(Virtual Machine Monitor,VMM,也称Hyper-visor)程序,实现对CPU、内存管理器及I/O系统等的虚拟化管理,并负责对硬件资源的调度、所有虚拟机(Virtual machine,VM)的管理并响应虚拟机的请求。I型虚拟机主要应用于服务器虚拟化。Ⅱ型虚拟机通过在寄主操作系统中构建一个虚拟化管理层实现对虚拟机的管理,该型虚拟机主要应用于桌面虚拟化。在云计算环境下,参照I型虚拟机架构,可以将提供云服务的虚拟化平台分为用户层、应用层、系统层、监控层、硬件层等五个层面,如图1所示。
虚拟化技术的引入也带来了新的安全威胁与挑战,主要表现为以下几个方面:
(1)虚拟机监控器引入新的安全威胁。当VMM本身存在的潜在漏洞或配置错误被攻击时,极易造成虚拟机溢出,也称为虚拟机逃逸,即攻击者可以获得对虚拟机监控器或虚拟机管理系统的控制。
(2)虚拟机迁移引入新的安全威胁。虚拟机实时迁移技术可以使虚拟机在不中断应用的情况下在不同的物理主机之间实时进行迁移,对于分布式数据中心、集群的负载均衡和灾难恢复有重大意义。虚拟机实时迁移过程中,攻击者可能对迁移控制层、迁移数据层、迁移模块等发动攻击,这对虚拟机的可靠运行带来了安全挑战。
(3)虚拟机共享机制引入的安全威胁。为了保证应用层服务能够相对平等高效地共享底层硬件,虚拟化技术提供了大量的共享资源,而这些共享资源则成为隐蔽通道发生的源泉。另外数据残留也有可能造成敏感信息泄露。
(4)新增的网络监管障碍。在虚拟化数据中心中采用了新的网络模型,几十个操作系统或应用程序以虚拟机的形式同时部署在物理服务器上,这些虚拟机同时共享该服务器的硬件资源,虚拟机间的网络流量不经过传统的硬件防火墙、IDS和IPS等网络安全设备,这显然是网络安全防护中的盲点。当一台虚拟机发生问题时,安全威胁就会通过网络蔓延至其他的虚拟机。
3 威胁识别
威胁识别是对云计算环境下虚拟机平台划分的各个层面构建STRIDE威胁模型,分析每个层面和关键节点是否容易受到S、T、R、I、D以及E类威胁的攻击,识别并记录这些威胁。虚拟机平台的STRIDE安全威胁模型如图2所示。
(1)用户层可能面临的威胁
威胁①:攻击者有可能在用户向云服务(以Web服务器为例)提交信息或者Web服务器应答用户响应请求的过程中查看或者篡改数据(信息泄露/篡改数据)。
(2)应用层可能面临的威胁
威胁②:攻击者可能发动应用层级的DDoS攻击,致使Web服务器无法响应合法用户的请求(拒绝服务)。
威胁③:攻击者可能通过攻击篡改服务器中的Web页面(篡改数据)。
(3)系统层可能面临的威胁
威胁④:攻击者可能利用虚拟机操作系统的漏洞或者管理配置错误进行攻击,获取虚拟机的管理权限,从而窃取Web服务器信息(信息泄露/提升权限)。
威胁⑤:攻击者可能运用DNS欺骗、ARP缓存中毒攻击、会话劫持等中间人攻击技术,对虚拟机迁移过程进行嗅探、入侵和攻击,检测、窃取或肆意破坏虚拟机迁移中的网路数据流,达到敏感数据窃取、数据篡改、密码破译等目的(信息泄露/篡改数据/权限提升/欺骗)。
威胁⑧:攻击者可能通过字典攻击或者暴力破解等方式破解客户操作系统的身份验证,从而可以冒充合法用户(欺骗/信息泄露/提升权限)。
(4)监控器层可能面临的威胁
威胁⑥:攻击者可能利用虚拟机监控器程序漏洞、设备驱动漏洞或者配置不当进行攻击,获取虚拟机监控器的管理权限,攻击者可以进入主机系统和在主机上运行的其他虚拟机(信息泄露/篡改数据/权限提升/欺骗)。
威胁⑦:攻击者可能利用系统间隐蔽通道,如基于共享内存、缓存Cache和CPU负载的隐蔽通道获取其他用户的数据信息(信息泄露)。
威胁⑧:攻击者可能通过字典攻击或者暴力破解等方式破解虚拟化管理系统的身份验证,从而可以冒充合法用户(欺骗/信息泄露/提升权限)。
(5)硬件层可能面临的威胁
威胁⑨:攻击者可能通过发动DDOS、Botnet攻击,占用网络带宽或使得服务器无法响应合法用户的请求(拒绝服务)。
威胁⑩:攻击者(内部人员或者取得数据库权限的攻击者)可能直接访问服务器,窃取或者篡改服务器中的数据(信息泄露/篡改数据)。
4 威胁量化评估
通过建立威胁量化模型,对威胁识别过程中记录的所有威胁发生的可能性和严重程度进行量化。
威胁可能性度量P是威胁重现性、威胁可发现性、威胁可利用性3个属性的量化值之和。每个属性量化值范围为1~5的整数。
威胁严重度D是威胁潜在的损失、影响的用户和资产价值3个要素量化值之和,每个要素的取值范围为1~5。
攻击因子A是攻击技术流行度、攻击技术难易度以及攻击后果3个属性量化值的综合平均值,每种属性的取值范围为1~5的整数。
虚拟化系统面临威胁取决于3个因素:威胁发生的可能性、威胁发生后的严重度及攻击因子。可得到威胁值计算公式:R=P×D×A。虚拟机的安全威胁最终表现为安全事件对虚拟机服务的影响,即云计算系统面临威胁的量化值R是评价虚拟机安全威胁的决定因素。
5 结语
本文在综合分析云计算环境下虚拟机可能面临的威胁和攻击的基础上,提出了一种基于STRIDE的虚拟机安全威胁模型。并对虚拟机安全威胁进行量化和评估,分析各层面威胁严重程度对于云计算环境下虚拟机安全服务的影响,进而评估整个云计算环境下虚拟机的整体安全威胁。