操作系统与数据库安全:006安全操作系统的设计与开发_第1页
操作系统与数据库安全:006安全操作系统的设计与开发_第2页
操作系统与数据库安全:006安全操作系统的设计与开发_第3页
操作系统与数据库安全:006安全操作系统的设计与开发_第4页
操作系统与数据库安全:006安全操作系统的设计与开发_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、5 安全操作系统的设计和开发 1开放系统设计: 2 机制的经济性: 3 最小特权: 4严密的访问控制机制: 5基于“许可”的模式: 6 特权分离: 7 避免信息流潜在通道: 8 便于使用: 安全操作系统一般结构 可信应用软件 应用软件 安 全 内 核 硬 件 安全操作系统一般开发方法(1)虚拟机系统: (2)改进/增强法: (3)仿真法: 安全操作系统的开发过程 安全需求分析抽象和归纳出安全策略建立安全模型安全机制的设计和实现安全操作系统可信度认证安全功能测试安全模型与系统的对应性说明阶段一阶段二阶段三安全操作系统的研究和发展BLP机密性安全模型首次成功地应用于Multics Anderson

2、的参照监视器、引用验证机制、授权机制、安全内核和安全建模 ;KSOS、Secure UNIX;计算机安全评价标准可信计算机系统评价标准(TCSEC)(又称橘皮书); LINUS , Secure Xenix ,Secure Xenix System /MLS ,ASOS(Army Secure Operating System)、Flask、OSF/1、UNIX SVR4.1ES、DTOS、SE-Linux、STOP、VMM 安全功能和安全保证安全操作系统的开发,应从安全功能(Security Function)和安全保证(Security Assurance)两方面实施,安全功能主要说明一个

3、操作系统所实现的安全策略和安全机制符合评价准则中哪一级的功能要求,安全保证(保障)是通过一定的方法保证操作系统所提供的安全功能确实达到了指定的功能要求,能够确保系统的安全性。 安全功能包括10个安全元素标识与鉴别、自主访问控制、标记、强制访问控制、客体重用、审计、数据完整性、可信路径、隐蔽信道分析和可信恢复。在通用操作系统中,TCB可以包含多个安全功能TSF(Trusted Security Function) 模块,每一个TSF实现一个安全功能策略TSP(Trusted Security Policy),这些TSP共同构成了安全域,以防止不可信主体的干扰和篡改。 安全保证有3个方面(1)TC

4、B自身安全保护,包括TSF模块、资源利用、TCB访问等。(2)TCB设计和实现,包括配置管理、分发和操作、开发、指导性文档、生命周期支持、测试、脆弱性评定等。(3)TCB安全管理。安全操作系统设计技术1隔离技术将系统中的一个用户(进程)与其他用户(进程)隔离开来是安全性的基本要求,有四种办法实现:物理分离,时间分离,密码分离,逻辑分离。 1 隔离技术实现方法:(1)多虚拟存储空间(2)多虚拟机系统虚机器操作系统 物理计算机系统 CP控制程序I/O设备 文件 存储器 处理器虚机器操作系统虚拟计算机系统虚机器操作系统虚拟计算机系统虚机器操作系统虚拟计算机系统2安全内核安全内核(Security k

5、ernel)是通过控制对系统资源的访问来实现基本安全规程的操作系统内核中相对独立的一部分程序,它在硬件和操作系统功能模块之间提供安全接口,凡是与安全有关的功能和机制都必须被隔离在安全内核之中。安全内核设计和实现基本原则(1)完整性。(2)隔离性。 (3)可验证性。 最不可信代码最可信代码用户认证模块用户接口子模块用户ID查找子模块认证数据修改子模块认证数据比较子模块分层结构的实现4环结构MULTICS操作系统用环结构(ring structure)实现安全保护,这是分层设计的进一步发展,指定各个进程所具有的访问权,共设计了8个环,4个用于操作系统,4个用于应用程序。 环界标方法 n210只读正

6、常调用(可信访问)指定入口点访问(可信访问)b1b2b3访问环界表访问环界表/门扩展对程序调用的环界标解释 n210可被运行于p级(b1pb2)的任何过程调用在指定点,仅当主调用程序级别p(b2pb3)时可调用b1b2b3访问环界表访问环界表/门扩展pb3的过程无法访问 对数据访问的环界标的解释 n210P级进程只读访问(0pb1)P级进程访问(b1pb2)仅对P级进程的一个拷贝访问(b2pb3)b1b2b3访问环界表访问环界表/门扩展强制访问控制的实现(1)安全标签的实现 基于多级安全策略,系统的访问控制机制的实现要基于以下内容: 1)对每个客体赋予一敏感性标签,此标签标明系统用来保护此信息

