首页 / 专利库 / 保护装置和系统 / 安全完整性等级 / 一种可进行完整性检测的计算机系统和方法

一种可进行完整性检测的计算机系统和方法

阅读:953发布:2020-11-08

专利汇可以提供一种可进行完整性检测的计算机系统和方法专利检索,专利查询,专利分析的服务。并且一种可进行完整性检测的 计算机系统 和方法,包括运行模式单元,其包括一个完整性检测启动控制量,通过判断该运行模式单元,决定是否启动完整性检测启动模式;EFI完整性检测单元(5),对EFI镜像代码进行完整性检测;EFI完整性检测单元(5)包括EFI完整性度量值,在生成的EFI完整性计算值后,根据度量值与计算值相比较,确定EFI镜像代码的完整性。还包括 操作系统 完整性检测单元(6)及完整性管理单元。其基于EFI BIOS,在计算机底层 固件 运行阶段对操作系统的完整性进行检测,具有更好的可靠性及安全性。,下面是一种可进行完整性检测的计算机系统和方法专利的具体信息内容。

1.一种可进行完整性检测的计算机系统,包括可扩展固件接口存储单元 (1),其特征在于,还包括:
运行模式单元,其包括一个完整性检测启动控制量,所述运行模式单元 用于:在可扩展固件接口之前初始化阶段中央处理器芯片组主板的基本 初始化完成后,通过判断该运行模式单元的所述完整性检测启动控制量,决 定是否启动完整性检测启动模式;
所述可扩展固件接口存储单元包括:
可扩展固件接口完整性检测单元(5),其包括可扩展固件接口完整性度量 值,所述可扩展固件接口完整性检测单元(5)用于:在完整性检测启动模式中, 对可扩展固件接口镜像代码进行完整性检测,生成可扩展固件接口完整性计 算值后,根据度量值与计算值相比较,确定可扩展固件接口镜像代码的完整 性。
2.根据权利要求1所述的计算机系统,其特征在于,运行模式单元存储 在硬件单元中。
3.根据权利要求1所述的计算机系统,其特征在于,所述可扩展固件接 口存储单元中具有恢复单元(2),且恢复单元(2)为只读代码单元。
4.根据权利要求1所述的计算机系统,其特征在于,还包括有可扩展固 件接口镜像代码恢复单元(8),用于当可扩展固件接口完整性检测单元(5) 对可扩展固件接口镜像代码进行完整性检测,确定可扩展固件接口镜像代码 为不完整时,调用所述单元(8)中的可扩展固件接口镜像恢复代码,恢复可 扩展固件接口镜像代码。
5.根据权利要求4所述的计算机系统,其特征在于,还包括操作系统完 整性检测单元(6),用于在启动操作系统之前强制执行操作系统完整性检测;
所述操作系统完整性检测单元(6)包括可信文件检测单元,用于调用操作 系统完整性检测方法,执行对每个可信文件进行完整性检测,比较判断每个 可信文件代码是否被篡改,依次针对每个文件生成可信文件计算值,对操作 系统文件完整性进行检测;
所述计算机系统还包括可信文件度量值(12),用于操作系统完整性检测 单元(6)对每个可信文件进行完整性检测,比较判断每个可信文件代码是否 被篡改,依次针对每个文件生成可信文件计算值后,根据度量值与计算值相 比较,确定单个可信文件的完整性,进而确定操作系统所有可信文件的完整 性。
6.根据权利要求5所述的计算机系统,其特征在于,所述操作系统完整 性检测单元(6)还包括磁盘参数数据检测单元,用于读取磁盘参数数据,检测 其磁盘参数数据是否完整,再调用可信文件检测单元进行单个可信文件完整 性检测。
所述计算机系统还包括磁盘参数度量值(10),用于操作系统完整性检测 单元(6)对操作系统文件所存储的磁盘进行磁盘参数完整性检测,生成磁盘 参数完整性计算值后,所述度量值与计算值相比较,确定该操作系统存储磁 盘参数的完整性。
7.根据权利要求6所述的计算机系统,其特征在于,还包括磁盘参数数 据恢复单元(7),用于当磁盘参数数据检测单元检测磁盘参数为不完整时,调 用该单元中的磁盘参数数据,强制恢复磁盘数据。
8.根据权利要求6所述的计算机系统,其特征在于,所述还包括可信文 件列表(11),用于在磁盘参数数据检测完成后,查找对比操作系统可信文件 名,检测所有可信文件是否存在,保证操作系统可信文件的完整性,然后调 用可信文件检测单元进行单个可信文件完整性检测。
9.根据权利要求8所述的计算机系统,其特征在于,还包括操作系统可 信文件恢复单元(9),当操作系统完整性检测单元(6)对操作系统可信文件通过 可信文件列表(11)或者可信文件度量值(12)比较,进行完整性检测后, 确定操作系统可信文件不完整或者被篡改时,调用预先保存的操作系统可信 恢复文件,强制恢复该可信文件,恢复完整的操作系统环境。
10.根据权利要求9所述的计算机系统,其特征在于,所述可信文件度 量值(12),磁盘参数度量值(10),可信文件列表(11),可扩展固件接口镜 像代码恢复单元(8),磁盘参数数据恢复单元(7)和操作系统可信恢复文件单元 (9),存储在可扩展固件接口安全存储部件中。
11.根据权利要求10所述的计算机系统,其特征在于,所述可扩展固件 接口安全存储部件为本地安全存储部件,或者外置安全存储部件。
12.根据权利要求11所述的计算机系统,其特征在于,所述的外置安全 存储部件为远程安全存储部件时,所述操作系统可信恢复文件单元(9)存储在 远程安全存储部件中;
所述计算机系统还包括简单网络驱动单元,简单传输控制协议套接字驱 动单元,用于在确定操作系统文件不完整时,调用简单网络驱动单元,简单 传输控制协议套接字驱动单元通过网络连接到远程安全存储部件,将存储在 远程安全存储部件中的操作系统可信恢复文件下载到本地恢复操作系统文 件。
13.根据权利要求5所述的计算机系统,其特征在于,还包括完整性管 理单元,用于设置可扩展固件接口启动时,是否需要执行完整性检测启动模 式,并可以允许用户根据系统运行的需要定制操作系统涉及的操作系统可信 相关文件,重新生成磁盘参数度量值(10),可信文件列表(11),可信文件 度量值(12)。
14.根据权利要求13所述的计算机系统,其特征在于,所述完整性管理 单元包括:
安全等级设置单元:用于设置所述计算机系统的启动模式;
完整性预置单元:用于定制操作系统可信文件,重新生成磁盘参数度量 值(10),可信文件列表(11),可信文件度量值(12)及操作系统可信文件, 当系统再次进行完整性检测时,依照新的比较基准进行操作系统完整性检测;
可扩展固件接口完整性预置单元:在用户选择可扩展固件接口完整性预 置管理时,运行可扩展固件接口完整性预置单元,生成新的可扩展固件接口 完整性度量值。
15.一种计算机系统完整性检测的方法,其特征在于,包括可扩展固件 接口完整性检测,即包括下列步骤:
步骤A:在系统上电运行至可扩展固件接口之前初始化阶段,中央处理 器、芯片组、主板的基本初始化完成后,由运行模式单元决定是否开启完整 性检测启动模式,是则执行步骤B,否则直接按照通常的启动模式开启计算 机系统;
步骤B:当以完整性检测启动模式启动可扩展固件接口基本输入输出系 统时,由可扩展固件接口完整性检测单元(5)计算出可扩展固件接口完整性计 算值;
步骤C:由所述可扩展固件接口完整性检测单元(5)比较判断当前可扩展 固件接口完整性度量值和计算值是否相等,如果相等,则说明可扩展固件接 口镜像代码是完整的,执行可扩展固件接口基本输入输出系统启动后续过程; 如果不相等,说明可扩展固件接口镜像代码不完整,执行后续过程。
16.根据权利要求15所述的计算机系统完整性检测方法,其特征在于, 所述可扩展固件接口完整性检测还包括如下步骤:
步骤D:当可扩展固件接口镜像代码不完整时,用户选择是否调用可扩 展固件接口镜像文件恢复单元(8)中的可扩展固件接口镜像恢复代码进行恢 复,如果是,则进行可扩展固件接口镜像代码恢复,完成可扩展固件接口完 整性检测,执行可扩展固件接口基本输入输出系统后续过程;否则停止运行。
17.根据权利要求15或16所述的计算机系统完整性检测方法,其特征 在于,还包括操作系统完整性检测,即还包括下列步骤:
步骤E:可扩展固件接口完整性检测完成后,运行驱动执行环境阶段的 流程,驱动执行环境调度操作系统完整性检测单元(6)加载入内存;
步骤F:进入启动设备选择阶段,如果运行模式单元为完整性检测设置, 则调用步骤E所述的操作系统完整性检测单元(6);
步骤G:操作系统完整性检测单元(6)中的可信文件检测单元调用操作系 统完整性检测方法,执行对每个可信文件进行完整性检测,比较判断每个可 信文件代码是否被篡改,依次针对每个文件生成可信文件计算值,对操作系 统文件完整性进行检测;
步骤H:根据可信文件度量值(12)与计算值相比较,确定单个可信文 件的完整性,进而确定操作系统所有可信文件的完整性。
18.根据权利要求17所述的计算机系统完整性检测方法,其特征在于, 所述操作系统完整性检测还包括下列步骤:
步骤I:当操作系统可信文件被篡改时,提示用户可以进行操作系统可信 文件恢复,如果用户选择不进行恢复,则停止加载操作系统,如果用户选择 进行恢复后,进行下一步;
步骤J:检测操作系统的文件与相应的操作系统可信文件是否相一致,如 果都相一致,加载并运行操作系统;否则,进入下一步;
步骤K:提示用户是否进行恢复,如果用户选择不进行恢复,则停止加 载操作系统,则如果用户选择恢复,则相应操作系统可信文件都被复制覆盖 相应的文件,加载并运行操作系统。
19.根据权利要求18所述的完整性检测方法,其特征在于,所述步骤G 包括如下步骤:
步骤G1:操作系统完整性检测单元(6)首先调用磁盘参数数据检测单 元,读取磁盘参数主启动记录,活动分区,分区表信息,通过散列算法计算 主启动记录,活动分区,分区表信息的计算值,并与磁盘参数度量值(10) 进行比较,检测磁盘参数是否完整,然后才调用操作系统完整性检测单元(6) 中的可信文件检测单元对单个可信文件进行完整性检测。
20.根据权利要求19所述的计算机系统完整性检测方法,其特征在于, 所述步骤G1包括如下步骤:
步骤G11:当磁盘参数数据检测单元检测磁盘参数为不完整时,调用磁 盘参数恢复单元(7)中的磁盘参数数据,强制恢复磁盘数据。
21.根据权利要求20所述的计算机系统完整性检测方法,其特征在于, 所述步骤G还包括下列步骤:
步骤G2:在磁盘参数数据检测完成后,进行操作系统可信文件列表(11) 检测,查找对比操作系统可信文件名,检测所有可信文件是否都存在,保证 操作系统可信文件的完整性,然后才调用可信文件检测单元进行单个可信文 件完整性检测。
22.根据权利要求21所述的计算机系统完整性检测方法,其特征在于, 所述步骤G2还包括下列步骤:
步骤G21:当操作系统可信文件列表(11)检测到操作系统可信文件不 存在时,强制调用操作系统可信文件恢复单元(9),恢复该操作系统可信文件。
23.根据权利要求17所述的计算机系统完整性检测方法,其特征在于, 所述操作系统完整性检测还包括下列步骤:
步骤I:当操作系统文件不完整时,提示用户可以进行操作系统可信文件 恢复,如果用户选择不进行恢复,则停止加载操作系统,如果用户选择进行 恢复后,调用简单网络驱动单元,简单传输控制协议套接字驱动单元连接到 远程网络;
步骤J:检测本地操作系统的文件与远程服务器上相应的操作系统可信文 件是否相一致,如果都相一致,关闭底层网络连接,加载并运行操作系统; 否则,进入下一步;
步骤K:提示用户是否进行恢复,如果用户选择不进行恢复,则停止加 载操作系统,则如果用户选择恢复,则远程服务器上的相应操作系统可信文 件被复制并传送到本地,覆盖相应的文件,然后关闭底层网络连接,加载并 运行操作系统。
24.根据权利要求23所述的完整性检测方法,其特征在于,所述步骤G 包括如下步骤:
步骤G1:操作系统完整性检测单元(6)首先调用磁盘参数数据检测单 元,读取磁盘参数主启动记录,活动分区,分区表信息,通过散列算法计算 主启动记录,活动分区,分区表信息的计算值,并与磁盘参数度量值(10) 进行比较,检测磁盘参数是否完整,然后才调用操作系统完整性检测单元(6) 中的可信文件检测单元对单个可信文件进行完整性检测。
25.根据权利要求24所述的计算机系统完整性检测方法,其特征在于, 所述步骤G1包括如下步骤:
步骤G11:当磁盘参数数据检测单元检测磁盘参数为不完整时,调用该 单元中的磁盘参数数据,强制恢复磁盘数据。
26.根据权利要求25所述的计算机系统完整性检测方法,其特征在于, 所述步骤G还包括下列步骤:
步骤G2:在磁盘参数数据检测完成后,进行操作系统可信文件列表(11) 检测,查找对比操作系统可信文件名,检测所有可信文件是否都存在,保证 操作系统可信文件的完整性,然后才调用可信文件检测单元(6)进行单个可信 文件完整性检测。
27.根据权利要求26所述的计算机系统完整性检测方法,其特征在于, 所述步骤G2还包括下列步骤:
步骤G21:当操作系统可信文件列表检测到操作系统可信文件不存在时, 提示用户可以进行操作系统可信文件恢复,如果用户选择不进行恢复,则停 止加载操作系统,如果用户选择进行恢复后,调用简单网络驱动单元,简单 传输控制协议套接字驱动单元连接到远程网络;
步骤G22:检测本地操作系统的文件与远程服务器上相应的操作系统可 信文件是否相一致,如果都相一致,关闭底层网络连接,返回重新进行操作 系统可信文件列表(11)检查;否则,进入下一步;
步骤G23:提示用户是否进行恢复,如果用户选择不进行恢复,则停止 加载操作系统,则如果用户选择恢复,则远程服务器上的相应操作系统可信 文件被复制并传送到本地,覆盖相应的文件,然后关闭底层网络连接,返回 重新进行操作系统可信文件列表(11)检查。
28.根据权利要求17所述的计算机系统完整性检测方法,其特征在于, 还包括完整性管理配置,其包括如下步骤:
步骤L:在用户通过了操作系统完整性检测之后,选择是否进入操作系 统完整性管理单元;
步骤M:如果用户不选择进入操作系统完整性管理单元,则直接启动操 作系统;当用户选择进入操作系统完整性管理单元时,显示操作系统完整性 管理界面,用户对操作系统完整性进行管理配置。
29.根据权利要求28所述的计算机系统完整性检测方法,其特征在于, 所述步骤M包括下列步骤:
步骤M1:当用户选择安全等级管理时,运行安全等级设置单元,设置目 前的计算机系统安全等级;
步骤M2:在用户选择操作系统完整性文件预置管理时,运行操作系统完 整性文件预置单元,用户定制操作系统可信文件;
步骤M3:在用户选择可扩展固件接口代码完整性预置管理时,运行可扩 展固件接口完整性预置单元,生成新的可扩展固件接口完整性度量值。
30.根据权利要求29所述的操作系统完整性检测方法,其特征在于,所 述步骤M2包括下列步骤:
步骤M21:运行操作系统完整性文件预置单元,提示并由用户选择增加 或者减少操作系统可信文件;
步骤M22:根据用户选择的操作系统可信文件,生成生成磁盘参数度量 值(10),可信文件列表(11),可信文件度量值(12)及其涉及的操作系统 可信文件;
步骤M23:将生成生成磁盘参数度量值(10),可信文件列表(11),可 信文件度量值(12)及其涉及的操作系统可信文件存储到可扩展固件接口安 全存储部件;
步骤M24:返回操作系统完整性管理单元。

