1、123456为了实现操作系统安全的目标,需为了实现操作系统安全的目标,需要建立相应的安全机制,包括隔离要建立相应的安全机制,包括隔离控制、存储器保护、用户认证、访控制、存储器保护、用户认证、访问控制等。问控制等。7隔离控制的方法有四种:隔离控制的方法有四种: o 物理隔离。在物理设备或部件一级进行隔离,使不同的用户程序使用不同的物理对象。8910隔离措施复杂性?安全性?隔离措施复杂性?安全性?11系统提供的保护方式系统提供的保护方式 o 无保护方式。当处理高密级数据的程无保护方式。当处理高密级数据的程序(又称敏感程序)在单独的时间内运行序(又称敏感程序)在单独的时间内运行时,使用无保护的系统是
2、合适的。时,使用无保护的系统是合适的。 o 隔离保护方式。当操作系统提供隔离隔离保护方式。当操作系统提供隔离机制时,可以使并行运行的进程彼此感觉不机制时,可以使并行运行的进程彼此感觉不到对方的存在。每个进程都有自己的内存空到对方的存在。每个进程都有自己的内存空间、文件和其他资源。操作系统必须控制运间、文件和其他资源。操作系统必须控制运行中每个进程不得访问其他进程的资源。行中每个进程不得访问其他进程的资源。 12o 共享或独占保护方式。共享或独占保护方式。o用户资源(或称客体)是否可以共享用户资源(或称客体)是否可以共享由用户自己说明,凡被该用户指定为共由用户自己说明,凡被该用户指定为共享的客体
3、,其他用户都可以访问,而被享的客体,其他用户都可以访问,而被指定为私有的客体,则只能被该用户自指定为私有的客体,则只能被该用户自己独占使用。己独占使用。 13n通过对其他用户访问进行限制来保护用通过对其他用户访问进行限制来保护用户的某些客体。户的某些客体。 受限共享保护方式。n 根据需要为各用户分配不同的访问控制条件,可以把这些访问控制信息存储在某种数据结构(如表格)中,以便操作系统对指定客体进行访问控制。 14o这种方式是受限共享保护方式的推广,这种方式是受限共享保护方式的推广,用户被赋予访问客体的某种能力用户被赋予访问客体的某种能力, ,能力能力代表一种访问权利。代表一种访问权利。o该保护
4、方式允许动态创建客体的共享权,该保护方式允许动态创建客体的共享权,用户的进程共享客体的能力取决于客体用户的进程共享客体的能力取决于客体的拥有者或主体本身,取决于计算的内的拥有者或主体本身,取决于计算的内容,也取决于客体本身。容,也取决于客体本身。o 按能力共享保护方式。按能力共享保护方式。15这种保护方式不限制对客体的访问,而是限制这种保护方式不限制对客体的访问,而是限制访问后对客体的使用,例如允许读,但不允访问后对客体的使用,例如允许读,但不允许复制;或者只读不许修改等限制。许复制;或者只读不许修改等限制。 限制对客体的使用。16o上述六种对客体的保护是按实现的难度上述六种对客体的保护是按实
5、现的难度递增顺序排列的,他们对客体的保护能递增顺序排列的,他们对客体的保护能力也是越来越强的。力也是越来越强的。o一个功能较强的操作系统应该能够对不一个功能较强的操作系统应该能够对不同的客体、不同的用户和不同的情况提同的客体、不同的用户和不同的情况提供不同安全级别的保护功能。供不同安全级别的保护功能。种实现难度如何?保护能力如何?种实现难度如何?保护能力如何?17 内存储器是操作系统中的共享资源,即使对于单用户的个人计算机,内存也是被用户程序与系统程序所共享,在多道环境下更是被多个进程所共享。为了防止共享失去控制和产生不安全问题,对内存进行保护是必要的。18内存的特点?内存的特点?192021
6、22内存单用户内存保护 232425多道程序的保护 2627 解决方法:解决方法:按其内容要求进行保护,例如有的单元只读,按其内容要求进行保护,例如有的单元只读,读写、或仅执行(代码单元)等不同要求,读写、或仅执行(代码单元)等不同要求,可以在每个内存字单元中专用几个比特来可以在每个内存字单元中专用几个比特来标记该字单元的属性。标记该字单元的属性。 除了标记读、写、执行等属性外,还除了标记读、写、执行等属性外,还可以标记该单元的数据类型,如数据、字可以标记该单元的数据类型,如数据、字符、地址、指针或未定义等。符、地址、指针或未定义等。28 293031323334353637383940414
7、2 43 44 45 46 多个口令 一般来说,登录名或用户名是与某个私人口令相联系的。尽管如此,在有更高安全要求的系统上还采用多个口令的安全措施。其中包括系统口令,它允许用户访问指定的终端或系统,这是在正常登录过程之后的额外的访问控制层。也可以是对拨号访问或访问某些敏感程序或文件而要求的额外口令。 47 系统生成口令 可以由计算机为用户生成口令,系统就有这种功能。口令生成软件可以按前面讨论的许多原则为用户生成口令,由系统生成的口令一般很难记忆,有时会迫使用户写到纸上,造成了不安全因素。48495051 5253 通行短语也可以用于可变的询问响应系统,系统和用户之间可以约定许多互相知道的秘密信
8、息,如有关用户个人经历、爱好、家庭、个人特征等方面的信息,每当用户向系统登录时,询问响应系统便随机从这些信息中挑出几个向用户询问,在用户给出正确回答和系统提问内容在事先约定范围内的情况下,双方可以互相取得信任。 54 访问控制的基本目标都是防止非法用户进入系统和合法用户对系统资源的非法使用。为了达到这个目标,访问控制常以用户身份认证为前提,在此基础上实施各种访问控制策略来控制和规范合法用户在系统中的行为。 555657585960616263 客体目录646566676869o有的系统中实现的保护子系统机制就是面向有的系统中实现的保护子系统机制就是面向过程的访问控制的典型例子。一个保护子系过程
9、的访问控制的典型例子。一个保护子系统可以看作是由一个过程集合和受保护的数统可以看作是由一个过程集合和受保护的数据客体组成的,这些成分都包含在该子系统据客体组成的,这些成分都包含在该子系统的私有域中。只有保护子系统中的过程可以的私有域中。只有保护子系统中的过程可以对子系统中的数据客体进行访问操作,子系对子系统中的数据客体进行访问操作,子系统外只有被指定的主体可以在指定的入口点统外只有被指定的主体可以在指定的入口点调用子系统中的过程。调用子系统中的过程。 70o在子系统中的数据文件是受保护的对象,子在子系统中的数据文件是受保护的对象,子系统中的过程是用来管理受保护对象的,并系统中的过程是用来管理受
10、保护对象的,并按用户要求实施对这些客体的访问控制。外按用户要求实施对这些客体的访问控制。外部进程只能通过调用管理程序对子系统内部部进程只能通过调用管理程序对子系统内部的客体进行访问操作。的客体进行访问操作。 71 文件的保护机制文件的保护机制 o文件系统是任何一个操作系统的最重要的组文件系统是任何一个操作系统的最重要的组成部分。由于用户交由计算机处理的数据成部分。由于用户交由计算机处理的数据(其中有的是敏感数据)和系统安全机制的(其中有的是敏感数据)和系统安全机制的信息都是用文件的形式保存的,因此文件的信息都是用文件的形式保存的,因此文件的保护是非常重要的。本节介绍几种文件保护保护是非常重要的
11、。本节介绍几种文件保护机制,每一种有它的特点与不足。通过了解机制,每一种有它的特点与不足。通过了解这些文件保护机制,可以知道哪些保护方式这些文件保护机制,可以知道哪些保护方式更为安全,为选择安全可靠的操作系统提供更为安全,为选择安全可靠的操作系统提供依据。依据。 72 基础保护基础保护 o任何一个多用户系统都必须提供最低限度的任何一个多用户系统都必须提供最低限度的文件保护功能,防止用户有意或无意访问、文件保护功能,防止用户有意或无意访问、修改和破坏其他用户的文件。修改和破坏其他用户的文件。 73o()全或无保护()全或无保护 o全或无保护建筑于对用户信赖的基础上,假定用全或无保护建筑于对用户信
12、赖的基础上,假定用户不会去读或修改别人的文件,只会访问自己有户不会去读或修改别人的文件,只会访问自己有权访问的文件,并且假定用户只知道其有合法访权访问的文件,并且假定用户只知道其有合法访问权的文件名。因此对文件一般不设保护,默认问权的文件名。因此对文件一般不设保护,默认文件是公开的。实际上,对文件是没有保护的,文件是公开的。实际上,对文件是没有保护的,任何一个用户都可以读、修改甚至删除其他用户任何一个用户都可以读、修改甚至删除其他用户的文件。对于某些敏感文件,系统管理员可以使的文件。对于某些敏感文件,系统管理员可以使用通行字保护它们,通行字可以控制对该文件的用通行字保护它们,通行字可以控制对该
13、文件的一切访问(读、写或更新),或只控制对其他用一切访问(读、写或更新),或只控制对其他用户有影响的访问操作(如写、更新)。使用通行户有影响的访问操作(如写、更新)。使用通行字机制在每次对文件开始访问的时候,操作员都字机制在每次对文件开始访问的时候,操作员都需要进行干预。需要进行干预。 74主要存在以下问题:主要存在以下问题: o以信任为基础的安全机制是不可靠的。如果操作系以信任为基础的安全机制是不可靠的。如果操作系统的用户少,相互之间都比较熟悉,且相互利益也统的用户少,相互之间都比较熟悉,且相互利益也不冲突,各人也没有敏感文件需要保存,这种安全不冲突,各人也没有敏感文件需要保存,这种安全机制
14、还是可以使用的。但对于用户众多的大系统而机制还是可以使用的。但对于用户众多的大系统而言,各用户之间也不熟悉,不存在相互信赖的基础。言,各用户之间也不熟悉,不存在相互信赖的基础。o如果某个文件只希望一部分人可以访问,由于采用如果某个文件只希望一部分人可以访问,由于采用了了“要么对所有用户都是公开的,要么对所有用户要么对所有用户都是公开的,要么对所有用户都是有保护的都是有保护的”安全机制,这一要求无法实现。安全机制,这一要求无法实现。 75o这种安全机制更适合于批处理系统,而不这种安全机制更适合于批处理系统,而不适用于分时系统。在批处理的环境下可以适用于分时系统。在批处理的环境下可以把有相同兴趣的
15、用户安排在同一批进行处把有相同兴趣的用户安排在同一批进行处理,全或无的保护方式可以满足这种处理理,全或无的保护方式可以满足这种处理方式对文件的保护要求,各批用户之间没方式对文件的保护要求,各批用户之间没有机会交互信息。在分时系统中用户需要有机会交互信息。在分时系统中用户需要交互信息,用户选择计算的时间可能就是交互信息,用户选择计算的时间可能就是为了向另一个用户传递结果,如果被保护为了向另一个用户传递结果,如果被保护的文件不允许被某些用户访问,在分时系的文件不允许被某些用户访问,在分时系统下无法按这种保护方式进行控制。统下无法按这种保护方式进行控制。 76o 由于这种安全机制需要操作员干预,既麻
16、由于这种安全机制需要操作员干预,既麻烦又降低了操作系统的效率,影响了这种保烦又降低了操作系统的效率,影响了这种保护方式的广泛使用。护方式的广泛使用。o需要向用户提供系统所有文件的列表,帮助需要向用户提供系统所有文件的列表,帮助用户回忆他们需要对哪些文件负责,这种文用户回忆他们需要对哪些文件负责,这种文件管理方式比较落后。件管理方式比较落后。 77()分组保护()分组保护 o根据上述情况,全或无保护方式主要问题根据上述情况,全或无保护方式主要问题是不能满足不同利益用户对文件的保护要是不能满足不同利益用户对文件的保护要求。分组保护方式可以解决这个问题。在求。分组保护方式可以解决这个问题。在分组方案
17、中,分组方案中, 可以根据某种共同性把用户可以根据某种共同性把用户划分在一个组中,例如需要共享是一个常划分在一个组中,例如需要共享是一个常见的分组理由。见的分组理由。78o系统中的用户分为三类:(单个)用户()、用户系统中的用户分为三类:(单个)用户()、用户组()和全部(),分组时要求每个用户只能分在组()和全部(),分组时要求每个用户只能分在一个组中,同一个组中的用户对文件有相同的需求,一个组中,同一个组中的用户对文件有相同的需求,一般具有相同访问权。例如,在创立文件时,文件一般具有相同访问权。例如,在创立文件时,文件主可以为自己授予最高的权限(如读、写、执行、主可以为自己授予最高的权限(
18、如读、写、执行、删除),为某个组的用户授予读写权利,对其他所删除),为某个组的用户授予读写权利,对其他所有一般用户仅授予读的权利。分组保护技术在、有一般用户仅授予读的权利。分组保护技术在、 等等操作系统中使用。分组方案便于系统管理员对用户操作系统中使用。分组方案便于系统管理员对用户群的管理,所以该方案在新型操作系统(如、等)群的管理,所以该方案在新型操作系统(如、等)被广泛采用。被广泛采用。 79o分组保护机制的实现并不困难,由于引入组分组保护机制的实现并不困难,由于引入组的概念,需要用用户和组这两个标识符标识的概念,需要用用户和组这两个标识符标识一个用户。这两个标识符存放在为每个文件一个用户
19、。这两个标识符存放在为每个文件设立的文件目录项中,当用户注册的时候,设立的文件目录项中,当用户注册的时候,操作系统就可以得到它们。当用户要求访问操作系统就可以得到它们。当用户要求访问该文件时,操作系统可以检查该用户的组标该文件时,操作系统可以检查该用户的组标识符与该文件的组标识符是否相同,相同就识符与该文件的组标识符是否相同,相同就允许访问。允许访问。 80该方案还存在以下问题:该方案还存在以下问题: o 组的隶属关系:分组不允许一个用户同属两个组的隶属关系:分组不允许一个用户同属两个组,否则会引起访问权限的混乱。例如,假如一组,否则会引起访问权限的混乱。例如,假如一个用户同属于两个组,如果这
20、个用户所在的一个个用户同属于两个组,如果这个用户所在的一个组对某个文件具有读权,那么该用户所在的另一组对某个文件具有读权,那么该用户所在的另一个组对该文件是否也具有读权?如果一个组内的个组对该文件是否也具有读权?如果一个组内的用户对某个文件有不同的访问权,上述实现分组用户对某个文件有不同的访问权,上述实现分组的方法就无法进行控制,解决这些问题只能一人的方法就无法进行控制,解决这些问题只能一人一组。一组。 81o 多重账户:为了克服一人一组带来的限制,多重账户:为了克服一人一组带来的限制,可以允许用户建立多个账户,在不同的组里可以允许用户建立多个账户,在不同的组里使用不同的账号,代表不同的用户。
21、假设用使用不同的账号,代表不同的用户。假设用户甲有两个账号,一个是甲,一个是甲,他户甲有两个账号,一个是甲,一个是甲,他们分配在两个组内。甲开发的任何文件、程们分配在两个组内。甲开发的任何文件、程序,甲只能享受非甲组的一般用户的访问权序,甲只能享受非甲组的一般用户的访问权限。这种方法虽然可以允许一人多组,但会限。这种方法虽然可以允许一人多组,但会使账户文件变长,增加了管理的难度,对用使账户文件变长,增加了管理的难度,对用户也不方便。户也不方便。 82o有限的共享:文件要么只能在组内共享,要有限的共享:文件要么只能在组内共享,要么只能为全部用户共享。无法以文件为基础么只能为全部用户共享。无法以文
22、件为基础区分出一个文件的共享者,但这是用户希望区分出一个文件的共享者,但这是用户希望的共享管理方式。的共享管理方式。 83 单独许可权单独许可权 o()() 文件通行字文件通行字o为了控制用户对指定文件的访问,可以为该为了控制用户对指定文件的访问,可以为该文件设置一个通行字。当用户访问这个文件文件设置一个通行字。当用户访问这个文件的时候必须提供正确的通行字。通行字可以的时候必须提供正确的通行字。通行字可以用于控制对文件的各种访问,或仅控制对文用于控制对文件的各种访问,或仅控制对文件的某一种访问,如控制对文件的修改。件的某一种访问,如控制对文件的修改。 84o利用通行字的方法可以实现把用户按文件
23、分利用通行字的方法可以实现把用户按文件分组的目的。通行字的管理与维护还存在一些组的目的。通行字的管理与维护还存在一些麻烦,无论通行字丢失或者泄漏都需要由操麻烦,无论通行字丢失或者泄漏都需要由操作员干预,去掉文件的旧通行字,换成新的作员干预,去掉文件的旧通行字,换成新的通行字;为了撤消某个用户的文件访问权,通行字;为了撤消某个用户的文件访问权,也必须更换文件的通行字。更换通信字后,也必须更换文件的通行字。更换通信字后,还要把新通行字告诉所有与该文件有关的所还要把新通行字告诉所有与该文件有关的所有用户。有用户。 85o()临时许可证()临时许可证o系统中除了基本的分组保护方案外,还增加了一种系统中
24、除了基本的分组保护方案外,还增加了一种新的许可权方法,这种许可权称为设置用户标识符新的许可权方法,这种许可权称为设置用户标识符( )和设置组标识符()和设置组标识符( )。用户与组)。用户与组的设置能力是通过与两个系统调用功能和文件的与的设置能力是通过与两个系统调用功能和文件的与两个访问控制位实现的。利用该功能,用户可以建两个访问控制位实现的。利用该功能,用户可以建立维护专用信息的特定保护程序,其他用户如果希立维护专用信息的特定保护程序,其他用户如果希望访问这些专用信息就必须运行其特定保护程序。望访问这些专用信息就必须运行其特定保护程序。 86o可靠的系统定义了若干可靠的系统定义了若干“受保护
25、子系统受保护子系统”,每一个子,每一个子系统都是由一组专用信息(文件、数据库)、一些相系统都是由一组专用信息(文件、数据库)、一些相关设备以及维护这些信息的工具与命令组成。这些受关设备以及维护这些信息的工具与命令组成。这些受保护子系统利用机制来保护其专用信息和设备不受非保护子系统利用机制来保护其专用信息和设备不受非法访问。例如,系统的通行字文件是系统的敏感信息,法访问。例如,系统的通行字文件是系统的敏感信息,一般规定只允许系统管理员修改通行字,但也提供功一般规定只允许系统管理员修改通行字,但也提供功能让个别用户自己修改通行字。用户甲可以用机制建能让个别用户自己修改通行字。用户甲可以用机制建立改
26、变通行字的保护程序,当普通用户执行它时,该立改变通行字的保护程序,当普通用户执行它时,该保护程序可以按用户甲规定的方式修改通行字文件。保护程序可以按用户甲规定的方式修改通行字文件。 87 指定保护指定保护 o指定保护方式是指允许用户为任何文件建立指定保护方式是指允许用户为任何文件建立一张访问控制表(),指定谁有权访问该文一张访问控制表(),指定谁有权访问该文件,每个人有什么样的访问权。这都是符合件,每个人有什么样的访问权。这都是符合自主访问控制原则要求的。在自主访问控制原则要求的。在 操作系统中操作系统中提供了这种保护功能。在分组保护系统中限提供了这种保护功能。在分组保护系统中限定每个用户只能
27、属于某一个组,利用指定保定每个用户只能属于某一个组,利用指定保护方式,系统管理员可以通过定义一个护方式,系统管理员可以通过定义一个“一一般标识符般标识符”来建立一个新的组。来建立一个新的组。 88o假设甲、乙、丙、丁四个用户原先分属四个假设甲、乙、丙、丁四个用户原先分属四个不同的组,现因项目开发需要,要求成立一不同的组,现因项目开发需要,要求成立一个新组。系统管理员可以定义一个新的一般个新组。系统管理员可以定义一个新的一般标识符,让它只包括这四个人,用户可以允标识符,让它只包括这四个人,用户可以允许在一般标识符下的人访问一个文件,但不许在一般标识符下的人访问一个文件,但不允许这四个用户所在组的其他人访问这个文允许这四个用户所在组的其他人访问这个文件。件。 899091 ()操作系统就是建立在一套完整的安全机制上的,因而任何一个机构,在使用 ()前都必须指定它们的安全策略。 在使用 ()操作系统时,一定要熟悉它的登录验证、访问控制、安全策略等安全保护机制,这样才能降低遭受威胁和攻击的风险。 9293949596979899100101102103104