7、的安全程度(级别)。 2)对每个用户进程(主体)赋予一许可标签,此标签用来指定此进程的可信程度。 3)保证所有的输入、输出的信息系统都能够正确地标记反映其安全级别的敏感性标签。基于多级安全策略的安全标签类别部分:类别部分反映出来的是一种等级关系,故又称之为安全等级(hierarchies)或密级,在安全类别中密级按线性顺序排列,例如,公开秘密机密绝密,在实现时以数字从小到大依次递增表示其安全等级。基于多级安全策略的安全标签范畴部分:范畴部分是无等级概念的元素组成的,表示一清晰的信息领域。在实现中范畴用数字代表,范畴集是数字的集合表示。两个安全标签之间存在四种关系 A支配B:当且仅当A的安全等级

8、大于等于B的安全等级, A的范畴包含B的范畴、即B的范畴是A的范畴的一个子集。 B支配A:当且仅当B的安全等级大于等于A的安全等级,B的范畴包含 A的范畴、即A的范畴是B的范畴的一个子集。 A等于B:当且仅当A的安全等级等于B的安全等级,A的范畴中的任何一项也是B的范畴中的一项,反之亦然。也即A支配B,B支配A。 A与B无关:A线安全级的范畴集不包含B的安全级的范畴集,同时B的安全级的范畴不包含A的安全级的范畴。基于安全标签的强制访问控制 安全系统控制主体对客体的访问基于它们的安全标签的,故应设计标签比较算法,用来判断安全级标签的支配关系,以决定主体对客体的访问权限。一个进程(主体)要想访问客

9、体,其许可标签必须具备: 1)若想要对客体具有写访问权限,主体的安全级别密级+范畴必须被客体的安全级别支配、即主体安全等级客体安全等级,主体的范畴客体的范畴)。基于安全标签的强制访问控制2)若想要对客体具有读权限,主体的安全级别安全等级+范畴必须支配客体的安全级别(主体安全等级客体安全等级,主体的范畴客体的范畴)。 如果进程(主体)不能够满足上面的任何一条要求,则不能够访问客体。 基于安全标签的强制访问控制进程A许可标签:secret:a、b、c进程B许可标签:top secret:a、b、c进程C许可标签:top secret:d、e、f进程B许可标签:confidential:a、b、cF

10、ilex敏感性标签:secret:a、b、c写许可读许可读许可写拒绝写拒绝读拒绝读拒绝写许可最小特权的实现传统UNIX/Linux特权管理1)普通用户没有特权,超级同户拥有所有特权。2)当进程要进行某特权操作时,系统检查进程所代表的用户是否为超级用户; 最小特权的实现传统UNIX/Linux特权管理3)普通用户涉及特权操作时,通过setuid/setgid实现。用户希望访问/etc/passed来修改自己的密码,必须使他能超越对客体的受限访问。setuid/setgid可以使得代表普通用户的进程不继承用户的uid/gid,而是继承该进程对应的应用程序文件(可执行文件)的所有者的uid/gid,

11、即普通用户暂时获得其他用户身份,并通过该身份访问客体。 Linux最小特权的实现 1)系统安全管理员:用来维护系统中与安全性相关的信息,包括对系统用户账户的管理、系统中的主体客体安全级的管理以及设置和维护系统的安全数据库;2)系统审计员:用来设置审计开关和审计阈值,启动和关闭审计机制以及管理审计日志; Linux最小特权的实现3)系统操作员:用来完成系统中日常的操作和维护,包括开启和关闭系统、对文件的档案备份和恢复、安装或卸载文件系统以及向终端发送消息等等。4)网络管理员:用来完成所有与网络相关的管理与操作。 Linux系统中对权能的定义 系统将系统管理的权限进行分割,共30种权能:例如,超越

12、改变系统文件所有者和组所有的的特权;超越所有自主访问控制机制的约束的特权;超越所有强制访问控制机制的约束的特权;修改文件属性的特权;写审计文档的特权;配置进程记帐的特权;打开或关闭缓冲区的特权;删除信号量的特权; Linux系统中对权能的定义文件系统上设置加密口令的特权;安装或卸下文件系统的特权;改变和设置进程安全的级特权;改变和设置文件安全级的特权;处理系统时钟和设置实时时钟的特权;设置加密密钥的特权,等等。基于Linux的权能构造最小特权机制要在Linux系统中实现最小特权管理,可以参照多级安全模型对强制访问控制机制的实现方法,对系统中的每个可执行文件赋予相应的特权集,同时对于系统中的每个

