第1章 概述
1.1 什么是可信计算
信息系统中的“可信”表示可预期性,即信息系统会按照人们所预期的方式运行。系统行为可预期并不表示系统已经安全,因为预期到的行为除了正常行为,还可以预期到风险。但是,行为可预期意味着可以未雨绸缪,可以在系统设计和控制时根据预期到的行为采取适当措施,控制风险,并且在发现系统出现问题时,及时采取对应的处理措施。一个不能预测其运行的系统,其安全性则无从入手。可以说,可信并不等于安全,但可信是安全的前提。美国国防部于20世纪80年代初提出了《可信计算机安全评估准则》(TCSEC),即著名的“橘皮书”。该评估准则定义系统中实现安全功能的软件和硬件的总和为可信计算基,明确安全机制首先要做到“可信”。
可信计算是保障信息系统可预期性的技术,是指在计算的同时进行安全防护,使计算结果总是与预期值一样,使计算全程可测可控,不受干扰。这一安全防护方式的原理类似于人体的免疫系统,把系统中按照属主要求部署和运行以完成属主所需要功能的部分当作“自己”,可能干扰属主功能正常执行的部分定义为“非己”,在密码机制支持下实施身份识别、状态度量、保密存储,及时识别“自己”和“非己”部分,通过破坏和排斥“非己”部分确保信息系统的可信。这种保障措施是一种主动免疫的方式,与当前流行的以防火墙、防病毒与入侵检测等产品为代表的基于特征库进行被动查杀的防护方式有本质区别。
防火墙、防病毒与入侵检测安全产品被称为“老三样”,它们通过搜集攻击信息,建立特征库,采取“封堵查杀”的方式,消灭已知的安全威胁。但是,当前的攻击手段越来越系统化、多样化、隐蔽化,攻击后果也越来越严重,针对一些关键信息系统的攻击,往往初次发起即致命。“震网”、乌克兰电网等攻击事件就是典型的例子。在新型的攻击威胁下, “老三样”采取的被动查杀的防护方式在新的形式下已经是防不胜防。
与“老三样”不同,基于可信计算的主动免疫方式首先搜集系统和应用的信息,根据用户的信任需求,确定系统的可信特征并建立起可信策略库,这一策略库定义了信息系统“自己”部分的特征,而不符合可信策略的行为则被标识为“非己”部分。可信计算通过物理保护支持的密码学机制确保度量和识别过程的可信,通过灵活应用不同的安全监控措施,识别“自己”和“非己”,保护“自己”部分不受干扰,破坏和排斥“非己”部分,以确保信息系统的行为符合预期。这种方式是传统访问控制原理在新型信息系统环境中的发展,是逻辑正确验证、计算体系结构、逻辑识别等科学技术在网络安全方面的创新应用。
我们可以将可信计算的技术要素与免疫系统做一个类比,图1-1给出了主动免疫系统和人体免疫系统免疫机制的对应图。
图1-1 主动免疫系统和人体免疫系统免疫机制的对应图
基于主动免疫的信息防护系统和人体免疫系统各免疫机制的功能之间可以做如下对应:可信根为主动免疫系统提供信任起点和密码机制支撑,是主动免疫系统的源头,可信根中的可信密码模块起类似于人体免疫系统中基因序列的作用;可信软件基承担节点组成部件的免疫,是节点免疫的关键部件,类似于人体免疫系统中的免疫器官和免疫细胞;可信基准库是识别“自体”与“非自体”的关键部件,类似于人体免疫系统中的免疫分子;主动免疫服务中心为节点提供免疫支持和服务,更新可信基准库,增强感知节点的免疫能力,起类似于国家疾病控制中心的作用。
通过可信计算解决信息安全问题,符合信息技术发展的科学规律。但由于人们对IT认知逻辑的局限性,不能穷尽所有组合,只能局限于完成计算任务设计IT系统,因此,信息系统中必定存在逻辑不全的缺陷。这些逻辑不全的缺陷被攻击者利用,就导致了安全问题。逻辑不全的缺陷是难以根除的,用封堵查杀的被动防御方式,不但无法彻底解决问题,而且拥有特权的被动防御软件还会引来新的问题。
可信计算并不追求根除逻辑缺陷,它在系统中建立起主动免疫的机制,通过保证任务运行环境可信,确保完成任务的必要逻辑能够按照预期执行,防止逻辑缺陷被攻击者应用,增强信息系统自身的免疫性,使其具备抵御未知攻击的能力。可信保障机制应让攻击者进不去,即使攻击者进去了,也拿不到非授权的重要信息,即使窃取到了重要信息也看不懂,系统和信息改不了,系统工作瘫不成,攻击行为赖不掉,从而使“震网”“火焰”“心脏滴血”等漏洞不查杀而自灭。
需要注意的是,可信计算并不是独立地解决安全问题,而是为安全提供可信支撑,为系统构建可信的安全保护框架,因此,说“可信计算解决了某个具体安全问题”并不准确。但可信是安全的前提,可信计算可以认为是从信息安全中抽象出来用以保证安全机制可信性的共性、通用技术,具有广泛的适用性。可以说,可信计算是一种计算模式,一方面,它要与系统的安全机制配合,才能形成解决安全问题的完整方案,因此,可信计算并非万能;另一方面,如果没有可信机制,那么在安全机制的自身保障、不同安全机制的可信协作以及安全机制的公证等方面,都会遇到很大的麻烦,特别对云计算、物联网、大数据等新型信息系统的安全而言,可信计算不可或缺。