论文部分内容阅读
当前的信息技术已经逐渐迈入以云计算、物联网、大数据、移动互联网为主要代表的时代,其中云计算作为其他应用的基础平台,其安全性在新的信息技术时代显得尤为重要。当前的云计算还面临着诸如虚拟机逃逸、云数据中心内部东西向流量监控困难等安全问题。为了有效保护云数据中心的安全,本文首先基于开源软件实现了虚拟机综合监控验证系统,在此基础上分别从主机、网络两个层面出发,分析和研究了在上述层面中对云数据中心实施安全监控面临的难点问题,并就关键技术进行了改进。同时,基于来自互联网的多个真实数据集,对本文中提出的新监控模型和方法进行了充分的实验评估,实验结果验证了所提出模型和方法在各个研究层面的合理性和准确性。具体内容描述如下:(1)基于开源软件实现了虚拟机综合监控验证系统本文首先利用已有的成熟方案构建了云数据中心虚拟机监控的基础框架,针对已有方案存在的问题,通过将虚拟机自省技术跟其他安全监控技术有机结合,本文实现的监控验证系统具备对虚拟机内存、网络和文件的实时监控能力。相比于已有的成熟方案,新的监控验证系统在两个地方有显著改进:首先可以在物理主机层监控虚拟机文件系统的创建、删除和修改;其次,相比于传统的监控方法,新的监控验证系统无需在虚拟机中安装代理,安全工具的隐蔽性很高,难以被攻击者探测。(2)基于虚拟机自省的API调用监控技术虚拟机层面,利用虚拟机自省技术实现隐匿的虚拟机监控,可达到系统调用级别的细粒度,具有隐蔽性高的优势,但是其性能开销较大,尤其是监控系统调用时,CPU在虚拟机和主机之间切换频繁,无法有效实现实时监控。为此,本文改进了相关工作,提出了一种进程级的虚拟机执行监控系统,一方面缩小了系统调用的监控范围,另一方面支持对用户层API调用的监控,使得结果更加全面。此外,还设计了样本注入和快照方法,可以无痕地将待分析样本注入到虚拟机中运行,并在运行完成后恢复初始状态,从而提高分析过程的自动化水平。(3)基于嵌套虚拟化的超级调用攻击检测方法针对云平台本身可能不可信的问题,提出了基于嵌套虚拟化的超级调用攻击检测方法,可以检测从虚拟机监控器层面发起的攻击和非法行为。利用硬件特性支持,包括嵌套虚拟化、扩展页表保护和中断异常实现对虚拟机监控器本身的监控,即使在虚拟机监控器被控制的情况下,我们依然能够监视属于一个虚拟机监控器上的所有虚拟机的超级调用,从而及时发现攻击行为。此外,我们还通过超级调用注入来模拟基于超级调用的攻击,并评估了该方法的性能。实验结果表明,该方法可以有效地检测出基于超级调用的攻击。(4)云数据中心的可疑流采样方法基于软件定义网络转发控制分离以及可编程的特点,实现了多层次的网络流量采样和检测模型。一方面利用正常业务流历史统计信息指导云内部的流量采样,在构建分类模型的基础上实现流的实时分类和采样,极大地提高了采样的针对性和对未知攻击的捕获能力,降低了采样的带宽开销。另一方面基于入侵检测系统的反馈实时调整采样方案,进一步提高了采样的全面性,降低了已知攻击流被漏采的概率。两者结合起来可以有效地解决云内部东西向流量的监控难题。(5)基于可疑流采样的云僵尸网络检测方法在上述采样方法的基础上针对云内P2P僵尸网络的特点提出了一种两阶段云僵尸网络检测方法,首先通过openflow控制器实时收集流统计信息检测可疑流,然后通过为可疑流分配相应的采样率实施采样,导流给深度报文检测工具进行僵尸主机的检测。实验表明其可以快速准确定位潜在的P2P僵尸主机,具有准确率高、误报率低的特点,且性能消耗在可以接受的范围内。