说明书全文

技术领域

发明涉及计算机系统领域,特别是涉及一种在操作系统启动前对系统 进行完整性检测的计算机系统和方法。

背景技术

目前计算机网络技术已经广泛影响到个人和企业的各个方面,对计算机 安全性的需求也进一步提高,人们期望系统从一开始启动时,就可以保证运 行在可靠的操作系统(operation system,OS)环境中。能够保证从一个安 全干净的系统启动,是之后进行病毒防范及防止病毒入侵的基础,如果当前 运行操作系统已经是被病毒感染了的不可靠运行环境,则之后的任何安全防 范措施都将失效。因此,需要实现一种在操作系统启动之前即对操作系统进 行完整性检测的计算系统和方法,保证启动的操作系统环境为安全的,可信 任的运行环境,是一直以来人们追求的目标。
一般地,对操作系统进行完整性检测在该操作系统运行之前的外部系统 进行操作,因此,目前对上述问题的解决方式通常采取以下方法:
利用双模式操作系统切换的方法对操作系统进行完整性检测:该计算机 系统安装两个操作系统,即在主操作系统之外,再安装一个附加的小操作系 统,在计算机底层固件运行(Pre-boot)阶段,选择进入该附加的小操作系 统,在其中进行主操作系统的完整性检测,检测完毕后,设置标志位并重新 启动系统,根据标志位的设置自动进入主操作系统并运行。
该方法的缺陷是:
缺陷1:用户需要不断地切换计算机模式,使用极不方便,同时附加一 个小操作系统,即使经过裁减,仍然需要占有较多的系统存储空间,增加了 计算机的存储空间成本。
缺陷2:选择在“附加操作系统”中进行主操作性的完整性检测,实际 上并不满足安全信任链的严密性,在附加小操作系统中进行主系统操作系统 完整性检测完毕后,必须重新启动(Reboot)系统,造成安全信任链事实上 是断裂的,且针对该“附加操作系统”的安全攻击同时也会存在,没有其他 策略保证附加操作系统的可靠性。
缺陷3:在该方案的控制流程中,必须设置标志位,区别程序需要进入 “附加操作系统”,还是检测完毕后需要进入主操作系统,这为方案设计增加 了成本和复杂性。而且设置标志位也存在安全漏洞,非法用户可以通过模拟 标志位跳过操作系统完整性检测。同时,检测完毕需要重新启动系统,用户 体验有待提高。
由此可见,只有在计算机底层固件运行阶段,即Pre-boot阶段完成操作 系统完整性及可靠性检测的工作,才可以有效保证安全信任链的一致性和连 贯性,满足人们使用计算机的安全性需求。同时,检测完毕可以直接启动操 作系统,无需重启(Reset)过程,免去操作系统启动标志位的设计,并可以 获得较好的用户体验。但是,在传统计算机底层固件(即BIOS层面)上实 现以上功能非常复杂,这时因为传统BIOS的功能有限,特别对文件系统的 访问接口不足,难于实现对复杂操作系统文件的数据分析,因此,在传统BIOS 上实现以上功能较为困难,影响了其技术的进一步发展。。

