面向服务监控的可控云关键技术研究
发布时间:2017-05-12 13:00
本文关键词:面向服务监控的可控云关键技术研究,,由笔耕文化传播整理发布。
【摘要】:随着云计算的不断发展,云安全问题变得越来越重要。在云计算为租户和一般用户带来好处的同时,也引发了安全问题。这种安全问题不仅会威胁到各方的利益,也使得云计算的推广受阻。云计算环境下面临的威胁可能来自两个方面,一方是服务提供商,一方是普通用户。云计算多租户的特点可能引入不可信的租户,这类租户会利用云平台提供虚假服务,如钓鱼网站,以窃取用户的一些隐私信息或账户信息。用户一旦访问这些服务,即将个人信息透露给了恶意租户。互联网上有大量未知的用户,这些用户中存在着恶意的用户。他们可能会攻击租户的服务,构成安全威胁。攻击者会通过各种手段攻击租户提供的服务,如利用租户未发现的漏洞。在成功入侵租户的系统时,攻击者在租户的环境中运行恶意程序,删除或修改一些重要的文件等。更危险的是,攻击者利用租户的服务作恶,如利用租户的邮件服务滥发垃圾邮件。基础设施云提供的服务是虚拟化服务,而从云平台的可扩展性来看,攻击者如果控制了多台虚拟化服务器,那么就有可能发动大规模的攻击行为,如DDoS攻击、传播恶意程序,这些攻击行为也就会波及到最终用户。因此,研究如何构建一个面向服务监控的可控云十分必要。云服务提供商拥有对云平台的最高控制权。他们不会希望自己的平台受到恶意攻击,也不会希望平台被用来做恶。因此需要有效的方法来构建一个可以控制的云平台。当威胁发生时,云服务提供商能够及时作出反应。虚拟化技术是基础设施云中的核心技术,租户的服务驻留在虚拟机中。一种有效的监控方法就是采用虚拟机自省(Virtual Machine Introspection,VMI)的方式对服务进行监控。这里的服务是广义上的服务,既可以指云服务提供商提供的服务,也可以指服务提供商提供的服务。因为不论是哪种服务,最终都是运行在虚拟机中。对虚拟机的监控是为了防止租户或者用户在云上运行恶意代码。本文采用虚拟机自省的方式进行服务监控。本文研究了基于Linux的虚拟机自省技术及基础设施云环境。该环境能够满足不同Linux主机操作系统的要求,虚拟机操作系统以Linux和Windows为主。以Xen虚拟机监视器为研究对象,分析并设计虚拟机监控架构,包括不同的监控粒度,如进程监控、模块监控、内存操作监控以及其他虚拟机状态的监控。进程监控要能显示进程号、进程名称等与进程相关的信息。模块监控要能显示模块名称及与模块相关的信息。内存操作监控要能显示对内存页的读写操作。其他虚拟机状态的监控要能显示诸如虚拟处理器状态等信息。输出的监控内容以合适的表达形式展现,同时作为日志保存在磁盘中。日志记录对虚拟机的运行不会造成太大的影响。本文对监控软件进行测试,包括性能测试,如时间消耗,和有效性测试,如监控的准确性,并对其进行理论分析。将虚拟机监视器和监控软件集成到基础设施云平台当中,实现面向服务监控的可控云平台原型系统,并能够进行实际部署。本文的研究内容主要关注于虚拟机自省技术,从虚拟机外部对虚拟机进行监控。与传统的监控方法相比,特色与新颖之处如下:监控软件不容易受到攻击。传统的服务监控大多是基于主机的监控,基于主机的监控通常把监控软件安装在被监控的操作系统中。如果恶意租户和用户取得了系统的控制权,那么监控软件就暴露在不安全的环境中,很容易被租户或用户发现。这种情况下,他们要对监控软件实施破坏也相对容易些。而将监控软件安装在虚拟机外部,则不容易被攻击者发现。由于虚拟机监视器将虚拟机隔离成不同的域,每个虚拟机在自己的域中运行,相互不会影响。即使攻击者破坏了虚拟机的操作系统,也不容易破坏监控软件,更不用说威胁到整个云平台。对于虚拟机内部来说,监控完全是透明的。因为监控软件处于虚拟机之外,而且不需要对虚拟机操作系统进行修改,所以虚拟机内部程序的运行就像在物理机上一样。监控软件利用虚拟机监视器对外提供的接口获取虚拟机中的信息,不影响虚拟机内部程序的运行。由于虚拟机监视器提供的隔离性,虚拟机内部程序也不会影响到监控程序。监控得到的数据可以为数字取证提供更准确的证据。数字取证的一个重要手段就是获取系统的内存镜像,内存镜像能够反映出机器完整的运行状态。在传统的监控方法中,监控软件的运行需要占用内存空间,得到的内存镜像中也就存有监控软件的信息。而虚拟机自省的监控方法是从虚拟机外部来监控虚拟机,虚拟机中的内存是虚拟机独立使用的。所以在获取的内存镜像中只会有虚拟机内部的信息,而不会有其他无关信息。监控内容采用多种监控粒度相结合。目前的监控研究存在监控内容的单一化,即只关注于监控的某一方面,如只对进程进行监控。这种监控没有把相关的一系列动作联系起来,不利于推断服务的行为。本文结合进程监控、模块监控、内存操作监控等,尽可能完整地重现服务事件。对虚拟机监视器不需要做过多修改。大多数虚拟机监控的研究对虚拟机监视器本身有很大的改动。这种改动对于虚拟机监视器的依赖过高,将不利于虚拟机监视器的升级。所以本文的研究不需要对虚拟机监视器做过多的修改,而是利用虚拟机监视器本身具有的接口,以保持低的耦合性。本文研究了构建面向服务监控的可控云中涉及到的关键技术,具体工作主要有以下几个方面。本文对虚拟机的运行时环境进行完整性度量。检测程序或者文件是否遭到篡改的方法是通过完整性来进行的。传统的完整性度量方法是在被度量系统中安装度量软件。当程序或文件被加载到内存中时度量软件对其进行完整性度量。但是攻击者一旦成功入侵系统后,可能破坏系统里的完整性度量软件。针对这个问题,本文提出了基于虚拟机自省的完整性度量方法,从虚拟机外部对虚拟机中的程序进行完整性度量,达到度量软件与被度量系统隔离的效果。而且该方法采用的是扫描的方式,有别于采用系统调用拦截的方式,避免带来较大的性能开销。实验结果表明该方法在性能方面优于采用系统调用拦截的方式。在UnixBench测试中,本文的完整性度量在Execl Throughput测试、Process Creation测试、Shell Scripts(8 concurrent)测试引入负载分别是0.22%、3.62%、1.30%,均低于HIMA引入的负载值。本文对虚拟机的非篡改型攻击进行检测。完整性度量能够检测程序是否遭到篡改,但是还有一些攻击是不会篡改程序的。本文研究了这类非篡改型攻击,具体针对二进制代码注入攻击、数据操纵攻击、命令注入攻击,并设计了检测该类攻击的方法。针对二进制代码注入,本文采用系统调用的检测方式。针对数据操纵,本文采用内存写操作的监控方式。针对命令注入,本文采用特殊字符串扫描的方式。实验结果表明该方法能够有效检测出非篡改型攻击,而且引入的性能代价较低。如数据库测试中,系统调用监控引入的性能代价在2%以下,数据写监控引入的性能代价在3%以下。本文对虚拟机的行为进行记录与重放。恶意软件分析方法将可疑软件放入分析系统中,通过细粒度的监控方式记录下恶意软件的行为,如系统调用级别的记录、指令级别的记录。但是对于某些具有非确定性事件发生的行为,这种分析方法则不够精确。本文设计了虚拟机行为的记录与重放架构,结合硬件虚拟化功能,避免采用动态二进制转换所引入的性能代价。记录软件设置在虚拟机监视器中,以降低频繁的系统切换引入的性能代价。在记录时,该架构只记录重放所需的信息和非确定性事件,不记录确定性事件。实验结果表明本文的方法能够对I/O事件进行记录和重放,而且性能测试中引入的代价较低。在UnixBench测试中,总体上记录过程引入的性能开销还是比较小的,负载最高的两项是Execl吞吐率和进程创建,引入负载分别是2.55%和2.62%。本文对分布式虚拟机的状态进行检测。Rootkit攻击使得攻击者能够隐藏于系统之中,并且在系统中安装后门。攻击者使用Rootkit能够修改内核数据,对系统造成严重威胁。另外,云平台具有大规模的特性,运行着许多虚拟服务器。单一的检测方式满足不了大规模的检测需求,需要一个统一的检测平台来监控云平台的服务。针对以上问题,本文设计了分布式的虚拟机状态检测架构。在日志记录时,分别设计了用户态日志记录程序和内核态用户记录程序。
【关键词】:云计算 虚拟机 监控 安全 入侵检测 运行环境
【学位授予单位】:北京邮电大学
【学位级别】:博士
【学位授予年份】:2015
【分类号】:TP309;TP302
【目录】:
- 摘要4-9
- ABSTRACT9-19
- 第一章 综述19-33
- 1.1 研究目的及意义19-20
- 1.2 相关工作20-23
- 1.3 主要研究内容23-30
- 1.4 本文主要贡献30-32
- 1.5 本文结构安排32-33
- 第二章 基于虚拟机自省的运行环境完整性度量技术33-55
- 2.1 引言33-35
- 2.2 相关工作35-38
- 2.3 系统设计38-44
- 2.3.1 完整性分析38
- 2.3.2 威胁模型38-39
- 2.3.3 体系结构39-41
- 2.3.4 地址转换41-42
- 2.3.5 完整性度量42-44
- 2.4 实现44-45
- 2.5 实验及评价45-54
- 2.5.1 有效性实验46-47
- 2.5.2 性能实验47-54
- 2.6 结论54-55
- 第三章 针对虚拟机的非篡改型攻击检测技术55-78
- 3.1 引言55-57
- 3.2 相关工作57-58
- 3.3 系统设计58-68
- 3.3.1 威胁模型58-59
- 3.3.2 攻击分析59-63
- 3.3.3 现有检测方式63-64
- 3.3.4 架构64-67
- 3.3.5 数据记录67-68
- 3.3.6 数据分析68
- 3.4 实现68
- 3.5 实验及评价68-77
- 3.5.1 有效性实验69-73
- 3.5.2 性能实验73-77
- 3.6 结论77-78
- 第四章 虚拟化恶意行为记录与重放技术78-93
- 4.1 引言78-81
- 4.2 相关工作81-83
- 4.3 系统设计83-88
- 4.3.1 威胁模型83
- 4.3.2 锁定考虑83-84
- 4.3.3 硬件支持84
- 4.3.4 架构84-86
- 4.3.5 中断记录和重放86-87
- 4.3.6 I/O记录和重放87-88
- 4.4 实现88-89
- 4.5 实验及评价89-92
- 4.5.1 有效性实验89-90
- 4.5.2 性能实验90-92
- 4.6 结论92-93
- 第五章 分布式虚拟机状态检测与监控分析技术93-109
- 5.1 引言93-95
- 5.2 相关工作95-97
- 5.3 系统设计97-103
- 5.3.1 威胁模型97-98
- 5.3.2 虚拟机日志记录架构98
- 5.3.3 用户空间日志记录98-100
- 5.3.4 内核空间记录100-102
- 5.3.5 云平台日志收集与分析架构102-103
- 5.4 实现103-104
- 5.5 实验及评价104-108
- 5.5.1 有效性实验105-107
- 5.5.2 性能实验107-108
- 5.6 结论108-109
- 第六章 总结与展望109-112
- 6.1 工作总结109-110
- 6.2 研究展望110-112
- 参考文献112-120
- 致谢120-121
- 攻读学位期间发表的学术论文目录121-122
- 攻读学位期间参与的科研项目122
本文关键词:面向服务监控的可控云关键技术研究,由笔耕文化传播整理发布。
本文编号:359804
本文链接:https://www.wllwen.com/shoufeilunwen/xxkjbs/359804.html