CN114035896A - 一种基于可信计算的批量云取证方法 - Google Patents
一种基于可信计算的批量云取证方法 Download PDFInfo
- Publication number
- CN114035896A CN114035896A CN202111319357.2A CN202111319357A CN114035896A CN 114035896 A CN114035896 A CN 114035896A CN 202111319357 A CN202111319357 A CN 202111319357A CN 114035896 A CN114035896 A CN 114035896A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- evidence
- integrity
- data
- vmm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000012795 verification Methods 0.000 claims abstract description 46
- 239000000306 component Substances 0.000 claims description 36
- 238000005259 measurement Methods 0.000 claims description 30
- 238000004364 calculation method Methods 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 10
- 238000010200 validation analysis Methods 0.000 claims description 4
- 239000008358 core component Substances 0.000 claims description 3
- 238000013502 data validation Methods 0.000 claims description 3
- 238000007405 data analysis Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 9
- 238000004458 analytical method Methods 0.000 abstract description 6
- 230000002159 abnormal effect Effects 0.000 abstract description 3
- 238000010276 construction Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 102100033668 Cartilage matrix protein Human genes 0.000 description 1
- 101001018382 Homo sapiens Cartilage matrix protein Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于可信计算的批量云取证方法,包括:通过可信计算技术构建的从硬件TPM到虚拟机的信任链,确保证据生成的环境可信;利用虚拟机自省技术以虚拟机无法感知的方式在虚拟机监视器VMM中批量收集虚拟机的信任链证据数据,计算每个虚拟机证据数据的完整性度量值,生成综合完整性参考值并加密传输证据数据到取证中心;收到证据数据后,取证中心的验证服务程序检查数据的新鲜性、机密性和完整性及数据来源的可靠性后,对信任链的完整性和各组件的完整性进行分析,验证证据数据的完整性以及证据产生环境的可信。本发明能够对虚拟机和宿主机信任链上的证据信息进行批量取证、分析和验证,及时管控异常虚拟机。
Description
技术领域
本发明涉及可信计算、虚拟化安全、云取证等技术领域,具体为一种基于可信计算的批量云取证方法。
背景技术
随着云计算技术的不断发展,虚拟机已经成为云服务商提供云计算服务的主要范式。因此,虚拟机被视为云计算安全威胁的主要攻击目标和受害者。敌手可以从内部(例如,获得超级管理特权,然后攻击其他无辜的虚拟机或宿主机)和外部(例如,通过应用程序的漏洞非法获取租户的数据)两个方面攻击云基础设施。云计算的快速发展,也使得其成为网络高级(数字)犯罪的攻击目标。
云计算取证(以下简称云取证)是数字取证科学在云环境中的应用,在威慑、打击云犯罪活动和维护用户权益上发挥着重要作用。云取证领域目前面临的技术问题主要集中在证据获取和证据分析两个阶段,具体包括对数据控制能力的缺失、多用户数据混杂、证据易失性问题、数据量大且格式众多、数据时间戳不一致、数据加密后难以分析等方面。其中前四个主要是证据获取阶段面临的问题,后两个主要是证据分析阶段面临的问题。在现有公开的云取证方法中,一个常见的假设是从云基础设施收集到数据总是可信的,事实上,云基础设施可能容易受到各种攻击。此外,虚拟机自省技术(VMI,Virtual MachineIntrospection)虽然在信息获取方面已经得到了学术界及产业界的广泛认可,但如果无法保证虚拟机监视器、固件和网络的完整性,所获得的信息任可能被篡改。
可信计算是一种信息安全的新技术,它主要从硬件、固件、操作系统和应用等方面综合采取措施,将大多数不安全因素控制在终端源头。可信计算技术通过无法篡改的物理安全芯片---硬件可信平台模块(TPM,Trusted Platform Module)来测量、存储和报告系统关键组件的完整性状态,保护系统中的关键组件不被破坏。
借助物理安全芯片TPM,基于可信计算技术,提出一种批量云取证方法,通过采集云虚拟机及宿主机运行状态证据信息来检查云基础设施的运行状态,可以及时发现异常的虚拟机。
发明内容
针对上述问题,本发明的目的在于提供一种基于可信计算的批量云取证方法,基于可信计算技术构建从硬件TPM到虚拟机的信任链,对虚拟机和宿主机信任链上的证据信息进行批量取证、分析和验证,及时管控异常虚拟机,确保证据产生环境的可信。技术方案如下:
一种基于可信计算的批量云取证方法,包括以下步骤:
步骤1:构建可信的证据数据生成环境
证据生成环境在启动过程中,从硬件可信平台模块出发,在宿主机启动时度量操作系统,将信任链从硬件可信平台模块传递至操作系统,保证宿主机操作系统的可信;通过操作系统度量VMM(virtual Machine monitor 虚拟机监视器),将信任范围扩展至VMM;然后由VMM度量虚拟机,将信任范围扩展至虚拟机,保证虚拟机基础环境中核心组件的安全以及虚拟机初始启动环境的安全可信;
步骤2:证据数据批量取证
通过位于VMM中的VMI验证代理在计算节点上按顺序收集每个虚拟机中的证据数据及虚拟机身份信息打包在一起;当收集完所有运行虚拟机的证据数据之后,再收集宿主机的度量日志文件和PCR值,实现同一计算节点上所有信任链证据信息的批量采集;
步骤3:证据数据安全传输
将所有运行虚拟机的证据数据组成一个数组,VMI验证代理程序对该数据进行加密,并传输到取证中心;
步骤4:证据数据分析和验证
取证中心的验证服务器收到计算节点的所有证据数据后,开始对数据进行验证分析;验证服务器程序首先检查数据的新鲜度、数据来源的真实性、数据的完整性和机密性,然后检查宿主机信任链及宿主机上信任链中各组件的完整性。
进一步的,所述步骤1具体包括:
步骤1.1:核心可信度量根执行最初的可信度量,引导可信平台模块开始工作,验证基本输入输出系统完整性,将控制权交给基本输入输出系统;
步骤1.2:基本输入输出系统初始化:基本输入输出系统启动后度量系统硬件、ROM及主引导记录的完整性并记录及扩展度量值;之后装入主引导记录,随后把控制权交给主引导记录,主引导记录再度量OS装载器的完整性,把控制权交给OS装载器;
步骤1.3:OS装载器度量操作系统的完整性,并记录及扩展度量值,将控制权交给操作系统;
步骤1.4:操作系统度量VMM的完整性,并记录及扩展度量值,将控制权交给VMM;
步骤1.5:虚拟机监视器VMM度量虚拟可信根实例的完整性,并记录及扩展度量值,将控制权交给虚拟可信根;
步骤1.6:虚拟可信根度量虚拟机的完整性,并记录及扩展度量值,将控制权交给虚拟机;
步骤1.7:虚拟机度量应用程序的完整性,并记录及扩展度量值,将控制权交给应用程序。
更进一步的,所述步骤2具体包括:
步骤2.1:在VMM中为每个虚拟机构建一个真实存在的vPCR列表,将列表中的每个字段对应一个vPCR,并将其与对应的虚拟可信根的vPCR进行数据同步;同时,将每个虚拟机中的存储度量日志文件的访问地址记录在VMM中虚拟机对应的数据结构中;
步骤2.2:在虚拟机实例启动时通过VMI验证代理程序采集并记录每个虚拟机vSML访问地址;当需要收集虚拟机证据信息时,VMI代理程序通过之前存储的vSML内存地址采集每个虚拟机的vSML文件;
步骤2.3:位于VMM中的VMI验证代理批量采集计算节点上运行的每个虚拟机的vSML文件和真实vPCR列表,并将每个虚拟机中的vSML文件、真实vPCR列表及虚拟机身份信息打包在一起,再收集宿主机的度量日志文件和PCR值,实现同一计算节点上所有信任链证据信息的批量采集。
更进一步的,所述步骤3具体包括:
步骤3.1:建立虚拟机证据数组Dvm[],该数组中的每个元素就是一个虚拟机的证据信息,包括虚拟机的身份信息、虚拟机真实vPCR列表信息以及虚拟机中存储度量日志信息;
步骤3.2:VMI验证代理先对数组中每个元素进行哈希运算,生成每个元素完整性度量值,然后按顺序对每个元素的哈希值再次进行迭代哈希,最终得到虚拟机证据完整性综合参考值HDs;
步骤3.3:位于VMM的VMI验证代理和取证中心的验证服务器之间建立通道并协商会话密钥和随机数Nonce;
步骤3.4:验证代理收集所有正在运行的虚拟机的真实vPCR列表和vSML,并且执行步骤3.2计算出HDs;
步骤3.5:验证代理采集宿主机信任链存储度量日志,并使用HDs和Nonce计算生成新的quote参考值,在通过tpm_quote命令收集宿主机PCR当前值;
步骤3.6:使用会话密钥对数据包进行加密,并使用目的节点可信平台模块公钥对会话密钥进行加密,加密后将数据传输到取证中心的验证服务程序。
更进一步的,所述步骤4中检查宿主机信任链及宿主机上信任链中各组件的完整性具体包括:
步骤4.1:根据SML文件重现PCR扩展过程,比较计算结果与采集的当前PCR值,若两者一致,则表明SML未被篡改,否则该SML已经被破坏;
步骤4.2:在验证SML完整性的基础上,将组件的度量值与基准数据库白名单中的参考值进行对比以验证各组件的完整性状态;若两者匹配,则组件通过验证;否则,组件程序已被更改,需要进一步检查组件是否进行了升级或是否已被攻击破坏;
步骤4.3:根据vSML文件重现vPCR扩展过程,之后比较计算结果与采集的vPCR的当前值,若两者一致,则表明vSML未被篡改,否则该vSML日志已经被破坏;
步骤4.4:在验证vSML完整性的基础上,将组件的度量值与基准数据库白名单中的参考值进行对比以验证各组件的完整性状态;若两者匹配,则组件通过验证;否则,组件程序已被更改,需要进一步检查组件是否进行了升级或是否已被攻击破坏。
本发明的有益效果是:本发明通过可信计算技术构建的从硬件TPM到虚拟机的信任链,确保证据生成的环境可信;利用虚拟机自省技术以虚拟机无法感知的方式在虚拟机监视器VMM中批量收集虚拟机的信任链证据数据,计算每个虚拟机证据数据的完整性度量值,生成综合完整性参考值并加密传输证据数据到取证中心;收到证据数据后,取证中心的验证服务程序检查数据的新鲜性、机密性和完整性及数据来源的可靠性后,对信任链的完整性和各组件的完整性进行分析,验证证据数据的完整性以及证据产生环境的可信;能够及时管控异常虚拟机,确保证据产生环境的可信。
附图说明
图1是证据数据生成环境信任链构建过程。
图2是虚拟机证据数据加储过程。
图3是证据数据安全传输过程。
图4是数据验证分析过程。
具体实施方式
下面结合附图和具体实施例对本发明做进一步详细说明。
本发明提出了一种基于可信计算的批量云取证方法,具体步骤如下:
步骤1:构建可信的证据数据生成环境。
证据生成环境在启动过程中,从硬件可信平台模块出发,在宿主机启动时度量操作系统,将信任链从硬件可信平台模块传递至操作系统,保证宿主机操作系统的可信;通过操作系统度量虚拟机监视器VMM,将信任范围扩展至VMM;然后由VMM度量虚拟机,将信任范围扩展至虚拟机,保证虚拟机基础环境中核心组件的安全以及虚拟机初始启动环境的安全可信。
系统在启动过程中,从系统级芯片TPM出发,遵循“先度量,再执行”的原则,通过信任链传递技术,机器的控制权在BISO(Basic Input-Output System 基本输入输出系统)、系统硬件、操作系统引导程序、操作系统、虚拟机监视器、虚拟机、应用程序之间依次传递。通过这种逐级度量、逐级信任的方式传递信任链,将度量结果扩展到平台配置寄存器(PCR,Platform Configure Register)并记录度量日志(SML,Stored Measurement Log),保证证据数据生成环境启动过程的安全可信。图1描述了生成证据数据环境的信任链构建的详细过程。
(1)核心可信度量根CRTM(Core Root of Trusted for Measurement,CRTM))通常位于BISO中,是系统启动后执行的第一段代码。它执行最初的可信度量,引导TPM开始工作,验证BISO完整性,验证通过后,将控制权交给BISO;
(2)BISO启动后度量系统硬件、ROM及主引导记录MBR的完整性并记录及扩展度量值。之后装入MBR,随后把控制权交给MBR,MBR再度量OS装载器(Operating System Loader操作系统装载器)的完整性,把控制权交给OS;
(3)OS Loader度量操作系统的完整性,并记录及扩展度量值,将控制权交给操作系统;
(4)操作系统度量VMM的完整性,并记录及扩展度量值,将控制权交给VMM;
(5)虚拟机监视器VMM度量vTPM(vTPM,virtual Trusted Platform Module虚拟可信根)实例的完整性,并记录及扩展度量值,将控制权交给vTPM;
(6)vTPM度量VM的完整性,并记录及扩展度量值,将控制权交给VM;
(7)VM度量应用程序的完整性,并记录及扩展度量值,将控制权交给应用程序。
步骤2:证据数据批量取证。
证据数据包含虚拟机和宿主机中的PCR寄存器当前值及信任链度量日志。通过位于VMM中的VMI验证代理在计算节点上按顺序收集每个虚拟机中的证据数据及VM((virtualMachine 虚拟机)身份信息打包在一起。当收集完所有运行虚拟机的证据数据之后,再收集宿主机的度量日志文件和PCR值,实现同一计算节点上所有信任链证据信息的批量采集。
所述步骤2具体为:
步骤2.1:在VMM中为每个虚拟机构建一个真实存在虚拟平台配置寄存器vPCR列表,将列表中的每个字段对应一个vPCR寄存器,并将其与对应的vTPM的vPCR寄存器进行数据同步。同时,将每个虚拟机中的存储度量日志vSML,文件的访问地址记录在VMM中虚拟机对应的数据结构中;
步骤2.2:在虚拟机实例启动时可通过VMI验证代理程序采集并记录每个虚拟机vSML访问地址。当需要收集虚拟机证据信息时,VMI代理程序可以通过之前存储的vSML内存地址采集每个虚拟机的vSML文件;
步骤2.3:位于VMM中的VMI验证代理批量采集计算节点上运行的每个虚拟机的vSML文件和真实vPCR列表,并将每个虚拟机中的vSML文件、真实vPCR列表及VM身份信息打包在一起,再收集宿主机的度量日志文件和PCR值,实现同一计算节点上所有信任链证据信息的批量采集;
步骤3:证据数据安全传输。证据数据传输阶段的主要工作是将证据数据安全地传输给取证中心,并保证传输过程中数据的新鲜性、机密性和完整性。在传输收集到的证据数据之前,VMI验证代理程序会对虚拟机证据数据进行加密后再传输到取证中心。
图3描述了证据数据安全传输的过程,所述步骤3具体为:
3.1:VMI验证代理为每个虚拟机的证据数据创建一个数据结构,数据结构中包括虚拟机的身份信息、虚拟机真实vPCR列表信息以及虚拟机中vSML日志信息;
3.2:每个运行虚拟机的证据数据作为一个数组元素共同组成一个数组;
3.3:VMI验证代理先对数组中每个元素进行哈希运算,生成每个元素完整性度量值,然后按顺序对每个元素的哈希值再次进行迭代哈希,最终得到一个完整性综合参考值HDs;
3.4:位于VMM的VMI验证代理和取证中心的验证服务器之间建立通道并协商会话密钥和随机数Nonce;
3.5:验证代理收集所有正在运行的VM的真实vPCR列表和vSML,并且执行步骤3.3计算出HDs;
3.6:验证代理采集宿主机信任链存储度量日志SML,并使用HDs和Nonce计算生成新的quote参考值,在通过tpm_quote命令收集宿主机PCR当前值;
3.7:使用会话密钥对数据包进行加密,并使用目的节点TPM公钥对会话密钥进行加密,加密后将数据传输到取证中心的验证服务程序。
图2描述了虚拟机证据数据传输之前,对其进行打包的过程:
VMI验证代理会为每一个虚拟机的证据数据创建一个数据结构,数据结构中包括虚拟机的身份信息、虚拟机真实vPCR列表信息及虚拟机中vSML日志信息。所有运行虚拟机的证据数据组成一个数组,为了保证数组元素的完整性,VMI验证代理会计算数组中的每个元素的哈希值,并按顺序对哈希值进行迭代运算,得到整个数组的完整性综合参考值HDs。具体操作如下:(1)建立虚拟机证据数组Dvm[],该数组中的每个元素就是一个VM的证据信息。初始状态时,HDs变量初值为0。(2)依次计算每个数组元素的哈希值,并将哈希值和HDs当前值进行连接生成新的字符串。(3)对连接字符串再进行哈希并将结果更新到HDs变量中(算法中“||”表示字符连接操作)。当对所有元素做完哈希运算后,得到的结果即为最终的HDs值。
图3描述了证据数据安全传输的过程:
(1)在验证服务和验证代理之间建立传输通道并协商会话密钥aik和Nonce值。(2)验证代理收集所有正在运行的VM的真实vPCR列表和vSML,并且综合每个VM证据数据的度量值来计算HDs。(3)验证代理采集宿主机信任链存储度量日志文件SML,并使用HDs和Nonce计算生成新的quote参考值,再通过tpm_quote命令收集宿主机PCR当前值。(4)用会话密钥加密数据包,再用目的节点TPM公钥加密存储会话密钥。(5)将所有数据传输给验证服务程序。
步骤4:证据数据分析和验证。
取证中心的验证服务器收到计算节点的所有证据数据后,开始对数据进行验证分析。验证服务器程序首先检查数据的新鲜度、数据来源的真实性、数据的完整性和机密性,然后检查宿主机信任链及宿主机上信任链中各组件的完整性。
验证服务程序会根据SML、vSML中的日志序列重现PCR、vPCR的扩展过程并将得到计算值与PCR、vPCR的当前值进行比较,以确保信任链未被篡改。之后,将信任链上的每个组件的度量值与基准数据库白名单中对应参考值进行比较以验证组件的完整性。只有每个组件的度量值和参考值都匹配,验证对象(主机或虚拟机)才会被认为是可信的。
当取证中心收到所有的证据数据后,验证服务程序开始对数据进行检查分析。图4描述了证据数据验证分析的过程,验证服务程序首先检查数据的新鲜度、数据来源的真实性、数据的完整性和机密性,然后检查宿主机信任链及宿主机上信任链中各组件的完整性。验证服务程序会根据SML中的日志序列重现PCR的扩展过程并将得到的计算值与PCR的当前值进行比较,以确保信任链未被篡改。具体过程为:
步骤4.1:取证中心的验证服务程序首先检查数据的新鲜度、数据来源的真实性、数据的完整性和机密性;
步骤4.2:根据SML文件重现PCR扩展过程,之后比较计算结果与采集的PCR寄存器的当前值,若两者一致,则表明SML日志未被篡改,否则该SML日志已经被破坏;
步骤4.3:在验证SML日志完整性的基础上,将组件的度量值与基准数据库白名单中的参考值进行对比以验证各组件的完整性状态。若两者匹配,则组件通过验证;否则,组件程序已被更改,需要进一步检查组件是否进行了升级或是否已被攻击破坏;
步骤4.4:根据vSML文件重现vPCR扩展过程,之后比较计算结果与采集的vPCR寄存器的当前值,若两者一致,则表明vSML日志未被篡改,否则该vSML日志已经被破坏;
步骤4.5:在验证vSML日志完整性的基础上,将组件的度量值与基准数据库白名单中的参考值进行对比以验证各组件的完整性状态。若两者匹配,则组件通过验证;否则,组件程序已被更改,需要进一步检查组件是否进行了升级或是否已被攻击破坏。
最终,验证结果会实时展示在云管理平台中,取证人员可以实时查询其负责的虚拟机或计算节点的验证结果。
Claims (5)
1.一种基于可信计算的批量云取证方法,其特征在于,包括以下步骤:
步骤1:构建可信的证据数据生成环境
证据生成环境在启动过程中,从硬件可信平台模块出发,在宿主机启动时度量操作系统,将信任链从硬件可信平台模块传递至操作系统,保证宿主机操作系统的可信;通过操作系统度量虚拟机监视器VMM,将信任范围扩展至VMM;然后由VMM度量虚拟机,将信任范围扩展至虚拟机,保证虚拟机基础环境中核心组件的安全以及虚拟机初始启动环境的安全可信;
步骤2:证据数据批量取证
通过位于VMM中的VMI验证代理在计算节点上按顺序收集每个虚拟机中的证据数据及虚拟机身份信息打包在一起;当收集完所有运行虚拟机的证据数据之后,再收集宿主机的度量日志文件和PCR值,实现同一计算节点上所有信任链证据信息的批量采集;
步骤3:证据数据安全传输
将所有运行虚拟机的证据数据组成一个数组,VMI验证代理程序对该数据进行加密,并传输到取证中心;
步骤4:证据数据分析和验证
取证中心的验证服务器收到计算节点的所有证据数据后,开始对数据进行验证分析;验证服务器程序首先检查数据的新鲜度、数据来源的真实性、数据的完整性和机密性,然后检查宿主机信任链及宿主机上信任链中各组件的完整性。
2.根据权利要求1所述的基于可信计算的批量云取证方法,其特征在于,所述步骤1具体包括:
步骤1.1:核心可信度量根执行最初的可信度量,引导可信平台模块开始工作,验证基本输入输出系统完整性,将控制权交给基本输入输出系统;
步骤1.2:基本输入输出系统初始化:基本输入输出系统启动后度量系统硬件、ROM及主引导记录的完整性并记录及扩展度量值;之后装入主引导记录,随后把控制权交给主引导记录,主引导记录再度量OS装载器的完整性,把控制权交给OS装载器;
步骤1.3:OS装载器度量操作系统的完整性,并记录及扩展度量值,将控制权交给操作系统;
步骤1.4:操作系统度量VMM的完整性,并记录及扩展度量值,将控制权交给VMM;
步骤1.5:虚拟机监视器VMM度量虚拟可信根实例的完整性,并记录及扩展度量值,将控制权交给虚拟可信根;
步骤1.6:虚拟可信根度量虚拟机的完整性,并记录及扩展度量值,将控制权交给虚拟机;
步骤1.7:虚拟机度量应用程序的完整性,并记录及扩展度量值,将控制权交给应用程序。
3.根据权利要求1所述的基于可信计算的批量云取证方法,其特征在于,所述步骤2具体包括:
步骤2.1:在VMM中为每个虚拟机构建一个真实存在的vPCR列表,将列表中的每个字段对应一个vPCR,并将其与对应的虚拟可信根的vPCR进行数据同步;同时,将每个虚拟机中的存储度量日志文件的访问地址记录在VMM中虚拟机对应的数据结构中;
步骤2.2:在虚拟机实例启动时通过VMI验证代理程序采集并记录每个虚拟机vSML访问地址;当需要收集虚拟机证据信息时,VMI代理程序通过之前存储的vSML内存地址采集每个虚拟机的vSML文件;
步骤2.3:位于VMM中的VMI验证代理批量采集计算节点上运行的每个虚拟机的vSML文件和真实vPCR列表,并将每个虚拟机中的vSML文件、真实vPCR列表及虚拟机身份信息打包在一起,再收集宿主机的度量日志文件和PCR值,实现同一计算节点上所有信任链证据信息的批量采集。
4.根据权利要求1所述的基于可信计算的批量云取证方法,其特征在于,所述步骤3具体包括:
步骤3.1:建立虚拟机证据数组Dvm[],该数组中的每个元素就是一个虚拟机的证据信息,包括虚拟机的身份信息、虚拟机真实vPCR列表信息以及虚拟机中存储度量日志信息;
步骤3.2:VMI验证代理先对数组中每个元素进行哈希运算,生成每个元素完整性度量值,然后按顺序对每个元素的哈希值再次进行迭代哈希,最终得到虚拟机证据完整性综合参考值HDs;
步骤3.3:位于VMM的VMI验证代理和取证中心的验证服务器之间建立通道并协商会话密钥和随机数Nonce;
步骤3.4:验证代理收集所有正在运行的虚拟机的真实vPCR列表和vSML,并且执行步骤3.2计算出HDs;
步骤3.5:验证代理采集宿主机信任链存储度量日志,并使用HDs和Nonce计算生成新的quote参考值,在通过tpm_quote命令收集宿主机PCR当前值;
步骤3.6:使用会话密钥对数据包进行加密,并使用目的节点可信平台模块公钥对会话密钥进行加密,加密后将数据传输到取证中心的验证服务程序。
5.根据权利要求1所述的基于可信计算的批量云取证方法,其特征在于,所述步骤4中检查宿主机信任链及宿主机上信任链中各组件的完整性具体包括:
步骤4.1:根据SML文件重现PCR扩展过程,比较计算结果与采集的当前PCR值,若两者一致,则表明SML未被篡改,否则该SML已经被破坏;
步骤4.2:在验证SML完整性的基础上,将组件的度量值与基准数据库白名单中的参考值进行对比以验证各组件的完整性状态;若两者匹配,则组件通过验证;否则,组件程序已被更改,需要进一步检查组件是否进行了升级或是否已被攻击破坏;
步骤4.3:根据vSML文件重现vPCR扩展过程,之后比较计算结果与采集的vPCR的当前值,若两者一致,则表明vSML未被篡改,否则该vSML日志已经被破坏;
步骤4.4:在验证vSML完整性的基础上,将组件的度量值与基准数据库白名单中的参考值进行对比以验证各组件的完整性状态;若两者匹配,则组件通过验证;否则,组件程序已被更改,需要进一步检查组件是否进行了升级或是否已被攻击破坏。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111319357.2A CN114035896B (zh) | 2021-11-09 | 2021-11-09 | 一种基于可信计算的批量云取证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111319357.2A CN114035896B (zh) | 2021-11-09 | 2021-11-09 | 一种基于可信计算的批量云取证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114035896A true CN114035896A (zh) | 2022-02-11 |
CN114035896B CN114035896B (zh) | 2023-03-31 |
Family
ID=80143663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111319357.2A Active CN114035896B (zh) | 2021-11-09 | 2021-11-09 | 一种基于可信计算的批量云取证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114035896B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115001766A (zh) * | 2022-05-24 | 2022-09-02 | 四川大学 | 一种高效的多节点批量远程证明方法 |
CN116305092A (zh) * | 2023-05-23 | 2023-06-23 | 山东可信云信息技术研究院 | 一种可信的虚拟化系统的实现方法及系统 |
CN117742898A (zh) * | 2024-02-20 | 2024-03-22 | 南湖实验室 | 一种新型机密计算应用层度量方法及其系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100115625A1 (en) * | 2008-10-31 | 2010-05-06 | Graeme John Proudler | Policy enforcement in trusted platforms |
CN103795717A (zh) * | 2014-01-23 | 2014-05-14 | 中国科学院计算技术研究所 | 一种云计算平台完整性证明方法及其系统 |
CN104021063A (zh) * | 2014-05-14 | 2014-09-03 | 南京大学 | 一种基于硬件虚拟化的模块化计算机取证系统及其方法 |
CN104392185A (zh) * | 2014-12-01 | 2015-03-04 | 公安部第三研究所 | 在云环境日志取证中实现数据完整性验证的方法 |
CN105095768A (zh) * | 2015-08-20 | 2015-11-25 | 浪潮电子信息产业股份有限公司 | 一种基于虚拟化的可信服务器信任链的构建方法 |
EP3217310A1 (en) * | 2016-03-09 | 2017-09-13 | Huawei Technologies Co., Ltd. | Hypervisor-based attestation of virtual environments |
CN108804203A (zh) * | 2018-06-15 | 2018-11-13 | 四川大学 | 基于标签的vTPM私密信息保护方法 |
CN113157386A (zh) * | 2021-03-03 | 2021-07-23 | 中国科学院信息工程研究所 | 一种从物理机到虚拟机的信任链构建方法及系统 |
-
2021
- 2021-11-09 CN CN202111319357.2A patent/CN114035896B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100115625A1 (en) * | 2008-10-31 | 2010-05-06 | Graeme John Proudler | Policy enforcement in trusted platforms |
CN103795717A (zh) * | 2014-01-23 | 2014-05-14 | 中国科学院计算技术研究所 | 一种云计算平台完整性证明方法及其系统 |
CN104021063A (zh) * | 2014-05-14 | 2014-09-03 | 南京大学 | 一种基于硬件虚拟化的模块化计算机取证系统及其方法 |
CN104392185A (zh) * | 2014-12-01 | 2015-03-04 | 公安部第三研究所 | 在云环境日志取证中实现数据完整性验证的方法 |
CN105095768A (zh) * | 2015-08-20 | 2015-11-25 | 浪潮电子信息产业股份有限公司 | 一种基于虚拟化的可信服务器信任链的构建方法 |
EP3217310A1 (en) * | 2016-03-09 | 2017-09-13 | Huawei Technologies Co., Ltd. | Hypervisor-based attestation of virtual environments |
CN108804203A (zh) * | 2018-06-15 | 2018-11-13 | 四川大学 | 基于标签的vTPM私密信息保护方法 |
CN113157386A (zh) * | 2021-03-03 | 2021-07-23 | 中国科学院信息工程研究所 | 一种从物理机到虚拟机的信任链构建方法及系统 |
Non-Patent Citations (7)
Title |
---|
ZHILOU YU等: "A Trusted Architecture for virtual Machine on cloud Servers with Trusted Platform Module and Certificate Authority" * |
亢超群等: "新一代配电主站主动防御架构设计方法" * |
刘婷婷;赵勇;: "提供可信IaaS服务的云计算平台构建" * |
李保珲;徐克付;张鹏;郭莉;胡;方滨兴;: "虚拟机自省技术研究与应用进展" * |
胡波;刘坤颖;刘志勇;李敏;: "云计算环境下的数字取证完整性研究" * |
陈兴蜀;蒋超;王伟;金鑫;兰晓;: "针对虚拟可信平台模块的国密算法扩展技术研究" * |
高元照: "云计算取证模型及其关键技术研究" * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115001766A (zh) * | 2022-05-24 | 2022-09-02 | 四川大学 | 一种高效的多节点批量远程证明方法 |
CN116305092A (zh) * | 2023-05-23 | 2023-06-23 | 山东可信云信息技术研究院 | 一种可信的虚拟化系统的实现方法及系统 |
CN117742898A (zh) * | 2024-02-20 | 2024-03-22 | 南湖实验室 | 一种新型机密计算应用层度量方法及其系统 |
CN117742898B (zh) * | 2024-02-20 | 2024-05-31 | 南湖实验室 | 一种新型机密计算应用层度量方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114035896B (zh) | 2023-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114035896B (zh) | 一种基于可信计算的批量云取证方法 | |
EP3458999B1 (en) | Self-contained cryptographic boot policy validation | |
US8127146B2 (en) | Transparent trust validation of an unknown platform | |
US9405912B2 (en) | Hardware rooted attestation | |
WO2022073264A1 (en) | Systems and methods for secure and fast machine learning inference in trusted execution environment | |
CN104991526A (zh) | 工业控制系统安全支撑框架及其数据安全传输和存储方法 | |
CN101344903A (zh) | 基于tpm的多实例动态远程证明方法 | |
CN110770729A (zh) | 用于证明虚拟机完整性的方法和设备 | |
Chen et al. | {MAGE}: Mutual attestation for a group of enclaves without trusted third parties | |
CN115580413B (zh) | 一种零信任的多方数据融合计算方法和装置 | |
Aslam et al. | FoNAC-an automated fog node audit and certification scheme | |
CN113986470B (zh) | 一种用户无感知的虚拟机批量远程证明方法 | |
CN111585995A (zh) | 安全风控信息传输、处理方法、装置、计算机设备及存储介质 | |
EP3720042B1 (en) | Method and device for determining trust state of tpm, and storage medium | |
Shirey et al. | Analysis of implementations to secure git for use as an encrypted distributed version control system | |
CN111414640A (zh) | 秘钥访问控制方法和装置 | |
Berbecaru et al. | Counteracting software integrity attacks on IoT devices with remote attestation: a prototype | |
CN113726733A (zh) | 一种基于可信执行环境的加密智能合约隐私保护方法 | |
Fotiadis et al. | Root-of-trust abstractions for symbolic analysis: Application to attestation protocols | |
CN110990111B (zh) | 一种云环境下虚拟可信根的校验方法和系统 | |
CN111400771A (zh) | 目标分区的校验方法及装置、存储介质、计算机设备 | |
CN115834149A (zh) | 一种基于国密算法的数控系统安全防护方法及装置 | |
WO2018233638A1 (zh) | Ai软件系统安全状态的确定方法及装置 | |
Niemi et al. | Platform attestation in consumer devices | |
Huang et al. | An effective approach for remote attestation in trusted computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240108 Address after: 215163 Building 1, 58 Kunlunshan Road, high tech Zone, Suzhou City, Jiangsu Province Patentee after: CHINA MOBILE (SUZHOU) SOFTWARE TECHNOLOGY Co.,Ltd. Patentee after: SICHUAN University Address before: 610065, No. 24, south section of first ring road, Chengdu, Sichuan, Wuhou District Patentee before: SICHUAN University |
|
TR01 | Transfer of patent right |