随着互联网应用的迅速普及,人们与网络的关系变得越来越紧密。然而,由于互联网具有开放性、互联性等特征,致使网络存在很多不安全因素,恶意软件的肆意攻击,黑客不轨的破坏行为都严重地威胁了人们的利益安全。因此,现在非常需要一套既能够保护计算机不受恶意攻击,又能够为访问网络提供安全保障的解决方案。
由可信计算组织(TCG)提出的可信网络连接(TNC)架构就是在这样的背景下产生的。TNC能够解决在网络环境下的终端安全问题,并且通过对终端进行完整性度量,来评估终端对于要访问网络的适用性,以便确保只有合法并且自身安全的终端才能够接入到网络。TNC利用结合终端完整性检验的访问控制技术,来实现终端主机的安全连接。本文首先对TNC架构进行深入研究,分析其中的各种原理与设计思想,然后对TNC架构进行实现。
TNC架构研究
TNC是TCG提出的一种新概念的模型,同时它也是一个开放的通用架构,TNC不依赖于具体的技术或者模型,但又能和各种技术进行良好的互操作。TNC架构将利用并且结合现存的网络访问控制技术,例如802.1x来提供下面的功能。
a、平台认证:验证一个网络访问请求者的平台身份和平台完整性验证。
b、终端完整性认证(授权):建立一个终端的可信等级,例如确保指令应用程序的表现,状态和软件版本,病毒签名数据库的完整性,入侵检测和防御系统程序,以及终端操作系统和程序的补丁等级。注意策略遵从性也可以被看作是授权,这种意义上终端完整性检验被当作授权决策的输入来获得对网络的访问。
c、访问策略:确保终端机器和/或它的用户授权并且公开了他们的安全状况在连接网络之前,利用一些现存的和出现的标准,产品或者技术。
d、评估,隔离和修补:确保那些要求访问网络的系统,但是不满足终端安全策略需求,能够被隔离或者检查从网络的其他部分,并且如果可能进行适当的修补,例如更新软件或者病毒签名数据库来加强对安全策略的适应并且使与网络其他部分的连接变得合格。
通过上述方法,TNC允许检验合格的终端能够接入网络,并且对检验不合格的终端,能够进行隔离修补。另外,通过对用户以及平台的认证,来确保用户及使用平台的合法性。
TNC架构
TNC架构采用服务器/客户端模式,从纵向考虑,TNC包含三个逻辑实体:访问请求者AR(Access Requestor),策略执行点PEP(Policy Enforcement Point)和策略决策点PDP(Policy Decision Point)。访问请求者是请求访问受保护网络的逻辑实体。策略执行点是执行PDP的访问授权决策的网络实体。策略决策点是根据特定的网络访问策略检查访问请求者的访问认证,决定是否授权访问的网络实体。
从横向考虑,TNC又分为完整性度量层、完整性评价层和网络访问层。
在TNC架构的设计中,重点强调了接入终端的完整性和安全性,充分体现的一个理念就是只有一台自身完整,并且具有很高安全度的终端主机才能接入到危险的网络环境中。所以,TNC在原有AAA架构的基础上,力图添加度量与报告终端完整性安全状态的内容,把它作为进行认证和授权的一部分。这样,在成熟的认证架构的基础上,TNC添加了平台证书认证,完整性检验握手等内容在很大程度上提高了访问网络的安全性。正是基于上述目的,TNC架构中的完整性度量层用来收集、度量、分析设备完整性信息,并把分析结果提供给完整性评价层使用,作为评价终端安全状态的依据。
TNC访问控制过程
如图3所示,TNC的访问控制过程包括信息采集、信息上报、决策制定、决策实施、隔离修补等几个步骤。首先,在信息采集阶段AR实体要收集一些关于终端的信息,包括是否安装反病毒软件,是否安装防火墙,是否给系统打补丁等一些设备完整性的信息,在图2中完整性采集器IMC(Integrity Measurement Collectors)主要负责收集信息的工作。然后,在信息上报阶段AR把这些信息通过策略实施点PEP发送给策略决策点PDP。在决策制定阶段,PDP根据先前制定好的策略,根据上报的各种信息来做出决策,其中图2中完整性分析器IMV(Integrity Measurement Verifiers)主要负责这项工作。在策略实施阶段,PDP把决策结果传达给PEP,如果检测合格,就允许终端访问网络,如果检测失败,就让PEP把终端进行隔离,并进行相应的修补工作,例如给终端安装最新的补丁,或安装防护软件等。在修补工作完成后,终端又可以重新申请访问网络资源,继续重复上面的过程。