计算机安全技术操作系统的安全6.1操作系统的安全问题对操作系统安全的威胁:(1)以OS为手段,获得授权以外的或未授权的信息:它危害信息系统的保密性和完整性。(2)以OS为手段,阻碍计算机系统的正常运行或用户的正常使用:它危害了计算机系统的可用性。(3)以OS为对象,破坏系统完成指定的功能:除了电脑病毒破坏系统正常运行和用户正常使用外,还有一些人为因素或自然因素,如干扰、设备故障和误操作也会影响软件的正常运行。(4)以软件为对象,非法复制或非法使用。计算机安全技术操作系统的安全6.2操作系统的安全控制设计一个安全的操作系统,从技术上讲有四种安全方法,如隔离控制、访问控制、信息加密和审计跟踪。操作系统采用的安全控制方法主要是隔离控制和访问控制。1、隔离控制①物理隔离。②时间隔离。③加密隔离。④逻辑隔离。2、访问控制访问控制是操作系统的安全控制核心。访问控制是确定谁能访问系统,能访问系统何种资源以及在何种程度上使用这些资源。访问控制包括对系统各种资源的存取控制。计算机安全技术操作系统的安全6.2操作系统的安全控制存取控制解决两个基本问题:一是访问控制策略,二是访问控制机构。访问控制策略是根据系统安全保密需求及实际可能而提出的一系列安全控制方法和策略,如“最小特权”策略。访问控制策略有多种,最常用的是对用户进行授权。访问控制机构则是系统具体实施访问控制策略的硬件、软件或固件。访问控制的三项基本任务:①授权。②确定访问权限。③实施访问控制的权限。计算机安全技术操作系统的安全6.2操作系统的安全控制从访问控制方式来说,访问控制可分为以下四种:(1)自主访问控制:自主访问控制是一种普遍采用的访问控制手段。它使用户可以按自己的意愿对系统参数作适当修改,以决定哪些用户可以访问他们的系统资源。(2)强制访问控制:强制访问控制是一种强有力的访问控制手段。它使用户与文件都有一个固定的安全属性,系统利用安全属性来决定一个用户是否可以访问某种资源。(3)有限型访问控制:它对用户和资源进一步区分,只有授权的用户才能访问指定的资源。(4)共享/独占型访问控制:它把资源分成“共享”和“独占”两种。“共享”可以使资源为所有用户使用,“独占”只能被资源所有者使用。计算机安全技术操作系统的安全6.2操作系统的安全控制访问控制的重要内容之一是用户身份识别。而口令字验证又是是用户身份识别的主要内容,口令字验证应注意:①在系统的问答题中尽量少透露系统、用户和口令字的信息。②用户可以加上附加的约束,如限制使用的时间和地点。③对口令字文件加密。④口令字要有一定的范围和长度,并由操作系统随机地产生。⑤应定期改变口令字。⑥使用动态口令字。⑦要选择容易记忆,但又难猜的口令。计算机安全技术操作系统的安全6.3自主访问控制⑧不要使用常用单词或名字,不要选用有特殊意义的口令,如生日、电话号码、银行帐号等。⑨不要在不同的机器上使用相同的口令。⑩不要将口令告诉他人或随便将口令手写在终端上。自主访问控制是指基于对主体及主体所属主体组的访问来控制对客体的访问,它是操作系统的基本特征之一。这种控制是自主的。自主是指具有授予某种访问权力的主体能够自主地将访问权或访问权的某个子集授予其它主体。计算机安全技术操作系统的安全6.3自主访问控制6.3.l自主访问控制方法目前,操作系统实现自主访问控制不是利用整个访问控制矩阵,而是基于矩阵的行或列来表达访问控制信息。1.基于行的自主访问控制是在每个主体上都附加一个该主体可访问的客体的明细表。按照表内信息的不同,可以分为三种形式:(1)权力表,也叫权能,它是实现访问控制的一种方法。(2)前缀表,包括受保护的客体名以及主体对它的访问权。(3)口令,口令机制是按行表示访问控制矩阵的。计算机安全技术操作系统的安全6.3自主访问控制2.基于列的自主访问控制基于列的自主访问控制是对每个客体附加一份可访问它的主体的明细表。它有两种形式:(1)保护位:保护位机制不能完备地表达访问控制矩阵。(2)访问控制表:每个客体(对象)有一张访问控制表,记录该客体可被哪些主体访问以及访问的形式。6.3.2自主访问控制的访问类型自主访问控制机制中,有三种基本的控制模式。1.等级型2.有主型3.自由型计算机安全技术操作系统的安全6.3自主访问控制6.3.3自主访问控制的访问模式在自主访问控制机制的系统中,可使用的保护客体基本有两类:文件和目录。1.文件对文件常设置以下几种访问模式:(1)Read-Copy:允许主体对客体进行读与拷贝的访问操作(2)Write-delete:允许主体用任何方式修改一个客体。(3)Execute:允许主体将客体作为一种可执行文件而运行之。(4)Null:表示主体对客体不具有任何访问权。计算机安全技术操作系统的安全6.3自主访问控制2.目录每个主体(用户)有一个访问目录。该目录用于记录该主体可访问的客体(对象)以及访问的权限,然而用户本身却不能接触目录。目录常作为结构化文件或结构化段来实现。是否对目录设置访问模式,取决于系统是怎样利用树结构来控制访问操作的。对目录的访问模式可以分为读和写-扩展。(1)Read(读):该模式允许主体看到目录实体,包括目录名、访问控制表以及该目录下的文件与目录的相应信息。(2)Write-EXpand(写-扩展):该访问模式允许主体在该目录下增加一个新的客体。也就是说,允许主体在该目录下生成与删除文件或子目录。计算机安全技术操作系统的安全6.4强制访问控制1.“特洛伊木马”的威胁一个“特洛伊木马”要进行攻击,一般需要以下条件:①必须编写一段程序或修改一个已存在的程序来进行非法操作,而且这种非法操作不能令程序的使用者起任何怀疑。这个程序对使用者来说必须具有吸收力。②必须使受害者能以某种方式访问到或得到这个程序,如将这个程序放在系统的根目录或公共目录中。③必须使受害者运行这个程序。一般利用这个程序代替某个受害者常用的程序来使受害者不知不觉地使用它。④受害者在系统中有一个合法的帐号。计算机安全技术操作系统的安全6.4强制访问控制2.防止“特洛伊木马”的非法访问强制访问控制一般与自主访问控制结合使用,并实施一些附加的、更强的访问限制。一个主体只有通过了自主与强制访问控制检查后,才能访问某个客体。由于用户不能直接改变强制访问的控制属性,因此用户可以利用自主访问控制来防范其他用户对自己客体的攻击。强制访问控制则提供一个不可逾越的、更强的安全防护层,以防止其他用户偶然或故意滥用自主访问控制。要防止“特洛伊木马”偷窃某个文件,就必须采用强制访问控制手段。减少“特洛伊木马”攻击成功的可能性方法。(1)限制访问控制的灵活性(2)过程控制计算机安全技术操作系统的安全6.5存储器的保护存储器保护负责保证系统内各任务之间互不干扰;存储器管理是为了更有效地利用存储空间。6.5.1存储器的保护方法首先要对存储单元的地址进行保护,使得非法用户不能访问那些受到保护的存储单元;其次要对被保护的存储单元提供各种类型的保护。最基本的保护类型是“读/写”和“只读”。所谓“只读”,就是规定用户只能对那些被保护的存储单元中的内容进行读取,而不能进行其它操作。复杂一些的保护类型还包括“只执行”、“不能存取”等操作。不能存取的存储单元,若被用户存取时,系统要及时发出警报或中断程序执行。计算机安全技术操作系统的安全6.5存储器的保护操作系统对内存的保护主要采用了逻辑隔离方法。1.界地址寄存器保护法2.内存标志法3.锁保护法“锁”是指为存储区设置的特定数字。使用锁保护方式具有以下优点:①因为不同的存储区可以分配相同的锁,因此用户可以用同一钥匙打开不连续的若干区域。②只要锁和钥匙定义不同的对应方案,就可以使钥匙具有不同的优先级。4.特征位保护法即在每一个存储单元的前面,设置一组特征位特征位数据指令代码计算机安全技术操作系统的安全6.5存储器的保护6.5.2存储器的管理1.虚拟地址空间的物理定位可变,每次调度该进程时,它的物理地址可能不同。在运行一个访问存储器的指令时,硬件设备首先根据指令中的某一数值或偏移量以及索引寄存器的值对虚拟地址进行某种运算,以识别出欲访问目标的物理地址。其运算的结果就是一个虚拟地址映射成一个物理地址。2.虚存映射在一个大系统内,将物理存储器分成固定大小的页,各个进程根据需要占用不同页数的物理存储器。设置一组映射寄存器,每个寄存器指出一个页的物理首地址。这样,进程就可以通过这些映射寄存器来访问物理地址空间。计算机安全技术操作系统的安全6.5存储器的保护3.请求调页一个进程占有比机器内存还大的虚拟存储空间,需采用请求调页机制,该机制将根据需要在辅存与内存之间移动某些页,它保证了进程所需的某些页没有驻留在内存时仍能正常运行。操作系统可以为进程构造一个页描述表,该表记录了进程所需的全部虚拟存储空间,表中可以设置一个“磁盘驻留”的标志,指明该页不在物理内存中而是驻留在磁盘上。当某一进程运行过程中所需的页不在内存中时,操作系统将中止该进程的运行,直至内存中有空闲的页腾出时,再将所需页从磁盘中调入内存中的空闲页,并将页表中相应的项置为该空闲页,然后重新启动被中止的进程从断点处继续运行。计算机安全技术操作系统的安全6.5存储器的保护4.分段管理在绝大部分系统中,一个进程的虚拟地址空间至少要被分成两部分或两个段:一个用于用户程序与数据,称为用户空间;另一个用于操作系统,称为系统空间。两者是静态隔离的,也是比较简单的。6.5.3虚拟存储器的保护虚拟存储器一般都采用段/页技术进行管理。一般情况下,整个虚拟存储器被划分成若干个段,每个段再被划分成若干页。如果在段、页描述中加入段、页保护信息,如对段或页可采取“只读”、“读/写”等保护措施,当计算机执行指令时,系统便根据保护类型检查这条指令的操作是否合法,如果不合法,就中断程序的执行。计算机安全技术操作系统的安全6.6操作系统的安全设计6.6.1操作系统的安全模型1.访问监控模型最简单的安全模型,单级模型,是体现有限型访问控制的模型。它对每一个主体-客体对,只作“可”还是“否”的访问判定。这种模型论证比较脆弱,它所表达的安全需求没有特别详尽的说明。2.“格”模型多级模型。把用户(主体)和信息(客体)进一步按密级和类别划分。访问控制根据“工作需要,给予最低权限”的原则,只有当主体的密级等于或高于客体,主体的类别等于或包含客体时,主体才能访问客体。计算机安全技术操作系统的安全6.6操作系统的安全设计3.Bell-LaPadula模型多级模型,它是保证保密性基于信息流控制的模型。这种模型的访问控制遵循两条原则。简单安全性原则,即主体的保密性访问级别支配客体的保密性访问级别,也就是说主体只能读密级等于或低于它的客体,主体只能从下读,而不能从上读。星原则是客体的访问级别支配主体的访问级别,即主体只能写密级等于或高于它的客体。也就是说主体只能向上写,而不能向下写。星原则的目的是为了防上不可信的机密进程从不同等级或级别更高的机密文件中读出信息后,通过“向下写”来窃取系统的机密。计算机安全技术操作系统的安全6.6操作系统的安全设计Padula模型目的在于防止信息泄漏,而不是防止主体对客体的非授权修改。它们只处理了信息的保密问题,而没有解决信息的完整性问题。4.Bibe模型从信息完整性的角度来看,显然必须禁止低访问级别的主体对高访问级别的客体进行访问,以免低访问级别的主体篡改高访问级别的信息(客体),于是就产生了Bibe模型。Bibe模型是保证信息流完整性的控制模型,它把主体和客体按类似密级那样的完整级进行分类。完整级是一个由低到高的序列,其访问遵循“简单完整性”和“完整性星”两条原则。计算机安全技术操作系统的安全简单完整性原则是主体的完整性访问级别支配客体的完整性级别。即主体只能向下写,而不能向上写。也就是说,主体只能写(修改)完整性级别等于或低于它的客体。完整性星原则是客体的完整性访问级别支配主体的完整性访问级别,即主体只能从上读,而不能从下读。计算机安全技术操作系统的安全6.6操作系统的安全设计6.6.2安全操作系统的设计原则①对用户标识