首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

中标易云:基于虚拟化技术实现可信计算3.0

前言

可信计算经过近20多年的发展,其在安全方面的重要性已经得到了普遍认可。相对于理论的快速发展,可信计算在实践方面是相对滞后的,工业界一直在寻找实现可信计算的最佳实践。

本文通过介绍可信计算的发展历程,结合云计算技术,提出了通过终端虚拟化实现可信计算3.0的整体思路,为可信计算的实践应用提出一种可行途径。

1什么是可信计算

“如果一个实体的行为总是按照预期的方式和目标进行,那它就是可信的(An entity can be trusted if it always behaves in the expectedmanner for the intended purpose )”,---可信计算组织TCG(TrustedComputing Group)

从定义来看,可信计算并没有安全的概念,却流露出容错计算的气质。究其原因,可信计算原本就脱胎于容错计算。

可信计算最终要形成一个可信系统,什么是可信系统,从安全的角度来看就是“为保证较大系统的安全,而必须被信任的系统”。举个例子,你在小岛上得了阑尾炎,岛上只有个兽医,为了活命,你必须相信他。

一台中毒的机器可信吗?

系统行为可预期并不表示系统已经安全,因为预期到的行为除了正常行为,也可以预期到风险。

所以,从容错计算发展来的可信并不等于安全,但可以认为可信是安全的前提。可信计算中期(2.0以后)将可预期性与正确性作为最终的目标,自此,可信计算有了安全特色。

可信计算在网络安全领域的重要性已得到了公认。一个安全的信息系统,首先需要是一个可信的信息系统,这个系统既要保证运行的一致性(可预期)又要确保运行的正确性。

2可信计算法规与政策要求

信息安全已经上升到国家战略,作为信息安全最有利的支撑技术—可信计算也是政策推动方向之一,国家层面在法律与政策层面都有着具体要求如下:

网络安全法:

第十六条:…推广安全可信的网络产品与服务。

第二十四条:…国家实施网络可信身份战略,支持研究开发安全、方便的电子身份认证技术,推动不同电子身份认证之间的护认。

网络安全等级保护测评要求:

恶意代码控制:应采用免受恶意代码攻击的技术措施或者可信验证机制对系统程序、应用程序、重要配置文件/参数进行可信执行验证,并在检验其完整性受到破坏时采取恢复措施。

区域边界访问控制:应采用可信机制对接入网络的设备进行可信验证,确保接入网络设备的真实可信。

程序执行可信保护

通讯网络可信接入保护

网络可信连接保护

配置可信核查

3可信计算发展的三个阶段

可信1.0时期—容错计算

可信计算最早是针对大型机时代主机可靠性的需求而提出的,从软件客体角度出发,强调软件应提供可靠的服务,避免出现严重服务故障的能力。

可信1.0主要解决大型机时代主机可靠性的问题,它针对计算机部件的不稳定问题,采取冗余备份、故障诊断、容错算法等技术,确保信息系统在局部故障的情况下仍能保持运行符合预期,但它并没有对恶意代码、黑客攻击等威胁提出针对性的解决方案。

可信计算1.0只关注可预期性,并不在意正确性。对安全的支撑力度相对较弱。

可信2.0时期—被动可信

随着信息技术的发展,各种信息安全技术层出不穷,人们把眼光重新聚焦可信计算。

可信2.0的理念是:从物理上安全的可信根出发,在计算环境中构筑从可信根到应用的完整可信链条,以向系统提供可信度量、可信存储、可信报告等可信支撑功能,支持系统应用的可信运行。

可信2.0所提供的可信支撑是有限、固化的,在实际应用中,面临着难以克服的障碍。主要体现在三个方面:

1.应用兼容性问题。应用如果需要支持可信链条,需要大量的更改工作。

2.可信管理问题。通过证书机制为定义为可信的应用发放许可,一般开发者们无法自定义,这种可信理念限制了开发者的的开发空间。

3.可信开发问题。TCG定义的可信开发接口门槛过高,造成开发困难,阻碍了可信的发展。

可信3.0时期—主动免疫

针对可信2.0的体系融合、管理缺失以及开发难度大等固有问题,国内可信技术专家根据实际应用情况,提出主动免疫的可信3.0概念。

可信节点通过底层的监控点,以主动监控的方式监视系统的行为,并通过信息系统整体的策略管控,构建可信计算体系,为应用创建一个安全保障环境,确保应用按照预期执行,免疫于黑客、病毒等的威胁。

