2022-01-13 · 27

信息安全 — 系统安全(第 1 部分)

securitycertificate

这篇文章发布已超过两年,内容可能已过时。

操作系统的理解与管理

计算机系统

- 由处理数据的物理机械装置——硬件(hardware),与用指示某项工作的指令编写的程序——软件(software)构成

计算机硬件

- 硬件由处理器、内存(存储装置)、外围设备构成,它们通过系统总线连接

处理器 CPU(中央处理器)

- 计算机硬件构成要素中与操作系统最密切的部分,控制计算机所有设备的动作并执行运算

理解 CPU 的构成要素

- 寄存器

○ 按用途分类

    ▶ 专用寄存器

    ▶ 通用寄存器

○ 按用户能否更改信息分类

    ▶ 用户可见寄存器

    ▶ 用户不可见寄存器

○ 按所存信息的种类分类

    ▶ 数据寄存器

    ▶ 地址寄存器

    ▶ 状态寄存器

运算装置(ALU)

- 执行各种算术运算和逻辑运算

控制装置(Control Unit)

- 解释程序代码并产生用于执行它的控制信号

内部 CPU 总线

- 数据流、控制流

什么是专用寄存器?

- 专用寄存器是具有特殊目的的寄存器,有 PC(程序计数器)、状态寄存器、地址寄存器、指令寄存器、累加器等。

