2. 吉林大学 管理学院,吉林 长春 130022;
3. 广东工业大学 计算机学院,广东 广州 510006
2. School of Management, Jilin University, Changchun 130022, China;
3. School of Computers, Guangdong University of Technology, Guangzhou 510006, China
在我国,自助服务产业是一个新兴产业.由于自助服务具备部署简易快速、运营成本低廉、服务时间延长和使用方便快捷的特点,因而广泛应用于社会和经济生活中多个方面,包括银行的ATS机自助存取款、税务的自助缴税、电信的自助充值和铁路的自助售票等等.但随着我国自助服务的快速发展以及网络环境的变化,对自助服务终端的信息安全提出了新的要求.本文是在可信计算技术理论研究基础上,结合自助服务系统终端平台运行环境,如在广东地税的自助办税服务系统终端上构建可信运行平台环境,最终实现了包含信任链构建、可信度量和远程证明等关键技术的应用.
1 综述随着分布式系统的发展和应用,计算机病毒、恶意软件和黑客攻击等安全威胁的增强,传统安全技术手段已经无法有效保证计算平台的可信环境.可信计算技术从体系结构入手,为构建计算平台的可信环境提供了一种全新的体系结构级解决方案.目前可信计算技术广泛应用在许多领域[1-6].该技术通过引入硬件安全芯片可信密码模块(Trusted Cryptography Module, TCM)作为平台信任根,并以此建立平台信任链,从而保证计算平台可信.与此同时,硬件芯片作为平台身份的唯一标识,通过对平台身份和环境的证明验证可进一步保证分布式环境中系统应用的安全.
1.1 信任链构建目前网络已经成为信息传递的主要方式.同时,网络也成了木马、病毒等恶意代码传播的主要途径.而这些恶意代码最终来源于终端,如何保障终端的安全性是计算机安全领域一直关注的问题.可信计算中的信任链构建技术就是在这种背景下产生的技术,其通过度量运行的组件和信任传递保障整个系统运行的代码都是可信的,从源头上解决计算机系统的安全问题.可信计算利用嵌入在计算机系统的安全芯片(TCM)作为可信度量根,给出了一种建立平台信任的信任链实现方法,其从信任根开始一层度量一层,并逐级认证,将信任从最底层的硬件信任根传递到整个系统,保证系统执行环境的可信.在早期的度量系统中,具有代表性的是马里兰大学的Copilot系统[7]和卡内基梅隆大学的Pioneer系统[8],它们分别借助专用PCI板卡和外部可信实体执行度量工作,其不足都在于无法适用于通用的终端平台.
由于静态信任链包含硬件、Boot loader、整个OS以及相关应用代码,其TCB过大,且每个环节都很复杂,存在很多安全隐患.为了解决这些问题,基于动态信任根DRTM[9]的动态信任链技术发展起来,动态信任链需要依赖特殊的处理器指令,由处理器指令为安全代码提供一个动态的安全隔离执行环境.目前构建动态信任链的方法主要包括AMD的SVM技术[10]和Intel的TXT[11]技术.
1.2 可信度量信任链构建是引导平台可信的软、硬件方法,而可信度量是在平台引导过程中的具体度量体系和度量机制方法的体现.
针对操作系统内核的度量,主要工作包括2007年提出的Trusted Grub[12]、LKIM[13]以及2009年研发的KOP[14]等系统.Trusted Grub实现了系统启动时引导层程序对于操作系统内核文件的度量.该系统通过对传统引导程序Grub进行修改实现.在系统启动过程中,Trusted Grub装载内核文件时,对该文件执行哈希运算,并将运算结果存储入TPM中的PCR寄存器,然后再将系统控制权转交给操作系统内核.LKIM系统利用上下文检查技术实现了对于操作系统内核运行时的完整性动态度量.该方法不仅对内核中的静态代码和数据进行哈希度量,对于动态数据结构也进行了度量,从而提高了完整性度量的准确性.
1.3 远程证明远程证明是可信计算提供的一大特色和核心功能,是目前可信计算领域最为热门的研究工作之一.TCG的两个版本中提出了2个方案:基于可信第三方Privacy-CA的证明方案和直接匿名证明方案(DAA),它们确立了远程证明的基本原则.这2种方案在保证平台身份认证性的同时,保证平台身份的匿名性.在Privacy-CA方案中每次通信过程都需要经过隐私CA,因此隐私CA容易成为系统的瓶颈;同时,如果攻击方攻破了隐私CA或者与隐私CA合谋,则网络交易中的平台身份的匿名性必将遭到破坏.而DAA方案通过采用知识签名等密码学机制,极大促进了远程证明时可信计算平台身份隐私保护问题的解决.
随着可信计算技术的发展,对自助服务系统的可信终端产品安全性研究与产业化逐步得到重视,国内外厂商推出了各种可信终端产品,而可信终端的标准化工作也逐步展开.据IDC产业数据显示,2006年全球市场配置有TPM芯片的PC的销售量达到2 500万台,2007年增长到6 000万台.随着微软新操作系统Vista推广使用,加速了TPM成为PC标准配置的过程.目前,国外大部分笔记本电脑和相当比例台式机产品配置有TPM芯片,TPM已经成为安全基础设施的关键部件.在移动手机终端产业应用方面,ARM公司在嵌入式、移动终端领域里提出了Trust Zone技术以支持可信计算应用.Trust Zone技术的核心是在微处理器中增加可信计算安全功能,同时通过硬件提供代码隔离,以保证微处理器内外的存储空间及外设不受软件攻击.在可信终端相关标准方面,TCG主要推出了TPM v1.2规范和安全PC客户端规范.在国内,可信计算的标准化工作已成为推动可信计算技术发展和应用的关键.国家密码管理局已于2007年12月发布了《可信计算密码支撑平台功能与接口规范》标准,该标准定义了TCM和TSM的主要功能与接口.在自助服务系统终端方面,国家质检总局、国家标准化委员会已于2009年4月发布了GB/T23467-2009《自助服务终端通用规范》,该标准定义了自助服务终端的应用要求和测试方法,在安全方面要求需要保密的数据应经过数据安全模块处理.
2 自助服务系统终端的可信环境的构建方法与实现为了建立自助服务系统终端的可信环境,需要基于硬件安全芯片TCM对自助服务系统终端实施可信引导、完整性度量和完整性验证.系统总体架构如图 1所示.例如,在自助办税服务系统终端使用过程中,需要向服务提供方或资源提供方证明当前终端的可信性:一方面是平台身份确认,另一方面是对平台环境的可信证明.在此过程中,需要以自助办税服务系统终端平台信任环境构建为技术基础,利用可信芯片提供的平台身份及完整性度量值,提供平台身份与状态的远程证明.所设计的远程证明协议需要有效地为平台身份和平台环境提供可信证明.因此,自助办税服务系统的远程证明技术主要从平台身份证明和平台完整性证明两个方面来证明终端平台环境的可信状态.平台身份证明保证只有拥有合法硬件TCM身份的税务终端平台才能接入税务系统,平台完整性证明保证只有拥有预期软硬件配置的税务终端才能使用税务系统提供的相关服务.
|
图 1 可信自助服务系统终端关键技术总体架构 Figure 1 Architecture of key technology of trusted self-service system terminal |
可信引导[15]技术,以安全芯片为信任根,从计算机系统的底层硬件出发,建立到达操作系统启动的信任链,可以为操作系统启动建立可信的运行环境.这是计算机信任链构建的第1个环节,是其他信任链建立的基础.可信引导技术中的信任根可以采用我国自主研发、具有自主知识产权的TCM安全芯片.
可信引导过程要求,所有的可执行代码,在执行之前,都经过完整性验证,只有信任根是无条件相信的.从信任根出发,引导过程中的可信建立在可信链传递的机制上.由于整个引导过程是发生在实模式下,因此是由一系列的有先后顺序的执行过程组成.这里的可信要求,主要是对硬件平台本身和各个可执行实体的完整性验证.可信引导的过程如图 2所示.
|
图 2 可信引导过程 Figure 2 The trusted boot process |
完整性度量是构建平台信任的核心关键技术,其构建主要依赖于操作系统度量,根据其度量结果来决定其系统状态是否可信.当操作系统取得系统控制权后,操作系统内核中的完整性度量模块对内核模块以及用户进程进行度量,度量算法采用与自主TCM芯片兼容的SM3算法,并将度量结果扩展到TCM的平台配置寄存器PCR中进行保存,攻击者无法篡改PCR,因此保证PCR中的数据能够反映当前终端平台状态.完整性度量的流程如图 3所示.
|
图 3 完整性度量流程 Figure 3 Integrity measurement process |
完整性证明是向自助服务系统服务端即验证方证明当前自助服务系统客户端平台身份和配置状态可信的必要过程,使终端可信扩展至平台之间的可信.远程证明协议[16]的设计主要需要考虑平台身份和配置状态的可信都能够得以证明(见图 4).
|
图 4 远程证明协议流程 Figure 4 Remote certificate protocol process |
(1) 网络通讯模块向服务端发出请求,请求时向服务端发送PIK证书;
(2) 服务端响应请求,发送挑战随机数和证明请求,要求客户端平台进行远程证明;
(3) 网络通讯模块接收到服务端的证明请求,将请求交给完整性收集模块;
(4) 完整性收集模块转发请求给平台度量,从平台中获取完整性度量结果;
(5) 完整性收集模块将度量结果发送给管理界面,显示输出度量结果;
(6) 网络通讯对度量结果进行格式化,组合成证明结果,发送给服务端验证;
(7) 验证服务根据预先定义的网络通讯数据格式,解析获得的数据;
(8) 验证服务对通过平台身份验证的数据进行完整性验证和评估,给出评估建议.
通过运行远程证明协议,远程的自助服务系统服务端首先验证客户端平台身份,然后对通过平台身份验证的证明数据进行完整性验证,最后得出完整性评估值和建议,并依据可信策略进行访问控制的判别,以判定证明方的某项操作是否合法.
基于平台身份的证明服务用于证明自助服务系统客户端平台确实拥有特定的平台身份,提供服务的前提是客户端具有与可信安全芯片关联的平台身份(见图 5).客户端的平台身份由作为可信第三方的颁证方颁发,并且出于保护平台隐私的目的,颁证方在验证客户端具有真实EK的基础上,为其颁发与该EK关联的PIK证书.EK用于向颁证方申请平台身份,而PIK证书则作为平台身份直接用于同其他实体进行通信.基于平台身份的证明服务流程如下:
|
图 5 基于平台身份的证明服务流程 Figure 5 Process of proof service based on platform identity |
(1) 证明方向验证方出示平台身份;
(2) 验证方将平台身份传递给平台信任服务查询该身份是否可信,也就是查询平台身份是否对应着一个有效的EK;
(3) 平台信任服务根据平台身份进行查询,并将验证是否通过的结果传给验证方;
(4) 验证方根据其收到的验证结果,对证明方执行允许或拒绝访问的操作.
基于平台完整性状态的证明服务是证明方在访问应用或数据资源的过程中,向验证方提供自己平台状态的证明(见图 6).证明方通过平台信任服务提供的自身平台完整性的证明,向验证方保证访问过程中自身平台状态可信.针对保护证明方隐私的安全要求,需要对平台完整性度量值进行隐藏,鉴于用平台配置二进制值来表达平台完整性具有可用性、隐私保护方面的问题,提供平台信任服务的前提是由平台信任服务具有平台完整性属性管理功能.平台完整性属性管理提供属性映射关系颁发、撤销功能,并生成属性映射关系证书撤销列表.平台信任服务提供方利用平台完整性度量值及安全属性,实施证明方的平台完整性状态证明,从而为证明方提供基于安全属性的信任支持.
|
图 6 基于平台完整性状态的证明流程 Figure 6 Process of proof based on platform integrity |
基于平台完整性状态的证明服务主要是平台信任服务提供方提供的完整性与完整性二进制度量值之间的对应关系查询服务.基于平台完整性状态的信任服务能够让验证方与证明方通过安全属性来表达安全需求,而不是通过限定平台配置的二进制值,这样有助于保护证明方的隐私.基于平台完整性状态的证明流程如下:
(1) 验证方把对证明方的安全要求传输给证明方;
(2) 证明方提取安全要求中的安全属性,向平台信任服务提供的属性映射管理组件请求其对应的映射关系;
(3) 属性映射管理组件查询出合适的属性映射关系证书,并将这些证书及最新的证书撤销列表发送给证明方;
(4) 证明方与验证方基于属性映射关系证书及证书撤销列表进行平台完整性的远程证明.
通过上述流程,证明方可以完成向验证方证明平台的安全属性,而不泄露平台的具体配置,并且验证方也可以更加灵活地基于属性来制定安全需求.
3 结语本文针对自助服务系统的体系结构及相关技术发展的趋势,结合可信计算技术实现对自助服务系统终端运行环境的可信保障.为保障自助服务系统终端的可信性,必须以防篡改的硬件设备为信任基础,以密码学算法和协议为手段,将对于防篡改硬件设备的信任,逐步扩展为对整个终端平台的信任.目前,在自助服务系统终端的可信安全问题研究尚处在起步阶段.尤其是在自助办税服务系统中铺设在第三方公共场所的终端,由于终端长时间处于无人看管状态,因而恶意用户可能完全控制自助服务终端,极大增加了实施攻击的可能性.本文的研究成果能够保障自助服务系统终端处于可信状态,进而保障自助服务系统的安全可靠,能够解决当前自助服务系统终端研究、生产和应用领域面临的信息安全问题.未来,开展可信的自助服务系统终端的科研工作,将成为实现信息安全关键技术自主掌控的前提条件,它将有利于促进我国信息安全产业技术进步,有利于推动我国信息安全保障体系的建设.
| [1] | ERIKSSON M, POURZANDI M, SMEETS B. Trusted computing for infrastructure[J]. Ericsson Review, 2014, 91(2): 20-27. |
| [2] | GU Y S, CHEN J, WANG Y R. Research on trust model based on behavior and trusted computing[J]. Advanced Materials Research, 2010, 108(1): 1259-1263. |
| [3] |
汪双兔, 韩坚华, 罗军. 云环境下基于信任的入侵防御研究[J].
广东工业大学学报, 2014, 31(3): 55-61.
WANG S T, HAN J H, LUO J. Research on intrusion revention based on trust in cloud environments[J]. Journal of Guangdong University of Technology, 2014, 31(3): 55-61. |
| [4] | ZHAN J, ZHANG H G, YAN F. Building trusted sub-domain for the grid with trusted computing[J]. Lecture Notes in Computer Science, 2008, 4990: 463-471. DOI: 10.1007/978-3-540-79499-8. |
| [5] | WU H, WU G Q. On the concept of trusted computing and software watermarking:a computational complexity treatise[J]. Physics Procedia, 2012, 25: 465-474. DOI: 10.1016/j.phpro.2012.03.112. |
| [6] |
胡小冰, 冯广. 基于可信计算的网络信任管理系统[J].
广东工业大学学报, 2009, 26(3): 64-67.
HU X B, FENG G. Trusted network management system based on trusted computing[J]. Journal of Guangdong University of Technology, 2009, 26(3): 64-67. |
| [7] | PETRONI N, FRASER T, MOLINA J, et al.Copilot a coprocessor based kernel runtime integrity monitor[C]//USENIX.Security Symposium.San Diego:USENIX, 2004:179-194. |
| [8] | SESHADRI A, LUK M, ELAINE S, et al.Pioneer:verifying code integrity and enforcing untampered code execution on legacy systems[C]//ACM.The Twentieth ACM Symposium on Operating Systems Principles. NewYork:ACM, 2005:1-16. |
| [9] | CONG N. Dynamic root of trust in trusted computing[J]. Seminar on Network Security, 2007(10): 6-12. |
| [10] | Advanced Micro Devices.AMD64 architecture programmer' manual[M]. [S.l.]:System Programming AMD Publication, 2007. |
| [11] | Intel Corporation.Intel Trusted Execution Technology-Software Development Guide[M].[S.l.]:Intel Corporation Publication, 2015. |
| [12] | Applied Data Security Group.What is trusted GRUB[EB/OL].(2007-05-02)[2015-11-09].http://www.prosec.ruhr-uni-bochum.de/trustedgrub.html. |
| [13] | LOSCOCCO P A, WILSOR P W, PENDERGRASS J A.Linux kernel integrity measurement using contextual inspection[C]//ACM.Workshop on Scalable Trusted Computing.Virginia:ACM, 2007:21-29. |
| [14] | CARBONE M, CUI W, LU L.Mapping kernel objects to enable systematic integrity checking[C]//ACM.16th ACM Conference on Computer and Communications Security, Coventry.UK:ACM, 2009:555-565. |
| [15] |
徐震, 沈丽红, 汪丹. 一种可配置的可信引导系统[J].
中国科学院研究生院学报, 2008, 25(5): 626-630.
XU Z, SHEN L H, WANG D. A configurable trusted booting system[J]. Journal of University of Chinese Academy of Sciences, 2008, 25(5): 626-630. |
| [16] |
赵世军, 冯登国. 基于属性证明的可信网络接入方案[J].
武汉大学学报(理学版), 2012, 58(6): 519-525.
ZHAO S J, FENG D G. A TNC trusted network connection schema based on property attestation[J]. Journal of Wuhan University:Natural Science Edition, 2012, 58(6): 519-525. |
2016, Vol. 33