[音乐]
[音乐]
同学们好,今天我们讲 连续保护机制的第四种,可信恢复机制
什么是可信恢复机制呢? 我们先来看一下它的,在TCSEC给出的相关的 要求。
可信恢复呢要求计算机系统 的可信计算基来提供相关的过程和机制
以保证计算机信息系统在失效或者中断的时候 可以进行不损害任何安全保护性能的恢复
同时呢,可信恢复应该在确定不减弱安全保护的情况下
启动TCB,并且在TCB安全功能运行中断后
能够在不减弱安全的情况下恢复运行 下面我们具体来看一下可信恢复的要求在这个
TCSEC和CC的标准里面它的具体给出的一些要求是什么
我们知道在TCSEC的标准里面,其实对很多的安全功能都有一些明确的要求
那么对于可信恢复这个机制,其实是在TCSEC的 B3级以上的系统,就是B3或者是A1这样的系统里面
才有相关的可信恢复的这样一个要求 那么这个可信恢复的要求就是刚才我们所提到的
就是希望TCB能够提供相关的 过程和机制来保证这个系统在失效或者中断以后
可以进行不损害任何安全保护性能的这样一个 恢复。
同样地,在我国的国标17859 的第五级,也就是访问验证保护级它的这个
安全要求里面也同样提出了这样的一个可信恢复的要求 此外呢,在这个CC的标准,就是
前面我们提到的CC标准当中 对这个可信恢复呢也明确地给出了相关的要求
大家知道在CC里面其实是有安全功能和安全保证要求 的,在安全功能里面的这个保护类里面,在FPT这个类里头
那么专门有一个可信恢复的族 在这个族里面又定义了四个层次的 这样的功能要求。
那么我们先看第一个,就是 这个要求呢是叫手动恢复
那么什么是手动恢复呢?就是它要求这个 系统允许TCB只提供
人工的这样一种手段来将系统恢复到这个安全状态
那么为此呢,在TCB发生失败或者是服务中断的时候
那么系统应该提供相关的这个机制或者方式来 让管理员,或者说我们的这样的
系统的维护人员能够通过手工的方式将这个系统的TCB
恢复到,或者返回到一个受保护的这样一个状态 那么第二种呢是叫自动恢复
那么前面的这个第一种手动恢复呢,主要是通过人工的干预来达到这样一个
恢复到安全状态的这样一个方式 那么自动恢复呢就至少要有一种类型的这样的服务中断
可以使系统正确地,就是通过这样自动化的过程
让这个TCB返回到这个安全状态 那么当然了,对其他的一些这个
服务中断,就是说它要求至少有这样 一种过程是可以通过自动化的方式来回到安全状态的
那么对于其他类型的,那么可能还是由手动来恢复实现
那么第三种类型就是对于 自动化恢复过程当中可能要特别注意的就是
要保证一些关键的,就是在指定或者限定范围内的一些
客体不受损害的情况下,或者不会出现这样过分丢失的情况下 做这种恢复。
所以这一部分叫无过分丢失的自动恢复 它主要在进行这个自动恢复时
不允许被保护的客体有过分的丢失 也就是说在实现我们前面提到的这个自动恢复的时候
应该确保在这个可信安全功能里面,其中的数据或者是客体
不会超过,就是说系统所限制的这样的一个丢失的情况 第四个呢叫功能恢复
那么这个功能恢复呢主要是要求这个TSF应该能够确保这个TCB
的安全功能,或者说被成功地完成,或者是对指定的情况
恢复到一致的和安全的状态。
也就说第四种情况是强调 在执行这个恢复的过程当中,你要么就成功地
完成,要么呢,你必须在一个指定的情况下
就是说因为系统可能有多个这样的阶段,那么你必须恢复到其中的某一个阶段,那么这个阶- 段它具有
这个安全的状态的一致性。
这是关于 前面提到的是TCSEC和CC标准对于可信恢复的基本要求
那么下面我们来通过一些系统当中可信恢复的机制
给大家展示一下可信恢复在实际的系统当中都有一些什么样的实现方法
我们先看一下这个Linux系统的恢复机制
那么Linux系统里面提供了两种机制,一种机制呢叫一致性的检查工具
一种呢叫紧急的修复模式。
我们先说一下在这个一致性的检查工具
那么Linux系统提供了这样一个工具,这个工具呢是在,可以对文件系统在启动的时候
进行这个自动化的这样一个检测和恢复
通常的时候,它用的这个外部程序叫e2
fsck,那么这个程序呢是在系统出现崩溃的时候呢,它会自动地激活
另外呢,在文件系统,比如说你预装了多次 那么出现次数超过限制的时候,它也会被激活
此外呢,就是在,比如说系统起来,在运行的时间之后还没有起来的情况下 它也会被激活。
第二种呢是紧急的 修复模式。
这个紧急修复模式呢是指系统由于软硬件失效 或者是这个有一些错误配置的等等原因,没有
办法正常去工作的时候,可能会让系统 进入这样一个紧急修复的模式。
那么对系统出现的问题进行修复 然后恢复它的一些重要的一些数据,就是安全相关的一些数据
那么要让系统进入这种紧急修复模式其实是非常简单的
通常是,比如说用一个引导光盘,或者引导软盘
当然现在主要是优盘或者是光盘,那么启动之后呢,在系统里面输入这个Linux rescue
这个命令就可以来完成这样一个紧急修复的操作 这是Linux系统的这个可信恢复的机制。
那么我们再来 看一下这个有一个安全操作系统,叫XTS-300 它的恢复机制。
那么这个系统呢是美国安全局NSA 那么通过评估达到B3级的一个安全系统
那么在这个安全系统里面,它是提供了相关的可信恢复机制的
我们来看看,在XTS-300当中,它提供了两种可信的命令
可以在系统失效以后进行,对系统进行 相关的安全的恢复,恢复到一个安全状态
那么这两个命令呢,一个是check,一个是fscheck
我们先看一下这个check,这个check 其实这个程序主要是被操作员用来检查
并且修复一个内核级别的文件系统,也就是说它主要是修复这个blocker
这个文件系统这一部分,就是我们所说的存储区域 它要求对存储区域进行标记,并且呢
要判定所有已经分配的区域是不是互斥的
那么这里面所说的这个区域呢,主要是已经使用过的这个数据块
空闲的这个块有多少,还有这个出现缺陷的块,就block有多少
那么这个程序主要是要在相应块上打上相关的标记 那么执行这个check命令呢
其实是不需要有任何的特权的,也就是说如果这个系统出现了故障
那么事实上用户是可以去直接 去执行这样一个check的命令,对系统进行相关的恢复的
我们再来看一下fscheck这个命令 fscheck这个命令呢主要是用来检测这个
我们的这个层次化的文件系统和进行检测和修复这样一个层次化的文件系统
因此呢,在这个命令检测的时候,它可以去检测这个文件系统当中所有的链接
是否都是有效的,所有的字段是不是都已经被记录了 那每一个字段呢,是否被关联上了一个
每一个字段上正好都有一个文件系统和对象 并且呢,所有的字段都要有正确的这个
size 或者是大小 这个 fscheck
命令呢,它是要删除系统里面所有不存在的这样的 一些文件的一些记录,入口项,也要
删除任何一些不存在的这样的一些父目录的项上的一些链接 以及所有没有,没有引用的一些项
那么这些东西,比如说没有引用的这些项呢,都放在这个 lost+found
的这个目录下面 事实上就是像类似于我们在系统里面,比如说我们删除掉,但是没有完全从垃圾桶清除的-
这个文件 其实就放在这个 lost+found。
其实你可以回去 可以找到这个数据,但是它在,在我们的 block
这个磁盘上事实上还是存在的,只是没有 相关的文件名跟它对应。
类似的一些工作它都要做一些清理,这就是 fscheck
那么这是我们举的两个例子,一个是 Linux 的恢复机制,一个是关于这个
美国安全局它的一个安全系统 XTS-300
的一个系统提供的这个恢复机制 那么这两个恢复机制呢,主要都是针对这个文件系统
或者说我们对这个文件系统里的某些块,或者是整个层次化的文件进行恢复的 一种方法。
那么另外呢我们对于系统的恢复其实在
系统里面有,就是怎么样对系统进行恢复,那么事实上也有三种通用的类型 我们来看一下,操作系统在失效的时候,通常
我们要去做响应呢,其实可以分为三种常规的类型 比如说我们要做恢复的话。
第一种呢,就是系统重新引导 那么这个是当一个
TCB 失效 导致系统必须以受控的方式关闭的时,关闭后,那么去执行这个系统的重启
这个是什么情况呢?比如说当 TCB 突然发现这个系统里面有一个很重要的一张表突然被耗尽了
那么这个事件呢是非常致命的一个事件。
所以它认为 这种事件不应该发生。
所以它在这种情况下会主动地 去关闭所有的对象,中止所有的用户进程
然后在没有任何用户程序的情况下来 让这个系统重启。
当然在重启 在系统真正重启之前,他要想办法把系统
尽量恢复到这个一致性,就是让它相关的一些数据恢复到
完整性之后,然后重新起来这个系统 这是我们所说的这个系统的重启的引导,主要是因为有了一个致命的一个
事件发生,那么出现了不一致的情况,它会去 让系统重新地进行一个启动
第二种情况,我们看一下这个紧急系统 重启,那么紧急系统重启呢是在
TCB 或者是这个 相关的一些介质失效的时候,会使系统以一种非受控的方式
也会失效,那么来执行这样一个系统重启 比如说这种情况下呢,TCB 和这个,TCB
或者是某个介质在失效发生的时候,它处于活跃状态的某个进程 就会出现这个被强制中止
那么刚才我们说的前面那个例子呢,事实上是会把所有的用户进程都会强制中止
那么现在呢是由于某一个进程它的问题,所以它会对这个进程进行强制中止
然后使系统呢,自动地去执行这样一个恢复操作 那么这个恢复操作就会让系统
对这个状态进行重新的一致性的检查和恢复之后,对系统产生一个重启的这样一个过程
那么第三种呢,是关于这个系统的冷启动 那么系统的冷启动呢,是指发生一些非预期的
TCB 失效,或者是介质失效的时候 而且这个恢复机制也没有办法让系统返回到这个一致性的这个状态
那么在这种情况下,就必须通过这个管理员来 人工地进行冷启动,冷启动。
那么这是 第三种情况。
OK,这就是我们关于这个可信恢复的
介绍,那么我们简单小结一下,就是关于可信恢复这一节,我们主要介绍了一下可信计算的定义
然后我们说了一下这个在我们的标准里面,那么这里列的是 CC
标准对可信恢复 采取的四个方法 另外呢我们还介绍了一下在系统恢复的时候,我们所
可以取,采,就是可以采取的三种类型的这种恢复方案。
谢谢!