与可信2.0的“保证可信”的思路不同,可信3.0提出了“保障可信”的防护体系。虽然一字之差,已经变被动为主动。

针对可信2.0应用中的障碍,可信3.0也给出了自己的解决方案。

1.应用融合问题。通过系统层的钩子,实现应用的透明接入,应用不需要更改即可接受“可信保障”。

2.可信管理问题。支持可信的属主自行定义可信,为可信理念提供了更高的自由度,实现了保障可信的理念。

3.可信开发问题。将复杂的可信计算过程封装在可信计算子系统中,并在可信子系统中设计构件化的可信计算环境,简化和规范化可信计算开发工作。

4可信计算构建的两种可信环境

在可信信任链的传递过程中,根据度量的方式不同,分为动态信任链与静态信任链两个链条。

静态信任链度量平台的配置,动态信任链度量系统软件、软件配置与软件策略。

静态信任链

静态信任链在开机后即可度量,如Intel TXT技术,将度量代码写入处理器中,获得了更早的度量时间。在CPU未参与的环境中,一般是将度量代码写入BIOS对系统进行度量,确保链条的完整性。

静态信任链的主旨是:度量从硬件开始,度量值由TPM来防护免受篡改,代码执行前要度量。

静态信任链既无法对系统运行进行度量,受运行空间的限制,也很难支撑庞大的系统软件,更重要的是这些静态度量在每次开机后仅仅运行一次,对于一个服务器系统,在整个生命周期的运行中,其开机次数少之又少,仅仅依靠静态信任链建立可信环境显然是不够的。

动态信任链

静态测量从加电开始,按照顺序加载可信模块形成可信环境,但静态信任链不支持大型系统软件的检测,这就需要通过CPU参与建立另外一种信任环境—动态信任链。动态信任链不依赖系统加电启动过程,允许系统可以从任意一个不被信任的状态为测量起点来建立信任链。值得注意的是,在动态信任链的建立过程中,基于X86的环境,需要一个RING0级别的基础系统作为可信基的运行环境,以期获得更高的安全期望。动态信任链可以根据用户需要在不重启系统的情况下基于策略随时重新构建信任链。

动态信任链的建立与应用,使得略显“僵化”的可信计算体系有了更灵活的防护方式,也使得各类基于动态信任链原理的“白名单”软件系统在工业界得到广泛应用。

5基于虚拟化技术的可信实现方案

可信计算体系的目标是在信息系统中建立自我防护、主动免疫保护的框架,建立与通用计算逻辑节点并行的可信计算逻辑节点,共同运行于统一的软硬件平台之上,构成可信计算体系结构,为可信计算节点提供安全免疫机制。

中标易云利用虚拟化技术,在硬件基础之上的构建基于建立动态信任链的可信计算平台。

该平台向上支撑传统的商业操作系统,向下兼容硬件体系,将可信计算基通过独立、封闭的微内核实现,与计算逻辑节点一起运算,其运行级别也高于计算逻辑节点。由此建立完善、可控的可信机制、执行安全策略最终保障系统安全。

具体架构见下图:

中标易云可信计算体系结构以国产密码体系为基础,以可信平台控制模块为信任根,通过虚拟化技术搭建安全平台,以可信软件为核心,整合各种可信应用形成可信计算体系,为通用计算体系提供主动度量控制等服务,形成可信的双体系结构,保障信息系统和网络环境的整体安全。

架构特点如下:

1. 构建引用访问控制基,实现独立的访问控制机制,杜绝传统商业操作系统的既是管理员又是用户带来的“角色错位”危机。

2. 采用封闭的微内核系统打造可信终端平台,不支持第三方应用的接入,实现封闭系统,杜绝传统商业系统“门户开放”带来安全风险。

3. 位于系统最底层,并接受TPCM、TCM的验证与保护,规避传统商业系统并行保护带来的安全防护“旁路危机”。

4. 通过虚拟化技术,支持多域安全系统,解决“单一操作系统与多安全期望”的矛盾。

5. 支持可信计算2.0、与3.0体系,可以支撑更加复杂的计算应用,为用户打造更柔性的可信终端安全平台。

小结

可信计算3.0的推出,解决了可信2.0的相关问题,为可信计算在工业界的大面积推广奠定了技术基础。利用虚拟化技术,一定程度上也可以降低可信计算3.0的开发成本,并可在传统TCM芯片的支持下,获得良好的可信与安全收益。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180228G0CVEX00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券