发明内容

本发明的目的在于提供一种可进行完整性检测的计算机系统和方法,其 基于EFI BIOS,在计算机底层固件运行阶段对操作系统的完整性进行检测。
为实现上述目的而提供的一种可进行完整性检测的计算机系统,包括EFI 存储单元,还包括运行模式单元,其包括一个完整性检测启动控制量,所述 运行模式单元用于:在PEI阶段CPU、芯片组主板的基本初始化完成后, 通过判断该运行模式单元的所述完整性检测启动控制量,决定是否启动完整 性检测启动模式;
所述EFI存储单元包括EFI完整性检测单元,其包括EFI完整性度量值, 所述EFI完整性检测单元(5)用于:在完整性检测启动模式中,对EFI镜像代 码进行完整性检测,生成EFI完整性计算值后,根据度量值与计算值相比较, 确定EFI镜像代码的完整性。
运行模式单元可以存储在硬件单元中。
所述EFI存储单元中的FV_RECOVERY单元可以是只读代码单元。
所述计算机系统还包括有EFI镜像代码恢复单元,用于当EFI完整性检 测单元对EFI镜像代码进行完整性检测,确定EFI镜像代码为不完整时,调 用所述单元中的EFI镜像恢复代码,恢复EFI镜像代码。
所述的计算机系统还包括操作系统完整性检测单元,用于在启动操作系 统之前强制执行操作系统完整性检测;
所述操作系统完整性检测单元包括可信文件检测单元,用于调用操作系 统完整性检测方法,执行对每个可信文件进行完整性检测,比较判断每个可 信文件代码是否被篡改,依次针对每个文件生成可信文件计算值,对操作系 统文件完整性进行检测;
所述计算机系统还包括可信文件度量值,用于操作系统完整性检测单元 对每个可信文件进行完整性检测,比较判断每个可信文件代码是否被篡改, 依次针对每个文件生成可信文件计算值后,根据可信文件度量值与计算值相 比较,确定单个可信文件的完整性,进而确定操作系统所有可信文件的完整 性。
所述操作系统完整性检测单元还包括磁盘参数数据检测单元,用于读取 磁盘参数数据,检测其磁盘参数数据是否完整,再调用可信文件检测单元进 行单个可信文件完整性检测。
所述计算机系统还包括磁盘参数度量值,用于操作系统完整性检测单元 对操作系统文件所存储的磁盘进行磁盘参数完整性检测,生成磁盘参数完整 性计算值后,所述度量值与计算值相比较,确定该操作系统存储磁盘的完整 性。
计算机系统还包括磁盘参数数据恢复单元,用于当磁盘参数数据检测单 元检测磁盘参数为不完整时,调用该单元中的磁盘参数数据,强制恢复磁盘 数据。
所述计算机系统还包括可信文件列表,用于在磁盘参数数据检测完成后, 查找对比操作系统可信文件名,检测所有可信文件是否都存在,保证操作系 统可信文件的完整性,然后调用可信文件检测单元进行单个可信文件完整性 检测。
计算机系统还包括操作系统可信文件恢复单元,当操作系统完整性检测 单元对操作系统可信文件通过可信文件列表或者可信文件度量值比较,进行 完整性检测后,确定操作系统可信文件不完整或者被篡改时,调用预先保存 的操作系统可信恢复文件,强制恢复该可信文件,恢复完整的操作系统环境。
可信文件度量值,磁盘参数度量值,可信文件列表,EFI镜像代码恢复 单元,磁盘参数数据恢复单元和操作系统可信恢复文件单元,存储在EFI安 全存储部件中,所述EFI安全存储部件为本地安全存储部件,或者外置安全 存储部件,所述的外置安全存储部件为远程安全存储部件时,所述操作系统 可信恢复文件存储在远程安全存储部件中;
所述计算机系统还包括简单网络驱动单元,简单TCP Socket驱动单元, 用于在确定操作系统文件不完整时,调用简单网络驱动单元,简单TCP Socket 驱动单元通过网络连接到远程安全存储部件,将存储在远程安全存储部件中 的操作系统可信恢复文件下载到本地恢复操作系统文件。
计算机系统还包括完整性管理单元,用于设置EFI启动时,是否需要执 行完整性检测启动模式,并可以允许用户根据系统运行的需要定制操作系统 涉及的操作系统可信相关文件,重新生成磁盘参数度量值,可信文件列表, 可信文件度量值。
所述完整性管理单元包括:
安全等级设置单元:用于设置所述计算机系统的启动模式;
完整性预置单元:用于定制操作系统可信文件,重新生成磁盘参数度量 值,可信文件列表,可信文件度量值及操作系统可信文件,当系统再次进行 完整性检测时,依照新的比较基准进行操作系统完整性检测;
EFI完整性预置单元:在用户选择EFI完整性预置管理时,运行EFI完 整性预置单元,生成新的EFI完整性度量值。
本发明还提供一种计算机系统完整性检测的方法,包括EFI完整性检测, 即包括下列步骤:
步骤A:在系统上电运行至PEI阶段,CPU、芯片组、主板的基本初始 化完成后,由运行模式单元决定是否开启完整性检测启动模式,是则执行步 骤B,否则直接按照通常的启动模式开启计算机系统;
步骤B:当以完整性检测启动模式启动EFI BIOS时,由EFI完整性检 测单元计算出EFI完整性计算值;
步骤C:由所述EFI完整性检测单元比较判断当前EFI完整性度量值和 计算值是否相等,如果相等,则说明EFI镜像代码是完整的,执行EFI BIOS 启动后续过程;如果不相等,说明EFI镜像代码不完整,执行后续过程;
步骤D:当EFI镜像代码不完整时,用户选择是否调用EFI镜像文件恢 复单元中的EFI镜像文件恢复代码进行恢复,如果是,则进行EFI镜像代码 恢复,完成EFI完整性检测,执行EFI后续过程;否则停止运行。
所述的计算机系统完整性检测方法,还包括操作系统完整性检测,即还 包括下列步骤:
步骤E:EFI完整性检测完成后,运行DXE阶段的流程,DXE调度操作 系统完整性检测单元加载入内存;
步骤F:进入BDS阶段,如果运行模式单元为完整性检测设置,则调用 步骤E所述的操作系统完整性检测单元;
步骤G:操作系统完整性检测单元中的可信文件检测单元调用操作系统 完整性检测方法,执行对每个可信文件进行完整性检测,比较判断每个可信 文件代码是否被篡改,依次针对每个文件生成可信文件计算值,对操作系统 文件完整性进行检测;
步骤H:根据可信文件度量值与计算值相比较,确定单个可信文件的完 整性,进而确定操作系统所有可信文件的完整性。
所述操作系统完整性检测还可以包括下列步骤:
步骤I:当操作系统可信文件被篡改时,提示用户可以进行操作系统可信 文件恢复,如果用户选择不进行恢复,则停止加载操作系统,如果用户选择 进行恢复后,进行下一步;
步骤J:检测本地操作系统的文件与相应的操作系统可信文件是否相一 致,如果都相一致,加载并运行操作系统;否则,进入下一步;
步骤K:提示用户是否进行恢复,如果用户选择不进行恢复,则停止加 载操作系统,则如果用户选择恢复,则相应操作系统可信文件被复制覆盖相 应的文件,加载并运行操作系统。
所述步骤G可以包括如下步骤:
步骤G1:操作系统完整性检测单元首先调用磁盘参数数据检测单元,读 取磁盘参数MBR,活动分区,分区表信息,通过散列算法计算MBR,活动 分区,分区表信息的计算值,并与磁盘参数度量值进行比较,检测磁盘参数 是否完整,然后才调用操作系统完整性检测单元中的可信文件检测单元对单 个可信文件进行完整性检测。
所述步骤G1可以包括如下步骤:
步骤G11:当磁盘参数数据检测单元检测磁盘参数为不完整时,调用磁 盘参数数据恢复单元中的磁盘参数数据,强制恢复磁盘数据。
所述步骤G还可以包括下列步骤:
步骤G2:在磁盘参数数据检测完成后,进行操作系统可信文件列表检测, 查找对比操作系统可信文件名,检测所有可信文件是否都存在,保证操作系 统可信文件的完整性,然后才调用可信文件检测单元进行单个可信文件完整 性检测。
所述步骤G2还可以包括下列步骤:
步骤G21:当操作系统可信文件列表检测到操作系统可信文件不存在时, 强制调用操作系统可信文件恢复单元,恢复该操作系统可信文件。
另外,所述操作系统完整性检测还也可以包括下列步骤:
步骤I:当操作系统文件不完整时,提示用户可以进行操作系统可信文件 恢复,如果用户选择不进行恢复,则停止加载操作系统,如果用户选择进行 恢复后,调用简单网络驱动单元,简单TCP Socket驱动单元连接到远程网络;
步骤J:检测操作系统的文件与相应的操作系统可信文件是否相一致,如 果都相一致,关闭底层网络连接,加载并运行操作系统;否则,进入下一步;
步骤K:提示用户是否进行恢复,如果用户选择不进行恢复,则停止加 载操作系统,则如果用户选择恢复,则远程服务器上的相应操作系统可信文 件被复制并传送到本地,覆盖相应的文件,然后关闭底层网络连接,加载并 运行操作系统。
所述步骤G可以包括如下步骤:
步骤G1:操作系统完整性检测单元首先调用磁盘参数数据检测单元,读 取磁盘参数MBR,活动分区,分区表信息,通过散列算法计算MBR,活动 分区,分区表信息的计算值,并与磁盘参数度量值进行比较,检测磁盘参数 是否完整,然后才调用操作系统完整性检测单元中的可信文件检测单元对单 个可信文件进行完整性检测。
所述步骤G1可以包括如下步骤:
步骤G11:当磁盘参数数据检测单元检测磁盘参数为不完整时,调用该 单元中的磁盘参数数据,强制恢复磁盘数据。
所述步骤G还可以包括下列步骤:
步骤G2:在磁盘参数数据检测完成后,进行操作系统可信文件列表检测, 查找对比操作系统可信文件名,检测所有可信文件是否都存在,保证操作系 统可信文件的完整性,然后才调用可信文件检测单元进行单个可信文件完整 性检测。
所述步骤G2还可以包括下列步骤:
步骤G21:当操作系统可信文件列表检测到操作系统可信文件不存在时, 提示用户可以进行操作系统可信文件恢复,如果用户选择不进行恢复,则停 止加载操作系统,如果用户选择进行恢复后,调用简单网络驱动单元,简单 TCP Socket驱动单元连接到远程网络;
步骤G22:检测本地操作系统的文件与远程服务器上相应的操作系统可 信文件是否相一致,如果都相一致,关闭底层网络连接,返回重新进行操作 系统可信文件列表检查;否则,进入下一步;
步骤G23:提示用户是否进行恢复,如果用户选择不进行恢复,则停止 加载操作系统,则如果用户选择恢复,则远程服务器上的相应操作系统可信 文件被复制并传送到本地,覆盖相应的文件,然后关闭底层网络连接,返回 重新进行操作系统可信文件列表检查。
所述的计算机系统完整性检测方法,还包括完整性管理配置,其包括如 下步骤:
步骤L:在用户通过了操作系统完整性检测之后,选择是否进入操作系 统完整性管理单元;
步骤M:如果用户不选择进入操作系统完整性管理单元,则直接启动操 作系统;当用户选择进入操作系统完整性管理单元时,显示操作系统完整性 管理界面,用户对操作系统完整性进行管理配置;
所述步骤M包括下列步骤:
步骤M1:当用户选择安全等级管理时,运行安全等级设置单元,设置目 前的计算机系统安全等级;
步骤M2:在用户选择操作系统完整性文件预置管理时,运行操作系统完 整性文件预置单元,用户定制操作系统可信文件。
步骤M3:在用户选择EFI代码完整性预置管理时,运行EFI完整性预置 单元,生成新的EFI完整性度量值。
述步骤M2包括下列步骤:
步骤M21)运行操作系统完整性文件预置单元,提示并由用户选择增加 或者减少操作系统可信文件;
步骤M22)根据用户选择的操作系统可信文件,生成生成磁盘参数度量 值,可信文件列表,可信文件度量值及其涉及的操作系统可信文件;
步骤M23)将生成生成磁盘参数度量值,可信文件列表,可信文件度量 值及其涉及的操作系统可信文件存储到安全存储部件;
步骤M24)返回操作系统完整性管理单元。
本发明的有益效果是:本发明实现了一种在EFI BIOS的计算机底层固件 运行(Pre-boot)阶段进行操作系统完整性检测的系统及方法。它有效的解决 了操作系统启动之前的EFI BIOS层面的操作系统完整性的认证问题,有效保 证安全信任链的一致性和严密性,满足人们使用计算机的安全性需求。有效 突破了在传统BIOS上进行操作系统完整性检测的局限性,解决以前方法的 各种存在缺陷。本发明系统和方法支持功能强大,比较传统BIOS的实现系 统和方法相对简单实用、灵活性更强、支持功能更强大、适用性更强等优点。
附图说明
图1是本发明存储布局示意图;
图2是本发明EFI工作流程图
图3是本发明EFI镜像文件完整性检测流程图;
图4是本发明操作系统完整性检测流程图;
图5是本发明的完整性管理界面示意图;
图6是本发明实施例完整性检测启动过程示意图。

