GooAnn CISSP TrainingGooAnn CISSP TrainingSecurity Architecture and Design 安全架构与设计2内容目录内容目录uu保护保护机制机制uu安全模型安全模型uu系统测评系统测评3uu保护保护机制机制uu安全模型安全模型uu系统测评系统测评4保护机制的基本概念保护机制的基本概念• 主体和客体 – 主体,即主动实体,导致信息在系统中流动及改变系统状 态的用户或进程等 – 客体,包含或接受信息的被动实体,如文件、内存块等 • 安全策略 – 一系列的规则、实践和过程的组合,指示敏感信息如何管 理、保护和发布 – 多层次安全策略: Multilevel security policy,防止信息从高 级别安全流向低安全级别的安全策略这种类型策略只允 许一个主体在其安全级别高于或等于对象安全分类时才能 访问该对象 • 安全机制 – 实现安全策略的一整套软件、硬件的实体,它的作用就是 保证安全策略的实现5保护机制:保护机制:TCBTCB• TCB是计算机系统内保护机制的总体, 包括硬件、固体、软 件和负责执行安全策略的组合体 • TCB由一系列的部件构成,在产品或系统中执行统一的安 全策略。
• TCB的三个要求 – TCB必须保证其自身在一个域中的执行,防止被外界干扰或破坏 – TCB所控制的资源必须是已经定义的主体或客体的子集 – TCB必须隔离被保护的资源,以便进行访问控制和审计 • TCB维护每个域的保密性和完整性,监视4个基本功能 – 进程激活:Process activation – 执行域的切换:Execution domain switching – 内存保护:Memory protection – I/O操作:I/O operation6保护机制:保护机制:Reference MonitorReference Monitor• RM是一个抽象机的访问控制概念,基于访问控制 数据库协调所有主体对客体的访问 • RM的任务 – 根据访问控制数据库,对主体对客体的访问请求做出 是否允许的裁决,并将该请求记录到审计数据库中 注意:基准监视器有动态维护访问控制数据库的能力 u RM的特性:Ø 执行主体到对象所有访问的抽象机Ø 必须执行所有访问,能够在修改中被 保护,能够恢复正常,并且总是被调 用Ø 处理所有主体到客体访问的抽象机7保护机制:保护机制:Security KernelSecurity Kernel• 安全内核是TCB中执行引用监视器概念的硬件、固件和软 件元素 • 理论基础:在一个大的操作系统中,只将相对比较小的一 部分软件负责实施系统安全,并将实施安全的这部分软件 隔离在一个可信的安全核,这个核就称为安全核。
• 需要满足三个原则 – 完备性:协调所有的访问控制 – 隔离性:受保护,不允许被修改 – 可验证性:被验证是正确的 • 安全核技术是早期构建安全操作系统最为常用的技术,几 乎可以说是唯一能够实用的技术 • 引用监视器RM是概念,抽象的机器,协调所有主体对对 象间的访问;安全内核是硬件,是TCB中执行RM的部分 ,TCB中除安全内核外还有其它安全机制8保护机制:保护机制:Protection RingProtection Ring• 一组同心的编号环 – 环数决定可以访问的层次,越低的环数表示越高的特 权 – 程序假定执行环数的位置 – 程序不可以直接访问比自身高的层次,如需访问,系 统调用(system call) • 一般使用4个保护环: – Ring 1 操作系统安全核心 – Ring 2 其他操作系统功能 – 设图示控制器 – Ring 3 系统应用程序,数据库功能等 – Ring 4 应用程序空间1 2 349保护机制:保护机制:Security LabelsSecurity Labels• 分配给一个资源以说明分类级别 • 根据标签以及主体的级别确定主体是否可以访问 客体资源 • 不常改变 • 是一种有效的访问控制机制 • 需要额外的验证开销10保护机制:保护机制:Security DomainSecurity Domain• 安全内核和其它联系安全的系统功能都限制在一 个TCB边界内,即安全区域 • 安全区域以外的系统元件不需要是可靠的。
例如 ,一个完全的计算机系统或者一个局域网应该属 于安全区域内部,通过网关同外部的系统和网络 相连接 • 安全边界,Security perimeter – 将TCB与系统的其它部分隔离的边界11保护机制:分层• 不同的领域有不同的安全要求,在不同的层次执行,用户端 ,数据端或操作端,因而安全机制可应用于硬件、内核、 OS、业务和程序等各个层次 • 操作系统设计的一个重要概念是将安全机制放置在系统的低 层应用,用户进程编译器,数据库管理应用功能,系统,设备分 配,调度,内存管理同步,资源分配安全功能硬件操作系 统 操作系 统内核安全内 核12保护机制:进程隔离,硬件分离,最小特权保护机制:进程隔离,硬件分离,最小特权• 进程隔离,Process Isolation – 进程可以互不干扰地运行 – 每个进程都被分配了各自的内存空间,多个进程并发 运行时不会相互影响 – 在进程切换时系统跟踪进程的所有状态,如寄存器等 • 硬件分离,Hardware Isolation – 将TCB与系统中其它不可信的部分隔离 • 最小特权,Least Privilege – 一个进程只拥有它运行所需的权限和访问,只有需要 完全特权的进程才可以运行在内核,其他进程只当需 要时才调用这些特权进程。
13保护机制:保护机制:HardeningHardening• 传统的Hardening针对操作系统,指保护内核、内存不受其 它在主机上已运行程序的影响 • 目前这个概念已经扩展到网络 接口上,用于限制可运行的 服务和行为 • 涉及系统的各个方面: – 物理和逻辑访问 – 操作系统 – 应用 – 数据接口 • 一些硬件厂商目前提供相应系统的hardening版本,如用于 访问控制的sandbox层次,用于分离资源和访问请求14uu保护保护机制机制uu安全模型安全模型uu系统测评系统测评15安全模型的基本概念安全模型的基本概念• “模型”是一个综合的概念,是具体事物的高度 抽象信息安全的模型是用来描述基本的安全目 标、安全特征或技术的基本组成的一种工具,其 目的是以简洁明了形式说明安全功能的设计和开 发中应该考虑的事项,信息安全模型中往往也包 括了工程实践中的经验和某些具体的考虑 • 安全策略提供了实现安全的抽象目标,安全模型 将抽象的安全策略目标映射为信息系统的表达, 通过确定的数据结构和必要的技术执行行安全策 略16信息安全模型分类信息安全模型分类• 访问控制模型,Access control models, – 也称为保密性模型(Confidentiality Model) – 状态机 – Bell-LaPadula – 访问矩阵模型 – Take-Grant模型 • 完整性模型,Integrity Models – Biba模型 – Clark 信息 流模型防止所有未授权的信息流,无论是否在同一级别 •信息被限制在策略允许的方向流动19Bell-LaPadula Bell-LaPadula 模型模型• 1973年,David Bell和Len LaPadula提出了第一个正式的安 全模型,该模型基于强制访问控制系统,以敏感度来划分 资源的安全级别。
将数据划分为多安全级别与敏感度的系 统称之为多级安全系统 • 为美国国防部多级安全策略形式化而开发 • Bell-LaPadula保密性模型是第一个能够提供分级别数据机 密性保障的安全策略模型(多级安全) • 特点: – 信息流安全模型 – 只对机密性进行处理 – 运用状态机模型和状态转换的概念 – 基于政府信息分级——无密级、敏感但无密级、机密、秘密、绝密 – “Need to know”——谁需要知道? – 开始于安全状态,在多个安全状态中转换(初始状态必须安全,转变结果 才在安全状态)20Bell-LaPadula Bell-LaPadula 模型安全规则模型安全规则• 简单安全规则ss (Simple Security Property ) – 安全级别低的主体不能读安全级别高的客体信息(No Read Up) • 星规则* The * (star) security Property – 安全级别高的主体不能往低级别的客体写(No write Down) – 强星规则 Strong * property • 不允许对另一级别进行读取 • 自主安全规则ds (Discretionary security Property ) – 使用访问控制矩阵来定义说明自由存取控制 – 内容相关 Content Dependent – 上下文相关Context Dependent21BLPBLP模型的缺陷模型的缺陷• 不能防止隐蔽通道(covert channels) • 不针对使用文件共享和服务器的现代信息系统 • 没有明确定义何谓安全状态转移(secure state transition) • 基于多级安全保护(multilevel security)而未针对其他 策略类型 • 不涉及访问控制管理 • 不保护完整性和可用性22BibaBiba模型模型• 完整性的三个目标:保护数据不被未授权用户更改;保护 数据不被授权用户越权修改(未授权更改);维持数据内部 和外部的一致性 • 1977作为Bell-Lapadula的完整性补充而提出, 用于非军事行 业 • Biba基于一种层次化的完整性级别格子(hierarchical lattice of integrity levels),是一种信息流安全模型。
• 特点:– 基于小于或等于关系的偏序的格 • 最小上限(上确界), least upper bound (LUB) • 最大下限(下确界),greatest lower bound (GLB) • Lattice = (IC,<= , LUB, GUB) – 数据和用户分级 – 强制访问控制23完整性公理完整性公理 Integrity AxiomsIntegrity Axioms• 简单完整条件:一个主体能够对一个客体持有read 访问方式,仅当客体的完整性级别支配主体的完 整性级别 No read down • 完整性星规则:一个主体能够对一个客体持有 write访问方式,仅当主体的完整性级别支配客体 的完整性级别 No write up • 援引规则:一个主体能够对另一个主体持有调用 (invoke)访问方式,仅当第一个主体的完整性级别 支配第二个主体的完整性级别24LatticeLattice模型模型•Lattice 模型通过划分安全边界对BLP模型进行了扩充,它将用 户和资源进行分类,并允许它们之间交换信息,这是多边安全 体系的基础 •多边安全的焦点是在不同的安全集束(部门,组织等)间控制 信息的流动,而不仅是垂直检验其敏感级别。
•建立多边安全的基础是为分属不同安全集束的主体划分安全等 级,同样在不同安全集束中的客体也必须进行安全等级划分, 一个主体可同时从属于多个安全集束,而一个客体仅能位于一 个安全集束 •在执行访问控制功能时,lattice模型本质上同BLP模型是相同的 ,而lattice模型更注重形成“安全集束“BLP模型中的“上读下写 “原则在此仍然适用,但前提条件必须是各对象位于相同的安全 集束中主体和客体位于不同的安全集束时不具有可比性,因 此在它们中没有信息可以流通25Clark-WilsonClark-Wilson模型模型• 在1987年被提出的– 经常应用在银行应用中以保证数据完整性 – 实现基于成形的事务处理机制 – 要求完整性标记 •。