通过这种方式,我就可以发现在虚机当中的一些隐藏的Rootkit,一旦检测到就意味着我们可以通过这样一个方式去做检测,那我们就要来判断云服务商有没有能力去做这样一个判断,它能不能有效地去报警。
第二个工具叫做虚拟机内存隔离检测工具。我们知道云计算平台上部署大量的虚机,这个时候它的内存上面有可能就会出现了内存共享的问题。我们就通过这样一个工具来检测。作为攻击者,他也有可能利用你的内存共享机制窃取用户的信息,所以在这里我们要想办法来检测你的进程之间是不是有重叠的内存页。也就是说如果你作为这个进程来讲,在某一个时间段的时候,你的内存页是不应该出现重叠的,这样才能够实现物理隔离。有一些进程肯定是有内存共享这样的一个需求的,针对这一部分内存页,我们就要确保这个进程去访问它的时候,只有只读权限,这个时候我们实现的是一种逻辑隔离,所以这个工具就需要去检测你的平台当中有没有做到相应的物理隔离。
它的实现方法有两个方面,一个是要获得虚拟机物理页的基地址集合,通过Linux操作系统的多级页表映射机来获取。还有虚拟机物理页读写权限获取。
第三个工具是虚拟机内存清除检测工具,虚拟机关机后按道理应该进行内存的及时清除,否则的话,很可能分配给其他的虚机了。这时候如果遇到攻击者,就有可能泄露前面用户留下来的数据。而我们这部分的检测就是来判定虚拟机关机前后相同物理内存当中的数据是否发生了变化,如果不一致,则证明该内存是安全的,也就是说它会有一系列的内存清理操作。当然这个数据不可能全做,比如说他全部写零或者写一,也不太现实,它会根据数据一致的物理页面总的虚拟机内存当中所占的比例来判断云服务商是否提供了内存清除机制。
第四个方面就是虚拟机磁盘挂载检测工具。比较容易理解,因为我们的磁盘可能会被重复挂载,最后会导致数据泄露,所以我们现在就做这样一个检测,在虚拟机运行的时候,对于对应的操作系统,你的进程是什么。另外,就是挂载镜像的文件是什么,和它的安全策略进行对比。
最后一个内容是关于云服务运行监管。刚才我提到了云计算服务,我们有安全审查,我们有各种各样的测评。测评完了最后一个情况就是云是实际在运行的,我们如何掌握运行当中的情况。所以,这里就涉及到我们如何对运行的云计算平台进行一个安全的运行监管。
监管的目的主要是四个方面,一个是合规性,是否是持续满足国家的相关法律法规,包括标准等等。还有就是可靠性,作为云服务商来讲,你有没有有效地去按照某项标准,相关的安全策略是不是都实施了,另外就是可控性和持续性,你的云计算服务没有异常中断。
这是运行监管的一个框架,这里面我们在标准里面已经进行了简化,在这个标准里只出现两个角色,一个是云服务商,一个是运算监管方,因为标准主要讨论的是技术问题。这个运行监管方由谁来承担?这是相关部门再根据他的需求去指定。这里面涉及到对云服务商来讲,他要满足对他的安全控制措施、变更管理和应急响应自身的监管,同时,他会通过接口,现在我们的做法都是通过人工的方式提交相关的材料,比如按季度、按年提交报告。我们下一步正在做的事情就是要做自动接口,通过相应的频率设置以后,把一些指标通过这个接口提交给监管方,然后进行评估验证,给出监管结果。
整个技术路线我们是基于开源云的这样一个方式来实现运行监管体系架构的研究,包括系统的开发。首先,针对云计算平台来讲,会对它的计算资源、网络资源,包括镜像资源和存储资源,以及整个运行情况,里面通过这个指标项采集,到底要做什么样的指标,包括接口的定义,这是我们目前正在做的事。因为运行监管这个国家标准的报批稿我们已经提交了,但是这个标准更多还是说的是一个框架,里面具体的指标项和接口,包括协议封装的方式,现在我们还在新标准的研究当中,也希望业界更多的人一起参与这个事情,大家共同来做这个运行监管。因为这件事是所有的云服务商大家最后都要去遵守的一件事情。
这里面涉及到了监管平台里的一些指标体系,包括监管对象是什么,如何做安全分析,最后来形成对整个云运行情况的可视化。目前我们正在做的验证就是针对工业云的,针对工业云里面的一些运行情况来进行了解,因为现在大家在工业系统上云已经成为一个趋势,如何来有效的了解上云的这些工业系统的情况,我们现在也正在做一些现场的系统验证和研发工作。