具体实施方式

下面结合附图1-6进一步详细说明本发明,本实施例描述了一个在EFI 环境下,使用本发明的技术方案完成完整性检测的计算机系统,以及配合该 计算机系统完整性检测的实现步骤。
首先,为详细描述本发明,下面先说明EFI技术:
本发明将涉及可扩展固件接口(EFI)技术,可扩展固件接口(Extensible Firmware Interface,EFI)是1999年出现的用以取代沿用多年的基本输入输 出系统(BIOS)的新一代接口程序,关于可扩展固件接口的介绍,详见UEFI 论坛关于EFI技术的介绍http://www.UEFI.org。EFI介于硬件设备以及操作系 统(比如Windows或者Linux)之间。与传统的BIOS不同,EFI使用全球最 广泛的高级语言C语言进行编写,其提供了既具有传统BIOS的功能又有优 于传统BIOS的扩展功能,在设计机制和架构上也有别于传统BIOS的实现, 是下一代BIOS接口规范,这就意味着有更多的工程师可以参与EFI的开发 工作,添加许多更有价值的功能。
EFI具备的基本功能为:
硬件平台初始化;
支持启动操作系统;
脱离操作系统的平台管理工具。
EFI的工作模式可以简单归纳为:启动系统,标准固件平台初始化,接 着从加载EFI驱动程序库以及及执行相关程序,在EFI系统启动菜单中选取 所要进入的系统并向EFI提交启动引导代码,正常的话将进入系统,否则将 中止启动服务并返回EFI系统启动菜单。工程师们可以按照不同的需要为EFI 增加新的功能,诸如更加详细实用的诊断功能、自我配置程序、列出系统可 能发生的故障等等。
如图1-6所示,本发明的一种可进行完整性检测的计算机系统,是在EFI BIOS上实现的,其包括硬件和软件,硬件包括主板,中央处理器(CPU), 内存,硬盘及外设。
主板和CPU分别为支持EFI规范的主板和CPU。
如图1、6所示,本发明的计算机系统的EFI存储单元1(EFI Flash ROM Layout)包括FV_RECOVERY单元2、FV_NVRAM单元3、FV_MAIN单元 4。
BIOS ROM存储单元1是主板上用来存储BIOS的存储器,这种存储单 元类型可以采用多种多样的芯片,如ROM、EPROM、EEPROM、FLASH ROM 等。
FV_RECOVERY单元2、FV_NVRAM单元3、FV_MAIN单元4是在EFI 存储单元1中按存储地址划分的具有不同功能的代码段或者代码卷。
1)FV_RECOVERY单元2存储EFI的SEC和PEI阶段的运行代码单元
SEC(Security)阶段:其用于在计算机系统上电(Power On)开始启动, PEI阶段(PEI foundation)开始之前,检查处理器执行头几行的代码是否可 以执行,同时,它将初始化很小一临时内存块供PEI阶段的运行代码单元 执行使用;
PEI(Pre-EFI Initialization)阶段:其用于调用处理器、芯片组、主板初 始化配置例程,进行系统的初步初始化,建立可供DXE阶段运行的最小化的 可运行环境。其中,最小化的可运行环境的功能包括:确定系统的引导路径 (boot path);初始化内存;初始化包含DXE部分代码存储的基本输入输出 的存储文件,以保证DXE文件单元之后的文件可以正确访问。
2)FV_NVRAM单元存放系统变量
EFI需要的一些环境系统变量均可以以变量形式从这个单元读取。
3)FV_MAIN段包括DXE和BDS阶段的运行代码单元
DXE(Driver Execution Environment)阶段:其用于完成系统平台初始化 的主要工作,负责全面初始化CPU、芯片组及系统平台,并提供给启动操作 系统足够服务,保证操作系统在其后的阶段可以运行。在该文件单元中,系 统将加载大量的EFI驱动支持完成上述功能。
BDS(Boot Device Selection)阶段:其用于选择操作系统启动设备,为 启动操作系统做好准备。
如图6所示,本发明是一个基于架构(framework)的EFI计算机系统, 整个EFI的运行流程从冷启动(Code boot)开始,经历几个主要阶段:SEC 阶段;PEI阶段;DXE阶段;BDS阶段。其后是EFI的一些附加阶段,它包 含了操作系统的启动和运行过程中,EFI与操作系统交互和配合过程:TSL (Transient System Load)阶段允许在系统尚未被操作系统完全接管的情况 下,操作系统装载过程(Os loader)中可以调用的EFI服务;RT(runtime)阶 段提供与操作系统并行运行服务(Runtime服务),以支持操作系统的需求;AL (Afterlife)阶段意味着当操作系统结束执行时,重新进入EFI,继续接管理 运行。
本发明的计算机系统是在通常的启动模式(BootMode)中,增加一种启 动模式(BootMode),为完整性检测启动模式(BOOT_IN_OS_INTEGRITY), 在该计算机系统中,包括:
运行模式单元:包括一个完整性检测启动控制量,该控制量控制是否启 动完整性检测启动模式。
运行模式单元可以存储在硬件单元中,例如:设置一个硬件开关,该开 关一端接地,另一端联结在计算机主板的I/O控制模块上,该硬件开关与I/O 控制模块之间的接口可以是:GPIO,串口,并口或USB口,但并不限于此。 从该硬件开关所在的I/O地址读取开关的“开”或“关”的状态,决定计算 机启动方式是否为完整性启动模式。
所述PEI阶段的运行代码单元包括:
EFI完整性检测单元5,用于在CPU(CPU INIT),芯片组(Chipset INIT), 主板(Board INIT)完成初步的初始化后,运行EFI完整性检测单元5,检测 EFI镜像代码完整性。
EFI完整性检测单元5包括EFI完整性度量值,用于在EFI完整性检测 单元5对EFI镜像代码进行完整性检测,生成的EFI完整性计算值后,根据 度量值与计算值相比较,确定EFI镜像代码的完整性。
EFI完整性检测单元5存储在FV_RECOVERY单元中。
较佳地,所述计算机系统EFI存储单元1中的FV_RECOVERY单元2 为只读(ROM)单元。
在系统上电,运行SEC阶段进入PEI阶段,CPU(CPU INIT),芯片组 (Chipset INIT),主板(Board INIT)完成初步的初始化后,根据运行模式单 元,判断其启动模式是否为完整性检测启动模式,如果是则开启完整性检测 启动模式,否则按照正常的启动模式开启计算机系统。
如果启动的是完整性检测启动模式,则运行EFI完整性检测单元5,对 EFI镜像代码进行完整性检测,生成的EFI完整性计算值,根据度量值与计 算值相比较,确定EFI镜像代码的完整性。
在本发明的计算机系统中,还包括有EFI镜像代码(Image)恢复单元8, 当EFI完整性检测单元5对EFI镜像代码进行完整性检测以后,生成的EFI 完整性计算值,根据度量值与计算值相比较,确定EFI镜像代码为不完整时, 调用上述恢复单元中的EFI代码,恢复EFI镜像(Image)代码。
在本发明的EFI计算机系统中,还包括操作系统完整性检测:
在完整性检测启动模式中,在EFI完整性检测单元5完成对EFI完整性 检测后,进入DXE(Driver execution environment)、BDS(Boot Device Selection) 阶段时,通过操作系统完整性检测单元6(module)检测操作系统完整性, 然后再启动操作系统。
操作系统完整性检测单元6,用于在启动操作系统之前执行操作系统完 整性检测,其包括磁盘参数数据检测单元,用于读取磁盘参数数据,如磁盘 主启动记录(Master Boot Record,MBR),活动分区,分区表等,并检测 这些磁盘参数是否完整,如通过散列算法(HASH算法)计算MBR,活动分 区、分区表的计算值,与磁盘参数度量值进行比较,检测其磁盘参数数据是 否完整。
所述的磁盘参数度量值10是预先设定在计算机系统中的,用于该单元检 测磁盘参数后的计算值相比较,并判断磁盘参数是否完整。
本实施例中的计算机系统还包括操作系统可信文件列表11,用于查找对 比操作系统可信文件名,检测所有的操作系统可信文件是否都存在。
操作系统可信文件是保持操作系统完整性的一系列不可被篡改的多个文 件。当发现其中某个文件被篡改或不完整时,可以从预先存储的位置上调出 保存的正确文件(操作系统可信恢复文件),然后进行恢复。
操作系统完整性检测单元6还包括可信文件检测单元,用于调用操作系 统完整性检测方法,执行对每个可信文件进行完整性检测,比较判断每个可 信文件代码是否被篡改,依次针对每个文件生成可信文件计算值,完成度量 值的比较,用于对操作系统文件完整性进行检测。
操作系统完整性检测方法可以是计算操作系统文件代码完整性的各种方 法,本实施例中为散列算法(HASH算法),如果确定操作系统n个核心文 件为操作系统的可信文件,当这n个文件(操作系统可信文件)中有一个发 生改变,就意味着操作系统不再完整,散列算法为每一个文件计算出一个 (hash)值,每个文件记录一个Hash值,逐个进行比较,这n个文件任何一 个Hash值发生改变,都意味着操作系统完整性被破坏。
所述的操作系统完整性检测方法是可以替换的,其方法可以很复杂,也 可以很简单,因此此处不限定其实际的实施方法。
所述计算机系统还包括可信文件度量值,用于操作系统完整性检测单元 对每个可信文件进行完整性检测,比较判断每个可信文件代码是否被篡改, 依次针对每个文件生成可信文件计算值后,根据度量值与计算值相比较,确 定单个可信文件的完整性,进而确定操作系统所有可信文件的完整性。
如图6所示,系统在启动操作系统之前执行操作系统完整性检测,即EFI 完整性检测以后,DXE阶段,执行引导服务(Boot Services)、运行服务(Runtime Service),进入DXE调度(DXE Dispatcher),在这一期间,将加载设备 (Devices)、总线(Bus)或者串口设备驱动(Serial driver),包括操作系统 完整性检测驱动,进入BDS阶段后,如果启动模式为操作系统完整性检测模 式,则将调用操作系统完整性检测单元6,执行操作系统完整性检测。
操作系统完整性检测单元6首先调用磁盘参数数据检测单元,读取磁盘 参数MBR,活动分区,分区表信息,通过散列算法计算MBR,活动分区, 分区表信息的计算值,并与磁盘参数度量值10进行比较,检测磁盘参数是否 完整;
然后,进行操作系统可信文件列表11检测,检查可信文件是否均存在;
最后,可信文件检测单元调用操作系统完整性检测方法,执行对每个可 信文件进行完整性检测,比较判断每个可信文件代码是否被篡改,依次针对 每个文件生成可信文件计算值,对操作系统文件完整性进行检测;根据可信 文件度量值12与计算值相比较,确定单个可信文件的完整性,进而确定操作 系统所有可信文件的完整性。
操作系统完整性检测单元中的代码都是以驱动形式存储在EFI代码单元 中的,EFI BIOS在启动过程中,以驱动的形式调用操作系统完整性检测单元。
本发明的完整性检测启动模式中,在DXE,BDS阶段,包含的DXE阶 段运行代码单元包含有:简单网络驱动单元(Simple Network Driver),简单TCP Socket驱动单元(Simple Tcp Socket Driver),这些单元在BDS阶段中被调用 配合支持操作系统完整性检测功能。
在本发明的计算机系统中,还包括:
磁盘参数数据恢复单元7:该单元中的磁盘参数包括但不限于MBR、活 动分区、分区表等,当磁盘参数数据检测单元检测磁盘参数为不完整时,调 用该单元中的磁盘参数数据,强制恢复磁盘数据。
操作系统可信文件恢复单元9:该单元中的操作系统可信文件可以包括 但不限于:操作系统内核文件,关键可信数据文件等。操作系统可信文件的 可根据系统运行的需要以及用户的需要定制。当操作系统完整性检测单元对 操作系统文件完整性进行检测以后,根据度量值与计算值相比较,确定操作 系统文件不完整时,调用所述的操作系统可信文件恢复单元9中的操作系统 可信文件,恢复操作系统文件。
所述的可信文件度量值12,磁盘参数度量值10,可信文件列表11,EFI 镜像代码(Image)恢复单元8,磁盘参数数据恢复单元7以及操作系统可信 文件恢复单元9,可以存储在EFI安全存储部件中。
EFI安全存储部件为本地安全存储部件,或者外置安全存储部件,其可 以是任何通过系统总线、USB、无线网络、有线网络连接的任何安全存储部 件,包括具有安全保护功能的硬盘,如具有HPA(Host Protected Area)的硬 盘,或者是具有访问控制功能的flash存储器,或者是通过USB接口连接地 具有访问控制功能的大容量USB安全存储部件。
较佳地,所述外置安全存储部件为远程安全存储部件,操作系统可信文 件恢复单元9存储在远程安全存储部件中;可信文件度量值12,磁盘参数度 量值10,可信文件列表11,EFI镜像代码(Image)恢复单元8,磁盘参数数 据恢复单元7存储在本地安全存储部件中。在确定操作系统文件不完整时, 调用简单网络驱动单元,简单TCP Socket驱动单元通过网络连接到远程安全 存储部件,下载该单元中的操作系统可信文件到本地恢复操作系统文件。
由于EFI直接支持文件读写功能,所述EFI镜像文件(Image)及操作系 统可信文件等文件均可以以通用文件格式存储在安全存储部件中,利用EFI 文件访问接口进行访问,比较在传统BIOS上实现时需要增加一系列的文件 系统访问接口,其实现方式更为简单易行,扩展性好。
本发明的计算机系统中,还可以包括完整性管理单元,其功能是设置EFI BIOS启动时,是否需要执行完整性检测启动模式,并可以允许用户根据系统 运行的需要定制操作系统涉及的操作系统可信相关文件,重新生成操作系统 完整性度量值。用户可以在该管理单元中实现灵活的完整性检测设置管理功 能。该管理单元包括下列单元:
安全等级设置单元:当用户设置目前的BIOS安全等级为“高安全等级” 时,则在EFI BIOS启动过程中,必须执行完整性检测启动模式,通过EFI 完整性检测和操作系统完整性检测全过程才能加载运行操作系统;如果设置 为低安全等级,则意味着安全级别不高,用户不需要执行完整性检测。
操作系统完整性文件预置单元:用户根据系统运行的需要以及用户的需 要定制其涉及的可信相关文件,用户可以从些单元重新生成生成磁盘参数度 量值10,可信文件列表11,可信文件度量值12,及其涉及的可信相关文件, 当系统再次进行完整性检测时,将依照新生成的比较基准进行操作系统完整 性检测。
EFI完整性预置单元:在用户选择EFI完整性预置管理时,运行EFI完 整性预置单元,生成新的EFI完整性度量值。
较佳地,系统设置只有超级用户才可以进入完整性管理单元,进行涉及 安全等级设置及文件预置功能。
本发明预先在安全存储部件中存储磁盘参数度量值10、可信文件列表 11、可信文件度量值12、磁盘参数数据恢复单元7、EFI镜像恢复代码(Image) 单元8、操作系统可信文件恢复单元9,扩展实现可进行完整性检测的EFI 系统架构,其在EFI BIOS启动过程中,先进行EFI完整性检测,然后进行计 算机底层固件运行阶段的操作系统完整性检测,确认将要启动的操作系统后, 才允许引导并加载该操作系统运行。本发明充分保证了操作系统启动之前的 可靠性检测,不依赖于操作系统,只依赖于EFI BIOS的检测链,保证了操作 系统的安全和可信,从而严格保证了操作系统运行环境的可信任性,满足应 用需求,且实现成本低、应用接口可用性强。
下面结合所述的计算机系统详细描述本发明所述的可进行计算机系统完 整性检测的方法步骤:
如图2-6所示,本发明的计算机系统,是在PEI阶段,CPU、芯片组、 主板的基本初始化以后,进行EFI完整性检测,操作系统完整性检测,并可 以在完整性检测过程中,发现EFI文件(Image)代码或者操作系统文件不完 整时,选择是否进行文件恢复,还可以进行操作系统完整性检测管理配置。
EFI完整性检测包括如下步骤:
步骤A:在系统上电,运行SEC阶段,进入到PEI阶段,CPU初始化(CPU INIT),芯片组初始化(Chipset INIT),主板初始化(Board INIT)完成后, 运行运行模式单元,判断完整性检测启动控制量为真或假,如果为真则开启 完整性检测启动模式,否则直接按照通常的启动模式开启计算机系统;
步骤B:当以完整性检测启动模式启动EFI BIOS时,调用EFI完整性检 测单元5以散列算法(Hash算法)计算出EFI完整性计算值;
步骤C:比较判断当前EFI完整性度量值和计算值是否相等,如果相等, 则说明EFI镜像代码是完整的,执行EFI启动后续过程;如果不相等,说明 EFI镜像代码不完整;
步骤D:当EFI镜像代码不完整时,用户选择是否调用EFI镜像代码恢 复单元9中的EFI镜像文件恢复代码进行恢复,如果是,则进行EFI镜像代 码恢复,完成EFI完整性检测,执行EFI后续过程;否则停止运行。
当EFI完整性检测完成后,系统执行操作系统完整性检测:
步骤E:EFI完整性检测完成后,运行DXE阶段的流程,DXE调度操作 系统完整性检测单元6加载入内存;
步骤F:进入BDS阶段,如果运行模式单元为完整性检测设置,则调用 步骤E所述的操作系统完整性检测单元6;
步骤G:操作系统完整性检测单元6中的可信文件检测单元调用操作系 统完整性检测方法,执行对每个可信文件进行完整性检测,比较判断每个可 信文件代码是否被篡改,依次针对每个文件生成可信文件计算值,对操作系 统文件完整性进行检测;
步骤G还包括下列步骤:
步骤G1:操作系统完整性检测单元6首先调用磁盘参数数据检测单元, 读取磁盘参数MBR,活动分区,分区表信息,通过散列算法计算MBR,活 动分区,分区表信息的计算值,并与磁盘参数度量值10进行比较,检测磁盘 参数是否完整;
步骤G2:在磁盘参数数据检测完成后,进行操作系统可信文件列表11 检测,查找对比操作系统可信文件名,检测所有可信文件是否都存在,保证 操作系统可信文件的完整性,然后才调用可信文件检测单元进行单个可信文 件完整性检测。
步骤G1还包括下列步骤:
步骤G11:当磁盘参数数据检测单元检测磁盘参数为不完整时,调用磁 盘参数数据恢复单元7中的磁盘参数数据,强制恢复磁盘数据。
步骤G2还包括下列步骤:
步骤G21:当操作系统可信文件列表11检测到操作系统可信文件不存在 时,提示用户可以进行操作系统可信文件恢复,如果用户选择不进行恢复, 则停止加载操作系统,如果用户选择进行恢复后,调用简单网络驱动单元, 简单TCP Socket驱动单元连接到远程网络;
步骤G22:检测本地操作系统的文件与远程服务器上相应的操作系统可 信文件是否相一致,如果都相一致,关闭底层网络连接,返回重新进行操作 系统可信文件列表11检查;否则,进入下一步;
步骤G23:提示用户是否进行恢复,如果用户选择不进行恢复,则停止 加载操作系统,则如果用户选择恢复,则远程服务器上的相应操作系统可信 文件被复制并传送到本地,覆盖相应的文件,然后关闭底层网络连接,返回 重新进行操作系统可信文件列表11检查。
步骤H:根据可信文件度量值与计算值相比较,确定单个可信文件的完 整性,进而确定操作系统所有可信文件的完整性;
步骤I:当操作系统文件不完整时,提示用户可以进行操作系统可信文件 恢复,如果用户选择不进行恢复,则停止加载操作系统,如果用户选择进行 恢复后,调用简单网络驱动单元,简单TCP Socket驱动单元连接到远程网络;
步骤J:检测本地操作系统的文件与远程服务器上相应的操作系统可信文 件是否相一致,如果都相一致,关闭底层网络连接,加载并运行操作系统; 否则,进入下一步;
步骤K:提示用户是否进行恢复,如果用户选择不进行恢复,则停止加 载操作系统,则如果用户选择恢复,则远程服务器上的相应操作系统可信文 件被复制并传送到本地,覆盖相应的文件,然后关闭底层网络连接,加载并 运行操作系统。
在用户通过操作系统完整性检测之后,可以进行系统安全配置设置,包 括如下步骤:
步骤L:在用户通过了操作系统完整性检测之后,可以通过按下特定功 能键选择是否进入操作系统完整性管理单元;
步骤M:如果用户不选择进入操作系统完整性管理单元,则直接启动操 作系统;当用户选择进入操作系统完整性管理单元时,显示操作系统完整性 管理界面,用户对操作系统完整性进行管理配置;
步骤M1:当用户选择安全等级管理时,运行安全等级设置单元,在该管 理单元中实现灵活的操作系统完整性管理功能,可以让用户设置目前的计算 机系统安全等级,如果设置为高安全等级,则在EFI BIOS启动过程中,必须 通过完整性检测全过程才能加载并运行操作系统;如果设置为低安全等级, 则不执行操作系统完整性检测。
步骤M2:在用户选择操作系统完整性文件预置管理时,运行操作系统完 整性文件预置单元,允许用户根据系统运行的需要以及用户的需要定制其涉 及的操作系统可信文件:
步骤M21:运行操作系统完整性文件预置单元,提示并由用户选择增加 或者减少操作系统可信文件;
步骤M22:根据用户选择的操作系统可信文件,生成生成磁盘参数度量 值,可信文件列表,可信文件度量值及其涉及的操作系统可信文件;
步骤M23:将生成生成磁盘参数度量值,可信文件列表,可信文件度量 值及其涉及的操作系统可信文件存储到安全存储部件;
步骤M24:返回操作系统完整性管理单元。
步骤M3:在用户选择EFI代码完整性预置管理时,运行EFI完整性预置 单元,生成新的EFI完整性度量值。
本发明实现了一种在EFI BIOS启动的计算机底层固件运行阶段 (Pre-boot阶段)进行完整性检测的计算机系统及方法。它有效的解决了操作 系统启动之前的BIOS层面的完整性认证问题,有效保证安全信任链的一致 性和严密性,完全满足前述的背景技术需求;其在完整性检测完毕可以直接 启动操作系统,无需重启(Reset)过程,免去操作系统启动标志位的设计, 并可以获得较好的用户体验,有效解决以前方法的各种存在缺陷;同时,其 支持功能也很强大,比较传统BIOS的实现方法更为简单,效果更好;而且 支持存储在将操作系统可信文件存储在远程安全存储部件,实现远程网络操 作系统完整性检测恢复,进一步扩充可该方法的使用范围,相比于传统BIOS 具有较大技术优势。进一步地,其提供了友好性更好的图形用户安全管理配 置界面,具有更好的易用性和灵活性:利用EFI图形化基础接口,并配合扩 展实现方法,使用户使用统一的图形界面完成操作系统完整性管理配置功能, 技术方案更加灵活易用。
本实施例是为了更好地理解本发明进行的详细的描述,而并不是对本发 明所保护的范围的限定,因此,本领域普通技术人员不脱离本发明的主旨情 况下,未经创造性劳动而对本明所做的改变,是在本发明的保护范围内的。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