以往博客文章)> **[黑客] - [黑客] 专用寄存器**](https://nabomhalang.tistory.com/entry/해킹-전용-레지스터)

[[黑客] 专用寄存器。专用寄存器 Accumulator(累加器 AC)- 临时存储数据的寄存器。从存储装置读来的数据与累加器中已载入的数据执行指定运算后,把结果值再次载 — nabomhalang.tistory.com

什么是通用寄存器?

- 位于计算机中央处理器(CPU)内,存储运算处理、运算结果、返回地址等小数据的寄存器。

以往博客文章)> **[黑客] - [黑客] 寄存器**](https://nabomhalang.tistory.com/entry/해킹-레지스터)

[[黑客] 寄存器。寄存器:CPU 的变量。通用寄存器 8 bit Register:AH, AL 16bit Register:AX 32bit Register:EAX 64bit Register:RAX - 通用寄存器:CPU 使用的一种变量 - EAX 算术计算.. — nabomhalang.tistory.com

系统总线(system bus)

- 把硬件物理连接起来、使它们能相互收发数据的通路

- 把计算机内部的各种信号(数据输入输出信号、处理器状态信号、中断请求与许可信号、时钟(clock)信号等)通过系统总线传递

- 按功能分为数据总线、地址总线、控制总线

CPU 指令执行周期

- 取指周期(fetch cycle)

→ 从内存读取指令存入指令寄存器,并为执行下一条指令而递增程序计数器

→ 取指周期所耗时间称为指令取指时间

- 执行周期(execution cycle)

→ 解码取来的指令,并按结果产生控制信号以执行指令

→ 执行周期消耗的时间称为执行时间

- 间接周期(indirect cycle)

→ 使用间接寻址方法的执行周期,在执行指令前会再读一次实际数据所存主存储器地址即有效地址

- 中断周期(interrupt cycle)

→ 中断是处理器执行程序期间,在计算机系统内部或外部发生的意外事件

→ 处理器完成执行周期后检查是否有中断请求。若无中断请求则取下一条指令;若有中断请求则把当前正在执行程序的地址(程序计数器)值保存到栈或内存 0 地址之类的特定位置。程序计数器中预先存放中断处理例程的起始地址,中断处理完成后返回被中断的程序继续执行

指令执行过程

- 指令取指 → 指令解释、计数器变更 → 操作数取指 → 指令执行 → 保存结果

<取指过程>

1. PC → MAR

2. MAR → MBR

 PC + 1 → PC

3. MBR → IR

< 间接周期过程 >

1. IR -> MAR

2. MAR -> MBR

3. MBR -> IR

中断

- 中止当前正在执行的程序并请求执行另一程序的指令

- 提升系统的处理效率,程序变换执行顺序进行处理,用于多道程序设计

- 由计算机中安装的输入输出设备或程序等发送给处理器的硬件信号,收到中断的程序中止执行并运行另一程序

- 单处理器计算机一次只能执行一条指令,但利用中断可以在中途执行别的程序或指令

- 系统需要它来妥善处理意外的用户输入、突然停电、计算机系统的紧急请求、错误指令的执行、输入输出作业完成之类的情形

- 是暂时中止再恢复程序正常执行的过程,但用户无需另行采取中断措施,由处理器和操作系统处理

- 用作协调外部设备动作与自身动作的手段

- 用于中断目的的控制总线是中断请求线

中断请求线

- 因为仅在键盘发生输入时才通报处理器并处理,处理器无需逐一监视是否发生事件。

- 处理器无需直接检查外部设备的状态,可在这段时间执行其他运算,从而提高处理器效率

- 按中断请求信号执行中断处理程序(中断服务例程)

- 以单线路和多线路连接

- 单线路:把所有可发中断请求的设备用公共的单一线路连接到处理器的方法。因为一条线路连接多个设备,需要判别哪个设备发出中断请求的功能。

- 多线路:把所有设备用各自不同的专用线路与处理器连接的方法。可立即判别发出中断请求的设备。

< 中断周期过程 >

1. PC → MBR

2. 中断例程地址 → PC

  PC 中保存的地址 → MAR

3. MBR → MAR

内存层次结构

- 1950 ~ 1960 年代因主内存价格过于昂贵的问题而提出的方法

- 把内存按层次构成,以在成本、速度、容量、访问时间等方面相互补充

◆ 寄存器

◆ 缓存

◆ 主内存

◆ 辅助存储装置

寄存器

- 位于处理器内部,保管处理器要用数据的最快的内存

主内存

- 位于处理器外部,存储处理器要运行的程序和数据,或存储处理器处理的结果

- 也称主存储器或一级存储器。多使用存储密度高、价格便宜的 DRAM(Dynamic RAM)

- 由多个单元(cell)构成,每个单元由比特构成

- 若单元为 K 比特,则单元可存储 2^k 个值

- 在主内存中存储数据时,分放于一个或多个单元中存储

- 单元以地址引用,若为 n 比特则地址范围为 0~2^(n-1)

- 位于处理器与辅助存储装置之间,起到解决此处发生的磁盘输入输出瓶颈现象的作用

- 为减轻处理器与主内存之间速度差异的负担,有时也在处理器内部或外部实现缓存

内存映射:映像

- 通过编译把逻辑地址转换为物理地址的过程

- 内存速度

- 以内存访问时间和内存周期时间表示

缓存

- 位于处理器内部或外部,弥补处理速度快的处理器与相对慢的主内存之间速度差的高速缓冲

- 缓存的性能取决于小容量缓存中含有多少处理器之后将引用的信息

▶ 缓存命中(cache hit):处理器要引用的信息存在时

▶ 缓存未命中(cache miss):处理器要引用的信息不存在时

- 块的大小取决于缓存的性能,这是因为实际运行程序时,对所引用内存存在空间局部性和时间局部性

▶ 空间局部性:大多数程序会再次引用与所引用地址相邻地址内容的特性

▶ 时间局部性:把引用过一次的地址不久再次引用的特性

- 空间局部性与时间局部性的产生原因

▶ 程序倾向于顺序执行指令,因此指令在特定局部内存中相邻。

▶ 由于循环(单循环、嵌套循环等),即使程序反复,内存也只引用部分区域。

▶ 大多数编译器把数据以数组形式存储在内存相邻的块中。因此程序常顺序访问数组元素,故有局部性数组访问的倾向。

辅助存储装置

- 外围设备中存储程序和数据的硬件

- 也称二级存储器或外部存储器

- 有磁盘、光盘、磁带等

内存管理

- 内存管理的概念

○ 内存管理是为进程分配、移除、保护内存的活动

○ 要运行磁盘上的程序,需先载入内存,之后由内存管理器分配预留的内存

○ 为使多道程序系统中多个进程可常驻内存,操作系统动态地细分内存

- 内存管理策略

○ 载入策略:决定从磁盘往内存搬入进程的时机

    ▶ 请求载入:根据操作系统、系统程序、用户程序等的引用请求,把下一个要执行的进程载入内存的老方法

    ▶ 预测载入:预先预测系统的请求并载入内存的方法

○ 放置策略:决定把从磁盘搬入的进程存放到内存的哪个位置

○ 置换策略:内存不足时,在当前载入内存的进程中决定移除哪个进程的替换方法

- 对内存的两种观点

○ 逻辑观点(逻辑地址空间)

    ▶ 程序员编程时使用的空间

○ 物理观点(物理地址空间)

    ▶ 实际存储数据或程序的空间

- 内存装置的地址转换

○ 通过内存映射(Memory Mapping)把逻辑地址 → 物理地址

○ 在内存管理装置(MMU:Memory Management Unit)这一 H/W 中执行。

○ 转换技法

    ▶ 固定分区

    ▶ 动态分区

    ▶ 分页

    ▶ 分段

    ▶ 分页式分段

- 映射(mapping)[映像]

○ 逻辑地址与物理地址的连接

○ 绑定(binding):进行映射的工作

    ▶ 编译 → 链接 → 动态链接

- 动态载入

○ 尽量推迟绑定、在执行前确定地址的内存高效运行方法

○ 不把所有例程载入内存,而以可替换的形式存于磁盘

○ 只先把主程序载入内存运行

○ 主程序需要其他例程时,检查其是否已载入内存。若未载入,则调用以把该例程载入内存,同时更新程序的地址表

○ 动态载入不把不用的例程载入内存,因而高效使用内存

○ 有时也会发生错误,但在程序整体体量大时更有用

- 重叠(overlay)

○ 要运行的程序比内存大时,可把暂时不需要的程序的一部分设为重叠(overlay)

○ 一种结构:在操作系统区域和内存的一部分区域只存储程序执行必需的指令和数据,其余重叠区域在需要时调用并载入

- 交换(进程置换)

○ 处理器分配结束且执行完成的进程被送往辅助存储装置(swap out),新开始的进程载入内存(swap in)。进程须在内存中才能执行,因此可暂时移到磁盘再返回内存重新执行

- 内存载入方法

○ 连续内存载入方法

    ▶ 固定分区

    ▶ 可变分区

○ 非连续(分散)内存载入方法

    ▶ 分页

    ▶ 分段

虚拟内存的概念

○ 把用户与逻辑地址在物理上分离,使用户能给超过主内存容量的进程指定地址,从而无限制地使用内存

○ 由于不同时运行整个程序,即使只载入所需内存的一部分而非全部也可运行

○ 在主内存保持活动区域,需要时在磁盘与内存之间存储进程代码和数据并自动再传输(swap in、swap out),从而重新分配进程;把存于磁盘的地址空间当作缓存处理,可高效使用主内存

○ 解决主内存有限容量与重叠使用的问题

虚拟内存管理技法

○ Paging 内存管理技法

    ▶ 把逻辑地址分割为称为页的固定块来管理的技法

    ▶ 每个页映射到物理内存的帧

    ▶ 从指向页的逻辑地址转换为指向帧的物理地址

○ Segmentation 内存管理技法

    ▶ 把内存分为段的集合来管理的方式

    ▶ 段由起始地址和指定段大小的长度值构成

○ Paged Segmentation

    ▶ 用页构成段,先参照段表再参照页表。

    ▶ 逻辑地址由段号、页号、偏移量构成

输入输出管理

○ 输入输出系统与输入输出模块的概念

    ▶ 不仅包括显示器、打印机之类的硬件设备,还包括输入输出模块

    ▶ 物理输入输出设备实际执行输入输出,输入输出模块提供在内存、处理器、寄存器等内部存储装置与物理输入输出设备之间传送二进制信息的方法

    ▶ 若输入输出模块代替处理器处理与输入输出相关的复杂工作,则成为输入输出通道或输入输出处理器;若仅担当处理器与输入输出相关的工作,则成为输入输出控制器或设备控制器

输入输出模块的功能

○ 控制内部资源与数据输入输出等各种动作,并提供定时功能

○ 由于输入输出模块处理外部设备的定时、数据格式与机械细节,处理器仅凭打开或关闭文件之类的命令即可控制设备

○ 处理器要向输入输出设备发送命令,须把输入输出设备的标识符指定为地址

○ 指定地址的方法

    ▶ 内存地址空间与输入输出地址空间分别存在的专用输入输出地址方法

    ▶ 把内存地址空间的一部分共享为输入输出地址空间的内存映射地址方法

        ◎ 内存映射地址方法有多种灵活性,如用任意机器指令和地址来指定输入输出设备,并生成中断信号以通报数据传送完成

○ 提供从进程接收命令、识别相关消息的功能

○ 输入输出模块经命令解码 → 数据交换 → 状态报告 → 地址识别的过程识别消息

    ▶ 命令解码:从处理器接收命令并解码。

    ▶ 数据交换:通过数据总线与处理器交换数据。

    ▶ 状态报告:确认低速外围设备的状态并向处理器报告。

    ▶ 地址识别:识别为区分连接到模块的多个设备的地址。

○ 利用缓冲调节传送速度

○ 检测错误

输入输出方法

○ 进程控制输入输出

    ▶ 程序控制输入输出

    ▶ 基于中断的输入输出 

○ DMA 输入输出

○ 输入输出通道

程序控制输入输出方法

○ 把处理器内部的输入输出数据和地址寄存器与输入输出模块相连的形态

○ 可在地址寄存器与总线之间直接传送的最简单形态

○ 输入数据时经输入输出模块一次只把一个字传送到数据寄存器,从输入输出数据寄存器再用程序传送到算术逻辑运算装置

○ 输出数据时从算术逻辑运算装置移动到输入输出数据寄存器,再用程序传送到输入输出模块

基于中断的输入输出方法

○ 输入输出设备完成作业后,把与作业相关的状态和结果保存到内存并产生中断以通知处理器

○ 收到中断的处理器发送输入输出命令,并在输入输出作业期间开始另一命令

○ 一种方法:不由处理器向输入输出设备确认是否需要处理器帮助,而是输入输出设备直接给处理器信号

○ 适用于要求不规则且快速响应时

利用输入输出通道的输入输出

○ 输入输出通道:把处理器和主内存与输入输出设备结合,用处理器的命令控制输入输出的装置

○ 通道子系统可由多个构成,协调处理器与主内存的访问

○ 通道使用周期窃取直接访问内存,各输入输出设备用控制装置与通道连接

○ 控制装置执行与通道通信并控制设备的功能。相似设备只用一个控制装置,故一瞬间只有一个设备被激活

○ 输入输出通道扩展了 DMA 概念、具有可执行输入输出指令的功能,故拥有完全控制输入输出动作的权限

○ 在计算机系统中,即使处理器不执行输入输出指令,也会把输入输出数据存入主内存

○ 处理器指示输入输出通道执行主内存中的程序以实施输入输出传送。输入输出通道执行主内存中所存指令的同时控制数据传送

通道的种类

○ 选择器通道:在结束某设备的输入输出之前不让其他设备运行。磁盘、磁带、磁鼓之类的高速设备用多路复用器通道高速传送数据,故难以与其他设备多路复用。此时用一次处理一个的专用通道即可多路复用。

○ 多路复用器通道:以字节为单位分时处理多个设备的输出。用于连接多个低速中速设备(读卡机、打印机)时。因为通道-内存连接能以比设备与通道间数据传送速度更快的速度传送数据,故可让速度慢的多个输入输出设备同时动作

○ 块多路复用器通道:结合选择器通道与多路复用器通道优点,以块为单位处理多台高速输入输出设备。可在同一通道激活多个高速设备。通道命令的特点:与一个设备执行输入输出命令后,即使无另行指示也会自动转换为与另一设备执行命令。一个通道可以分时方式使用多个输入输出设备,但有时只服务一个设备,故与选择器通道相似。但与多路复用器通道不同,无需等到完成对其他设备的服务。

○ 字节多路复用器通道:连接多个相对低速的输入输出设备并多路复用使用的通道。相对于中央处理器的处理速度,一般输入输出设备的处理速度相当慢,故把通道做成多路使用更为有效。

操作系统概述

定义

○ 使计算机系统提供的所有 H/W 与 S/W 功能得以使用的最重要的系统软件

○ 通过管理和运行有限的系统资源(resource)使其被高效使用,从而最大限度地为用户提供便利

○ 担当计算机系统与用户之间接口(interface)功能的系统程序

操作系统的目的

○ 操作系统的目的在于:为最大限度高效管理、运行计算机系统的资源(硬件资源、信息)从而为用户提供便利,作为存在于硬件与用户程序之间的系统程序,提供用户接口、提升性能等,高效使用有限的资源。

○ 其目标是提高可靠度、提高处理量、缩短响应时间、把仅提供简单计算能力的硬件以用户易于访问的方式提供,并通过高效控制运行有限的系统资源以发挥更高性能来给予支持。

○ 提高处理能力(throughput):使单位时间内能处理尽可能多的工作量

○ 缩短响应时间:用户把某项工作的处理委托给计算机系统后,到获得其结果所耗的时间,越短越好

○ 提高可靠度:指系统在多大程度上准确地解决给定问题

○ 提高可用度(Availability):表示各用户请求计算机系统时,能多迅速地提供系统资源

○ 操作系统的功能有:程序生成(Program creation)、程序执行(Program execution)、输入输出动作(I/O operation)、文件系统操作、通信、错误发现与响应、资源分配(Resource allocation)、账务管理(Accounting)、保护(Protection)等功能。

操作系统的结构

○ 处理器管理(层 1):负责同步及处理器调度(CPU 管理)

○ 内存管理(层 2):负责内存的分配及回收功能(Memory 管理)

○ 进程管理(层 3):进程的生成、移除、消息传递、启动与停止等工作(Process 管理)

○ 外围设备管理(层 4):掌握外围设备状态与输入输出设备的调度(输入输出管理)

○ 文件(信息)管理(层 5):负责文件的生成与消灭、文件的打开与关闭、文件的维护及管理(文件与数据管理)

○ **内核**把程序与硬件特性隔离,并通过与硬件直接交互,为程序提供一致的服务。内核的基本概念是进程与文件的管理。此外还有输入输出设备管理、内存管理及系统调用接口等。shell、工具或应用程序通过所定义的系统调用与内核通信。它是 UNIX 系系统启动时最先被读取的操作系统核心部分,常驻于主存储器,提供进程调度、存储装置管理、文件系统管理及操作系统的固有功能。

○ 系统调用(System call)

    ▶ 在双模式下用户模式不能使用特权指令,此种情况下用户进程会向操作系统请求帮助,这称为系统调用。也就是说,系统调用在正在运行的程序与操作系统之间提供接口。

○ 双模式(dual mode)结构

    ▶ 理解普通模式(用户模式)与管理模式(监控模式)的特点

    ▶ 在多道程序环境下,一个正在运行程序的错误可能影响另一个正在运行的程序,故需适当保护。双模式是此类保护机制之一,通过提供两种运行模式,控制使可能引发问题的指令不能被随意执行。

○ 用户模式:用户模式的软件在未被授予特权的状态下运行,只能有限地访问系统资源。受保护的子系统各自在其拥有的受保护空间中运行,互不干扰。也就是说,用户模式下只能使用有限的指令。

○ 监控模式:也称内核模式、超级用户模式,把可能引发问题的指令归为特权指令,此类指令被限制为只在监控模式下执行。在此模式下可使用模式指令。

○ 处理器管理:依赖硬件的最底层级,通过进程调度追踪管理可运行的进程

○ 主存储器管理:管理、控制主存储器访问的处理装置部分,执行地址转换、存储保护、缓冲存储等功能

○ 辅助存储装置管理:执行对硬盘或软盘等存储装置的访问管理、控制等的功能

○ 输入输出系统管理

    ▶ 理解设备驱动的功能

    ▶ 理解中断方式与 DMA 方式

    ▶ 理解缓冲与假脱机(spooling)

○ 计算机的输入输出设备(I/O 设备)为中央系统与外部提供高效的通信方法。输入输出设备又称外围设备,最基本的有键盘、显示装置、打印机,以及作为辅助存储装置的磁带或磁盘等。

○ 设备驱动 -:输入输出控制器

    ▶ 担当操作系统、应用程序与硬件间接口的程序,是连接硬件与操作系统、应用程序的纽带程序,是硬件构成要素在操作系统之下正常工作所必需的程序,也称设备控制器或驱动。设备控制器为把命令输入设备控制器而拥有一个以上的设备寄存器,设备驱动执行产生这些命令并检查是否被恰当执行的功能。

○ 中断与 DMA

    ▶ 计算机系统使用的数据输入输出方式有:由程序进行的输入输出、由中断进行的输入输出、由 DMA 进行的输入输出等。

    ▶ 由程序进行的输入输出,其数据输入输出动作由 CPU 所运行程序的 I/O 指令执行。因此要在程序控制下进行数据传送,CPU 须持续监视外围设备状态以得知是否已准备好进行输入输出。

    ▶ DMA(Direct Memory Access)是不经过 CPU、控制在外围设备与内存之间直接传递数据的接口方式,多用于高速外围设备(M/T、DISK 等)与计算机间的数据传送。

缓冲与假脱机

○ 缓冲(Buffering):输入输出设备与辅助存储装置因机械原因,与 CPU 相比以非常慢的速度运行。弥补这种输入输出设备慢速的一种方法就是缓冲。当一条记录被读入、CPU 开始对其运算的同时,输入输出设备预先读入紧接着需要的记录并存入主存储器,从而使 CPU 无需等待所需记录。此时这些被预读记录所在之处是主存储器的一部分,称为缓冲,这样一系列过程称为缓冲。

○ 假脱机(Spooling):缓冲把主存储器用作缓冲,而假脱机则把磁盘当作非常大的缓冲来用。进程不通过实际输入输出设备(Physical Device)进行输入或输出,而以虚拟输入输出设备(Virtual Device)即磁盘为媒介,之后再让实际的输入设备或输出设备去执行这些。

○ 文件管理:操作系统以文件为单位管理程序或数据,并以文件为单位存于存储装置。执行对文件的操作、存储方式、访问方法等的管理

操作系统技术发展的脉络

○ 批处理

○ 实时处理

○ 分时处理系统

○ 分布式处理系统

○ 多道程序

○ 多重处理

进程(process)的概念

○ 当前正在运行或即将可运行的程序

○ 在操作系统内拥有 PCB 的程序

○ 异步行为(asynchronous activity)

○ 作为进程所分配的实体(entity)、可被调度(dispatch)的单位

进程的种类

○ 操作系统进程

○ 用户进程

○ 并行进程

    ▶ 独立进程:既不影响其他进程也不受其影响的进程

    ▶ 协作进程:影响其他进程或受其影响的进程

进程的状态

○ 分为运行与非运行状态

    ▶ 运行状态进程:细分为运行、等待/挂起、就绪。

    ▶ 运行:指令被执行的状态,占用处理器的状态

    ▶ 等待/挂起:处理器等待某事件发生的状态

    ▶ 就绪:进程等待被分配处理器的状态

○ 进程的状态变化

    ▶ 准入(Admit):生成 → 就绪

    ▶ 调度(Dispatch):就绪 → 运行

    ▶ 分配时间超时(Time Run out):运行 → 就绪

    ▶ 阻塞(Blocked):运行 → 睡眠(等待)

    ▶ 唤醒(Wake up):睡眠(等待) → 就绪

    ▶ 释放(Release):运行 → 终止

○ 进程控制块(PCB)

线程

○ 与进程一样使用处理器的基本单位

○ 进程内的实体(可独立执行指令的一条控制流)

○ 一个进程可拥有一个以上的线程。

○ 线程也称轻量级进程。

CPU 利用率

○ CPU 利用率 最大 ↑

○ 处理量(throughput) 最大 ↑

○ 总处理时间(turnaround time) 最小 ↓

○ 等待时间(waiting time) 最小 ↓

○ 响应时间 最小 ↓

CPU 调度

○ 决定何时、把 CPU 资源分配给哪个进程的工作称为 CPU 调度。

○ 每当 CPU 处于空闲状态时,操作系统须从就绪队列中的进程里选一个来运行。

○ 选择过程由短期调度器执行

○ 调度器从内存中已就绪的进程里选一个,分配 CPU

进程调度的分类

○ 抢占式调度

    ▶ RR、SRT、MLQ、MFQ 等

○ 非抢占式调度

    ▶ FIFO、SJF、HRN

死锁(Deadlock)

○ 有一个进程在等待无论等多久都绝不会发生的事件的状态

死锁的 4 个必要条件

○ 互斥

○ 占有并等待

○ 非抢占

○ 环形等待

安全操作系统

○ 操作系统中的安全,是指防止对资源非法修改或引用的策略与技法两者的术语,即把系统资源从外部入侵中保护起来。

○ 安全操作系统是指:为把系统从因计算机操作系统内在安全缺陷而可能发生的各种黑客攻击中保护起来,在既有操作系统内附加移植了整合安全功能的安全内核的操作系统。

安全操作系统提供的主要功能

○ 物理分离:限制每个用户只使用各自独立设备的方法

○ 时间分离:使进程在同一时间只逐一运行的方法

○ 逻辑分离:使每个进程拥有逻辑区域的方法

○ 加密分离:把内部使用的信息加密,使外部无法得知的方法

安全操作系统提供的主要功能

○ 保护对象及方法

    ▶ 内存

    ▶ 辅助存储装置上的文件或数据集合

    ▶ 文件的目录

    ▶ 硬件设备

    ▶ 栈之类的数据结构

    ▶ 指令

    ▶ 密码与用户认证机制

    ▶ 保护机制

○ 保护方法

    ▶ 物理分离:限制每个用户只使用各自独立设备的方法

    ▶ 时间分离:使进程在同一时间只逐一运行的方法

    ▶ 逻辑分离:使每个进程拥有逻辑区域的方法

    ▶ 加密分离:使内部使用的信息从外部无法得知的方法

○ 文件系统保护技法

    ▶ 文件的保护须与文件的共用问题并行考虑。若无条件地一味保护文件,可能带来资源浪费。

    ▶ 文件的保护是文件所有者为阻止无资格用户的程序擅自访问而设置的保护装置

安全操作系统与安全内核

○ 安全操作系统的安全功能

    ▶ 用户识别及认证

    ▶ 自主/强制访问控制

       ▷ 自主访问控制(DAC, Discretionary Access Control):基于主体或所属组的身份(Identity)来限制对客体访问的方法(基于身份的策略)

       ▷ 强制访问控制(MAC, Mandatory Access Control):基于客体的密级和主体所持权限来限制对客体访问的方法(基于规则的策略)

       ▷ 客体重用保护(防止)

            ◇ 用户创建新文件时,会为其分配存储装置空间。

            ◇ 所分配的存储空间中,先前的数据常未被删除而存在,故机密数据可能被暴露。

       ▷ 完全仲裁

            ◇ 为使自主/强制访问控制有效,须执行控制所有访问的完全仲裁。

       ▷ 可信路径(Trusted Path)

            ◇ 在执行设置密码及更改访问许可等安全相关工作时,须能提供安全的通信。

       ▷ 审计及审计记录的精简

            ◇ 所有安全相关事件须记录到审计记录簿(audit log),且审计记录簿须受保护。

○ 安全内核

    ▶ 在计算机安全中,指由 H/W 与 S/W 构成、控制对用户进程系统内部信息存储所访问的 localized mechanism,作为可信进程,须充分保证使访问的正确动作得以执行的强制条件。

    ▶ TCB(Trusted Computing Base)拥有可信进程,利用安全内核实现。

    ▶ 可信计算基础:包含操作系统、硬件、固件、软件等在内的计算机系统内的整体保护机制

    ▶ 实现了用于控制对系统资源访问的基本安全流程的计算机系统(H/W 及 S/W)的中心部分

设计安全内核时的考虑事项

○ 引用监控器(Reference Monitor):担当主体对客体所有访问控制的抽象机器,实际实现它、由硬件、固件、软件构成的即安全内核。

○ 必须无法被篡改。(Must be tamperproof.)

○ 必须始终被调用而不被绕过。(Always invoked.)

○ 必须能通过分析与测试始终确认所有动作。(Must be Verifiable.)

可信平台模块(TPM)

○ 利用硬件设备的安全规格,以及该设备

○ 详细记录在计算环境中可存储加密密钥的安全密码处理器的规格

○ 主要功能:磁盘加密、DRM、软件许可证保护(管理)、密码保护

○ 为防止损毁以硬件芯片实现(也可用 S/W 实现)

○ 即使被物理盗窃,信息也不易被暴露。

○ 提供加密密钥的生成与指定、密码存储、用于完整性验证的度量值存储、证书相关的可信运算

TPM 构成要素

○ I/O

○ 加密辅助处理器

○ 密钥生成

○ HMAC 引擎

○ 随机数发生器

○ SHA-1 引擎

○ 电源探测

○ Opt-in

○ 执行引擎

○ 非易失性内存

○ 易失性内存

原文(韩语): tistory — 发布于 2022-01-13,已迁移至本博客。本翻译由 AI 协助完成。

评论

删除这条评论?

相关文章

信息安全 — 系统安全(第 1 部分) · 나봄하랑