13、进程,根据其执行的程序和所代表的用户,也赋予相应的特权集。 新进程继承的特权新进程继承的特权既有进程的特权,也有所运行文件的特权,称为“基于文件的特权机制”。这种机制的最大优点是特权的细化,其可继承性提供了一种执行进程中增加特权的能力。 1)文件的特权的实现 可执行文件具有两个特权集,当通过exec系统调用时,进行特权的传递。 固定特权集:固有的特权,与调用进程或父进程无关,将全部传递给执行它的进程。 可继承特权集:只有当调用进程具有这些特权时,才能激活这些特权。 这两个集合是不能重合的,即固定特权集与可继承特权集不能共有一个特权。2)进程的特权 当fork一个子进程时,父子进程的特权是一样的

14、。但是,当通过exec执行某个可执行文件时,进程的特权取决于调用进程的特权集和可执行文件的特权集。每个进程都具有三个特权集: 最大特权集(permitted privileges set):可能具有的最大特权。 可继承特权集(inheritable privileges set):决定进程执行exec后进程是否保留提升后特权的特权集。 有效特权集(effective privileges set):进程当前使用的特权集。新进程时的特权计算 调用进程调用进程继承特权集3,5,9最大特权集3,5,9有效特权集5继承特权集3,9固定特权集2,6可执行文件继承特权集3,5,9最大特权集2,3,6,9有

15、效特权集2,3.6,9exec( ) ( 3)权能表的修改 为在Linux系统中实现最小特权机制,可以在Linux/include/Linux/capabilities中加入以下几项能力: 1)CAP_MAC_READ 用来超越强制访问控制机制的读访问限制。 2)CAP_MAC_WRITE 用来超越强制访问控制机制的写访问限制。 3)CAP_AUDIT 用来管理审计系统的权限。(4)进程的特权在Linux系统的进程结构中,已经有三个向量表示进程的特权类型:cap_ effective、cap_inheritable、cap_permitted。它们是kernel_cap_t类型(无符号长整形)

16、的数据。进程的有效特权集(cap_effective)表明了进程当前使用的特权情况,进程的最大特权集(cap_permitted)表明了进程可拥有的最多特权,进程的可继承特权集(cap _inheritable)包含进程下一步exec新文件时所拥有的特权集。kernel _cap _t类型是一个无符号整数表示,共32位,每一个位表示系统细分的一命特权。(5)文件的特权 对于文件特权的实现,可以以特权数据库来表示,例如,可以创建核心特权文件filepriv,其入口项的格式如下所示:“dev:fid:valid:fixed privileges:inher privileges:path name

17、”格式其中,dev:表示包含该文件的设备;fid:表示该文件的ID号;valid:以十进制串的形式表示inode中标记该文件状态最近一次被修改的时间;fixed privilege:文件的固定特权;inher privilege:文件的可继承特权;path name:文件的绝对路径名。安全审计的实现 安全操作系统中的安全审计,要求为下述可审计事件产生审计记录: 1)审计功能的启动和关闭; 2)使用身份鉴别机制; 3)将客体引入用户地址空间(例如:打开文件、程序初始化); 4)删除客体; 5)系统管理员、系统安全员、审计员和一般操作员所实施的操作; 6)其他与系统安全有关的事件或专门定义的可审计

18、事件。 审计记录应包括事件的日期和时间、用户、事件类型、事件是否成功,及其他与审计相关的信息。特别地,对于身份鉴别事件,审计记录应包含请求的来源(如终端标识符);对于客体被引入用户地址空间的事件及删除客体事件,审计记录应包含客体名及客体的安全级别。 审计缓冲区 审计点审计点审计点审计系统调用内核审计进程审计日志文件用户态核心态循环缓冲审计系统自身的安全保护 程序和代码的安全 在发布的系统中,只提供执行代码,源程序不可见,对用户屏蔽了系统的工作细节。 审计数据的采集记录部分集成到安全内核,审计进程的执行不受外界影响,核外的应用程序(审计管理员配置程序和审计数据显示分析程序)则严格遵循强制访问控制MAC和最小特权控制PAC,保证只有审计管理员才能使用这些程序。系统配置和审计数据的安全配置文件包括系统和用户审计标准、审计系统的运行参数、审计事件的定义等,这些文件也必须施加MAC控制。 操作系统安全测评准则美国国防部于1983年推出了历史上第一个计算机系统安全评测准则TC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论