CISSP官方学习指南第7版#第8章


=Start=

缘由:

备考CISSP,学习、整理在看《CISSP官方学习指南(第7版)》时的一些知识点,方便以后快速复习。

正文:

参考解答:
第8章 安全模型的原则、设计和功能

本章中覆盖的CISSP考试大纲包含:
3) 安全工程(安全的工程学和管理)
• A.使用安全设计原则实施和管理工程过程
• B.理解安全模型的基本概念(例如,机密性、完整性和多级模型)
• C.根据系统安全评价模型选择控制与对策
• D.理解信息系统的安全保障能力(例如,内存保护、虚拟化、信任平台模型、接口、故障容错)

理解安全解决方案后面隐含的基本原则,通常有助于缩小搜寻满足特定情况下、特定安全需求的最佳控制方法的范围。在本章中,我们将讨论安全模型,包括状态机、Bell-LaPadula,Biba、Clark-Wilson、Take-Grant以及Brewer和Nash模型。本章还将讨论政府和公司用于从安全性角度评估信息系统的通用准则和其他方法,并且着重讲述美国国防部和国际性的安全评估标准。最后,我们会讨论导致信息系统易受攻击的常见设计缺陷和其他安全相关问题。

决定如何保护系统安全的过程是十分困难且非常耗时的。在这一章中,我们将会描述这个过程,以及这个过程涉及的用于评估计算机系统的安全级别。我们将首先介绍和解释用于描述信息系统安全性的基本概念和术语,并且对安全计算、安全边界、安全性和访问监控器以及内核代码进行讨论。随后,我们将通过安全模型来阐述如何实现访问和安全控制。我们还会简要介绍如何对系统安全进行分类(例如,开放式或封闭式),描述一组用于确保数据机密性、完整性和可用性的标准安全技术;讨论安全控制以及介绍一套标准的安全网络连接协议组。

8.1 使用安全设计原则实施和管理工程过程

在每一个系统的开发阶段都应该考虑安全,程序员应该努力为他们开发的每一个应用安全,提供更高层次的安全性给关键应用程序和那些处理敏感信息的应用程序。在开发项目的早期阶段考虑安全是非常重要的,因为它比将安全添加到现有系统中更容易实现。下面将讨论的一些基本安全原则被应用在实施和管理硬件或软件项目工程的早期过程中。

8.1.1 客体和主体

对安全系统中任何资源的访问控制涉及两个实体。主体是请求访问资源的用户或进程。访问的意思是可以对资源进行读或写操作。客体是用户或进程想要访问的资源。需要记住的是,主体和客体针对特定的访问请求,因此对于不同的同一资源既可以成为主体,也可以在不同的访问请求中成为客体。

8.1.2 封闭式系统和开放式系统

可以根据下列两种不同的理念来设计和构建系统:封闭式系统被设计用于与较小范围内的其他系统协同工作,通常所有系统都来自相同的制造厂商。封闭式系统的标准一般是专有的,通常不对外公开。另一方面,开放式系统被设计为使用统一的行业标准。这些开放式系统比较容易与来自不同制造厂商但支持相同标准的系统集成在一起。

封闭式系统很难与不同的系统集成在一起,但是它们更为安全。封闭式系统通常由专用硬件和软件组成,这些软硬件是不符合行业标准的。缺乏容易集成的特点,意味着针对许多普通系统组件的攻击可能不起作用,或者这些攻击需要经过定制才能成功。许多情况中,攻击封闭式系统比攻击开放式系统更难。许多具有己知脆弱性的软件和硬件组件在封闭式系统中可能不存在。除了封闭式系统不存在己知的易受攻击的组件之外,要想、发动一次成功的攻击往往需要对具体目标系统进行比较深入的了解。

一般来说,一个开放式系统与其他开放式系统相集成较为容易。例如,使用Microsoft Windows Server的计算机、使用Linux的计算机和使用Macintosh的计算机之间很容易建立LAN。虽然这三种计算机使用不同的操作系统,而且至少代表着三种不同的硬件体系结构,但是它们都支持行业标准,并使得网络通信(或其他通信)变得容易。不过,这种便利的特性总是伴随着很高的代价。因为标准的通信组件被并入上述三种开放式系统,所以存在许多发动攻击的入口点和方法。通常,这种系统的开放性是他们更容易受到攻击。

开源与闭源
记住开源和闭源系统之间的区别是有用的。开源解决方案是指源代码和其他内部逻辑对公众开放,闭源解决方案是指源代码和其他内部逻辑对公众是隐藏的。开源解决方案往往于公众的检查和审计,并随着时间的推移改进产品。闭源解决方案更依赖于供应商/程序员,并随着时间的推移改进产品。开源和闭源解决方案都可供出售或不收费,但长期的商用通常意味着闭源。然而,闭源代码往往是通过厂商被迫的或通过反编译进行披露。前者通常是对道德和法律的违背,而后者是道德逆向工程或系统分析的标准元素。
也有这样的情况,闭源程序既可是开放式系统,也可以是封闭式系统;对于开源程序也同样如此。

8.1.3 用于确保机密性、完整性和可用性的技术

为了保证数据的机密性、完整性和可用性,必须确保对数据进行访问的所有组件都是安全的和工作状态良好的。软件设计人员使用不同的技术来确保所设计的程序只完成要求它做的事情,而不会多做其他事情。

1.限制
软件设计人员使用进程限制来约束程序的操作。简单来讲,进程限制允许进程只能在确定的内存地址和资源中读取和写入数据。这就是常说的沙箱。

2.界限
在系统上运行的每一个进程都被分配了一个授权级别。授权级别告知操作系统进程可以执行哪些操作。在比较简单的系统中,可能只存在两个授权级别:用户和内核。授权级别告知操作系统该如何为进程设定界限。进程的界限由对进程可以访问的内存和资源所设置的限制组成。

3.隔离
当通过实施访问界限对进程进行限制时,进程就运行在隔离状态中。进程隔离能够确保任何行为只影响与隔离进程有关的内存和资源。隔离用来保护操作环境、操作系统的内核和其他独立的应用程序。隔离是稳定操作系统的重要组成部分之一。隔离能防止某个应用访问只属于另一个应用程序的内存或资源,无论是好意的还是恶意的。

8.1.4 控制

为了确保系统的安全性,必须只有经过授权的主体才允许访问客体。控制使用访问规则来限制主体对客体的访问。访问规则声明了每个主体相对应的合法客体。

有两种控制:强制访问控制和自主访问控制,分别被称为MAC(Mandatory Access Control)和DAC(Discretionary Access Control)。

自主访问控制与强制访问控制的不同之处在于:主体具有一些定义访问客体的能力。在受到限制的情况下,自主访问控制允许主体根据需要定义访问客体的列表。这个访问控制列表作为动态的访问规则组,并且主体能够对其进行修改。更改己实施的限制,通常与主体的身份有关。根据主体的身份,可以允许主体增加或修改访问客体的规则。

强制访问控制和自主访问控制都限制主体对客体的访问。访问控制的主要目的是:通过阻止授权或未经授权主体的未授权访问,从而确保数据的机密性和完整性。

8.1.5 信任与保证

为了生成可靠的安全产品,在体系化设计和开发之前及期间,必须集成适当的安全原则、控制和机制。安全问题不应当在事后才加以考虑,否则就会导致失察、成本增加以及可靠性降低。安全性一旦被集成到设计中,就必须被计划、实现、测试、审计、评估、认证和最后认可。

可信系统是所有保护机制都协同工作的系统,从而能够在维护稳定和安全的计算环境的同时,为许多类型的用户处理敏感数据。保证被简单地定义为:满足安全需求的可信度。保证必须被持续地维持、更新和重新验证。无论可信系统经历己知的变化还是经过大量时间,这一点都是正确的。在任何一种情况下,变化都在某个级别上发生。变化往往是安全的对立面,并且常常降低安全性。

8.2 理解安全模型的基本概念

在信息安全中,模型提供了一种正式的安全策略的方式。

安全模型允许设计人员将抽象语句映射为描述构建硬件和软件所需算法和数据结构的安全策略。因此,安全模型使软件设计人员能够衡量自己的设计和实现。当然,这种模型必须支持安全策略的每个部分。通过这种方式,开发人员就能确认自己的安全实现可以支持安全策略。

如下所示,必须学习若干安全模型;所有这些模型都阐明了如何在计算机体系结构和操作系统设计中加入安全性:
• 可信计算 模型
状态机 模型
信息流 模型
• 非干扰 模型
• Take-Grant 模型
• 访问控制表
Bell-LaPadula 模型
Biba 模型
Clark-Wilson 模型
• Brewer and Nash 模型(也被称为 Chinese Wall 模型)
• Goguen-Messguer 模型
• Sutherland 模型
• Graham-Denning 模型

尽管没有任何系统是绝对安全的,但是可以适当地设计和构建安全的系统。事实上,如果某个安全的系统遵循特定的安全标准组,那么就可以说这个系统具备某种信任级别。因此,信任可以被构建在系统内,随后能够被评估、认证和认可。但是在讨论每种安全模型之前,必须建立构建大多数安全模型的基础。这个基础就是TCB(Trusted Computing Base,可信计算基础)。

8.2.1 可信计算基(TCB)

橘皮书是美国国防部较早的一个标准(DoD Standard 5200.28,本章后面的”彩虹系列”部分会进行更详细的介绍)的俗称,这个标准将可信计算基(TCB)描述为硬件、软件和控制方法的组合,这个组合形成了实施安全策略的可信任基准。

1.安全边界
系统的安全边界是一条假想的界限,它将TCB与系统的其他部分隔开。这条边界确保TCB与计算机系统中其他部件的不安全通信或交互不会发生。因为TCB要与系统的其他部分进行通信,所以安全边界必须建立安全的通道,也被称为可信路径。可信路径是建立在有着严格标准基础上的通道,在不受TCB安全脆弱性影响的情况下准许进行必要的通信。可信路径也保护系统用户(有时也称为主体)不受因TCB交换导致的危害。

2.引用监控器和内核
在实现安全系统时,必须利用TCB的某部分来实施针对系统资产和资源(有时称为客体)的访问控制。在准许访问请求之前验证对每种资源的访问的这部分TCB被称为引用监控器。引用监控器处于每个主体和客体之间,并且在准许进行任何访问请求之前验证请求主体的凭证是否满足客体的访问需求。如果不满足这种访问需求,那么访问请求就会被拒绝。实际上,引用监控视器是TCB的访问控制执行者。因此,授权和安全的行动和活动被允许发生,而未经授权的和不安全的活动和行动被拒绝并阻止发生。引用监控器对访问控制或授权的强制基于所需的安全模型,无论是自由支配的、强制性的、基于角色的还是访问控制的一些其他形式。引用监控器可能是TCB概念的一部分;它并不需要是一个实际的、独立的或独立工作的系统组成部分。

8.2.2 状态机模型

状态机模型描述了一个无论处于何种状态下总是安全的系统,这种模型基于有限状态机(FiniteStateMachine,FSM)的计算机科学定义。FSM通过组合外部输入和内部计算机状态来建立所有类型的复杂系统的模型,包括解析器、解码器和解释器。给定一个输入和一个状态,FSM就会转换至另一个状态,并且可能生成一个输出。从数学上讲,下一状态是当前状态和输入的函数:下一状态=F(输入,当前状态)。同样,输出也是输入和当前状态的函数:输出=F(输入,当前状态)。
许多安全模型都基于安全状态的概念。根据状态机模型,状态是系统在特定时刻的即时快照。
如果某个状态的所有方面都满足安全策略的要求,那么这个状态就被认为是安全的。接受输入或生成输出时都会发生转换操作。转换操作总是会产生新的状态(也被称为状态转换)。所有的状态转换都必须进行评估。如果每个可能的状态转换都会导致另一个安全状态,那么系统就会被称为安全状态机。安全状态机模型系统,总是会进入一个安全状态(在所有的转换中维护安全状态),并且准许主体只以遵循安全策略的安全方式访问资源。安全状态机模型是其他许多安全模型的基础。

8.2.3 信息流模型

信息流模型关注于信息流。信息流模型以状态机模型为基础。本章稍后我们将要详细讨论的Bell-LaPadula和Biba模型都是信息流模型。Bell-LaPadula模型的目的是防止信息从高安全级别向低安全级别流动,Biba模型的目的是防止信息从低安全级别向高安全级别流动。信息流模型不一定只对信息流的方向进行处理,它们还可以涉及信息流的类型。
信息流模型被设计用于避免未授权的、不安全的或受限的信息流。

8.2.4 无干扰模型

无干扰模型松散地建立在信息流模型的基础上。然而,无干扰模型关注的是位于较高安全级别的主体的动作如何影响系统状态,或关注于位于较低安全级别的主体的动作,而不是关注于信息流。

8.2.5 Take-Grant模型

Take-grant模型采用有向图来指示权限如何从一个主体传递至另一个主体或者如何从一个主体传递至一个客体。简单地讲,具有授权资格的主体可以向另一个主体或客体授予其所拥有的其他任何权限。同样,具有获得权限能力的主体可以从另一个主体获得权限。除了这两条主要的规则,Take-grant(取-予)模型可采取创建规则和移除规则来生成或删除权限。这种模型的关键是使用这些规则可以让你弄清楚在系统中哪些权限可以改变,哪些可能发生泄漏(即许可权限的意外分配)。

8.2.6 访问控制矩阵

访问控制矩阵是一个由主体和客体组成的表,这个表指示了每个主体可以对每个客体执行的动作或功能。访问控制矩阵的每一列都是一个访问控制列表;表的每一行都是功能列表。ACL与客体相关,它列出了每个主体可以执行的有效动作。功能列表与主体相关,它列出了可以在所有客体上执行的有效动作。

8.2.7 Bell-LaPadula模型

为了解决保护分类信息的问题,美国国防部(Department of Defense,DoD)在20世纪70年代开发了Bell-LaPadula模型。DoD管理着分类资源的多个级别,并且Bell-LaPadula模型衍生自DoD的多级安全策略。DoD使用的分类级别众多,不过在CISSPCBK内讨论的分类级别往往被限制为4个:非机密、机密、秘密以及绝密。
在设计上,Bell-LaPadula模型防止了分类信息或传输至较低的安全许可级别。通过阻止较低分类级别的主体访问较高分类级别的客体,就可以实现这个目的。根据这些限制,Bell-LaPadula模型专注于维护客体的机密性。因此,Bell-LaPadula模型解决了确保文档机密性所涉及的复杂性问题。然而,Bell-LaPadula模型没有说明客体的完整性或可用性方面的内容。Bell-LaPadula模型也是多级安全策略的首个数学模型。

Bell-LaPadula模型只解决数据的机密性问题,但是没有涉及数据的完整性和可用性。

8.2.8 Biba模型

对于很多非军事组织来说,完整性比机密性更为重要。除了这种需要之外,许多关注于完整性的安全模型也已开发出来,例如,由Bi怡和Clark-Wilson开发的Biba模型。Biba模型是仿照Bell-LaPadula模型设计的。Bell-LaPadula模型解决了机密性问题,而Biba模型则解决了完整性问题。Biba模型也是建立在状态机概念的基础之上。

8.2.9 Clark-Wilson模型

尽管Biba模型适合于商用,不过人们还是在1987年为商业环境专门设计了另一种模型:Clark-Wilson模型。这种模型使用多层面途径来实施数据完整性。

8.2.10 Brewer and Nash模型(也叫作Chinese Wall)

创建这种模型的目的是准许访问控制基于用户以前的活动而动态改变(这也使其成为一种状态机模型)。

8.2.11 Goguen-Meseguer模型

Goguen-Mesegue型是一个完整性模型,尽管它不如Biba和其他模型有名。实际上,这个模式被称作非干涉概念理论的基础。通常当某人讲非干涉模型时,他们实际指的是Goguen-Meseguer模型。

8.2.12 Sutherland模型

Sutherland模型是一个完整性模型。它的重点是预防对完整性支持的干扰。它正式地基于状态机模型和信息流模型。然而,它并没有直接表明保护完整性的具体机制。相反,该模型基于定义一组系统状态的想法,以及初始状态和状态转换。通过使用这些预定的安全状态来保护完整性和阻止干扰。

8.2.13 Graham-Denning模型

Graham-Denning模型关注主体和客体在创建和删除时的安全性。

8.3 基于系统安全评估模型选择控制和对策

这里将介绍的三个主要评估模型或分级标准模型产品是TCSEC、ITSEC和通用标准。

8.3.1 彩虹系列

8.3.2 TCSEC分类和所需功能

TCSEC将系统提供的功能性和机密性保护等级保证组合为4个主要类别。这些类别随后又被进一步划分为使用数字标识的子类别(例如,C1和C2)。进一步说,TCSEC的类别是通过对目标系统的评估来指派。TCSEC适用的系统是没有互联的独立系统。TCSEC定义了下列主要类别:

类别A——己验证保护,这是最高的安全级别
类别B——强制性保护
类别C——自主性保护
类别D——最小化保护,提供给那些被评估但不符合要求且属于其他类别的系统定级之用

8.3.3 彩虹系列中的其他颜色

注意:
重要的是要明白:彩虹系列的大部分书籍现在已经过时,并已被更新的标准、准则和指令替换。但是它们仍然在这里列出以供参考,以应对任何考试题目。

8.3.4 ITSEC类别与所需的保证和功能性

ITSEC代表欧洲创建安全评估标准的最初尝试,并且是作为TCSEC指导原则的可选方案被开发出来的。ITSEC指导原则使用不同的类别等级来评估系统的功能性和保证。在这种环境下,系统的功能性是针对系统用户的实用价值进行衡量。系统的功能性等级描述了系统基于设计和预期目的执行所需功能的情况。保证等级表示系统以一致的方式正常工作的可靠程度。

TCSEC和ITSEC之间的差异十分多样化。下面列出了两个标准之间的一些重要差异:
•尽管TCSEC几乎只关注机密性,但是ITSEC除了机密性之外还关注TCSEC缺少的完整性与可用性,因此覆盖了对于维护完整信息的安全性十分重要的所有三个元素。
ITSEC并不依赖于TCB的概念,并且不要求系统的安全组件在TCB内是隔离的。
TCSEC要求任何发生变化的系统都要重新进行评估,这些变化包括操作系统的升级、安装补丁或修复,以及应用程序的升级或变化等;ITSEC在这些变化之后不要求进行新的正式评估,而是只维护评估目标。

8.3.5 通用准则(Common Criteria)

通用准则几乎是全球性的标准,涉及使用TCSEC和ITSEC以及其他标准的所有人员。最终,这导致人们能够购买CC评估的产品,其中CC(CommonCriteria)表示通用准则。通用准则定义了测试和确认系统安全能力的各种级别,其中级别数表明己执行测试和配置的种类。然而,我们必须认识到:即使是最高的CC等级,也并不等同于保证系统安全或者完全没有会被加以利用的脆弱性或敏感性。通用准则被设计用做产品评估模型。

1.通用准则的认可
通用准则过程基于两个关键元素:保护轮廓和安全目标。保护轮廓(ProtectionProfiles,PP)指定被评估产品(TOE)的安全需求和保护,这也是客户考虑的安全要求或”希望达到的标准”。安全目标(SecurityTargets,ST)指定了供应商在TOE内构建的安全声明。ST被视为己实现的安全措施或供应商”提供的安全目标”。除了提供安全目标之外,供应商还提供额外的安全特性包。包是安全需求组件的中间分组,既可以被添加到TOE中,也可以从下TOE中去除(就像购买新车时的可选包一样)。
将PP与选定供应商的TOE中的各种ST进行比较,最接近或最匹配的就是客户要购买的。

2.通用准则的结构
CC指导原则被分为下列三部分:
部分1——介绍和一般模型描述(lnoductionandGeneralModel)用于评估IT安全性和指定评估目标时涉及的一般概念与基本模型。对于不熟悉安全评估工作过程的人,或者阅读和解释评估结果时需要寻求帮助的人来说,这部分是非常有用的介绍和说明材料。
部分2——安全功能需求(S巳curityFunctionalRequirement)描述与安全审计、通信安全、安全性的密码学支持、用户数据保护、身份标识和身份认证、安全管理、TOE安全功能σSF)、资源利用、系统访问以及可信路径有关的各种功能需求。这部分覆盖cc评估过程中能够预想到的完整安全功能范围,井且还具有解释每个功能区域的额外附录。
部分3——安全保证(SecurityAssurance)涉及TOE在配置管理、传送和操作、开发、指导文档与生命周期支持领域的保证需求,以及保证测试和脆弱性的评估。这部分覆盖cc评估过程中预想到的安全保证检查和保护轮廓的完整范围,并且还具有与描述如何设计、检查和测试系统的评估保证级别相关的信息。

3.行业和国际安全实施指南
除了整体的安全访问模型,如常见的CC标准,还有许多其他用于存储、通信、事务等各个方面的更具体或集中的安全标准。有两个标准你应该熟悉,它们是支付卡行业数据安全标准(PCI-DSS)和国际标准化组织(ISO)。

8.3.6 认证和鉴定

要求系统安全的组织需要通过一种或多种方法来评估系统满足安全要求的程度。正式的评估过程被分为两个阶段:认证和鉴定。

1.认证
整个评估过程中的第一个阶段是认证。认证是对IT系统的技术和非技术安全特性以及其他防护措施的综合评估,这能够支持鉴定过程,从而确定特定设计和实现满足一组指定安全要求的程度。

2.鉴定
在认证阶段,我们测试和记录了具有特定配置的系统的安全能力

注意:
认证和鉴定似乎是相似的,因此真正理解它们往往非常困难。可以参照的一个观点是:认证通常是内部的安全验证,只有你所在的组织才相信验证结果;鉴定通常是由第三方测试服务执行的,其结果在信任特定测试组织的所有人看来都是可信的。

3.认证和鉴定系统

8.4 理解信息系统的安全功能

信息系统的安全功能包括内存保护、虚拟化、可信平台模块、接口和容错能力。认真评估基础设施的各方面,并确保充分支撑安全是非常重要的。如果不了解信息系统的安全功能,就不可能对它们进行评估,也不可能恰当地使用它们。

8.4.1 内存保护

内存保护是一个核心的安全组件,必须对它进行设计和在操作系统中加以实现。无论程序是否在系统中执行,它都必须被执行。否则将导致不稳定、完整性的违反、拒绝服务以及信息泄露的结果。内存保护被用于防止活动进程与没有专门指派或分配的内存区域进行交互。

8.4.2 虚拟化

虚拟化技术被用于在单一主机的内存中运行一个或多个操作系统。这种机制允许在任意硬件上虚拟运行任何操作系统,也允许多个操作系统同时工作在相同的硬件上。

8.4.3 可信平台模块

可信平台模块(TPM)既是对主板上加密处理器芯片的描述,同时也是描述实施的通用名称。TPM芯片用于存储和处理加密密钥,从而满足基于硬件支持/实现的硬盘加密系统。一般来说,用硬件实现比用纯软件实现硬盘加密更安全。

8.4.4 接口

在应用程序中,使用约束或受限接口的目的是限制用户在基于他们的权限上可以做什么或看到什么。具有全部权限的用户可以访问应用程序的所有功能。有限制权限的用户则被限制访问。应用程序使用不同的方法来限制接口。一个常见的方法是:如果用户没有使用功能的权限,就将功能隐藏。命令可通过菜单或右击一项提供给管理员来使用,但如果普通用户没有权限,命令则不会出现。其他时候命令可被显示,但被变暗或禁用。普通用户虽然可以看到,但无法使用。
约束接口的目的是限制或制止授权和未经授权用户的行为。这接口的使用就是Click-Wilson安全模型的一种实践应用。

8.4.5 容错

容错能力是指系统遭受故障,但能持续运行的能力。容错是添加冗余组件,如在廉价磁盘冗余阵列(RFID)中添加额外的磁盘,或在故障转移集群配置中添加额外的服务器。容错是安全设计的一个基本要素,被认为是避免单点故障和实现冗余的部分措施。

8.5 本章小结

安全系统不仅仅是组装起来;它们需要通过设计来支持安全性。系统的安全性必须通过它们的能力是否支持和执行了安全策略来判断。判断计算机系统的有效性,这一评估过程是认证。认证过程是对系统能力满足设计目标的技术评估。一旦系统己经令人满意地通过了技术评估,组织的管理层就开始对系统进行正式验收。正式的接受过程就是鉴定。

完整的认证和鉴定过程取决于标准评估准则。其中几个标准是为了评估计算机安全系统。最早的TCSEC是由美国国防部开发的。TCSEC也被称为橘皮书,提供了对系统安全组件的功能和保障的评价准则。ITSEC是TCSEC准则的另一个版本并更多用于欧洲国家。无论使用的是哪一个准则,评估过程都包括检查每个安全控制是否符合安全策略。如果系统更好执行了主体对客体访问的良好行为准则,那么安全级别就会越高。

当设计安全系统时,创建安全模型来表示系统将使用的方法,往往有助于实现安全策略。我们在这一章中讨论了几个安全模型。Bell-LaPadula模型只支持数据的保密性由军队设计并满足军事要求。Biba模型和Clark-Wilso模型以不同的方式应对数据的完整性,这两个安全模型适合于商业应用。

对所有这一切的理解应该根据预防、检测、纠正控制而形成有效的系统安全措施。这就是为什么必须知道访问控制模型及其功能的原因,包括状态机模型、Bell-LaPadula模型、Biba模型、Clark-Wilson模型、信息流模型、非干扰模型、Take-Grant模型、访问控制矩阵模型以及BrewerandNash模型。

考试要点:

了解每种访问控制模型的细节。了解各种访问控制模型及其功能。状态机模型确保主体访问客体的所有实例都是安全的。信息流模型被设计用于阻止非授权的、不安全的或受限的信息流。非干扰模型能够阻止一个主体的动作影响另一个主体的系统状态或动作。Take-Grant模型规定了如何将权限从一个主体传递至另一个主体或者从一个主体传递至一个客体。访问控制矩阵是一个由主体和客体形成的表,这个表规定了每个主体能够在每个客体上执行的动作或功能。Bell-LaPadula主体具有一个许可级别,这个许可级别只允许访问具有相应分类级别的客体。Biba模型能够防止具有较低安全级别的主体对具有较高安全级别的客体进行写操作。Clark-Wilson是一个依赖于审计的完整性模型,能够确保未授权的主体无法访问客体以及被授权的用户能够正确地访问客体。Biba和Clark-Wilson模型实现了完整性。Goguen-Meseguer和Sutherland模型关注于完整性。Graham-Denning模型关注于主体和客体的安全建立和删除。

了解认证和鉴定的定义。认证是从技术角度评估计算机系统的每个部分,从而判断是否与安全标准相一致。鉴定是正式验收己认证的配置的过程

能够描述开放式系统和封闭式系统。开放式系统是使用行业标准设计的,一般比较容易与其他的开放式系统进行整合。封闭式系统通常是专有硬件和/或软件,它们的设计规范一般不会公开,并且往往较难与其他系统进行整合。

知道限制、界限和隔离的含义。限制是对进程从特定内存地址读取(和写入)数据进行限制。界限是进程在读取或写入数据时不能超越的特定内存地址的范围。隔离是通过使用内存界限而将进程加以限制的一种运行模式。

能够从访问资源的角度定义客体和主体。访问的主体是提出访问资源请求的用户或进程。访问请求的客体是用户或进程希望访问的资源。

了解安全控制的工作原理及功能。安全控制使用访问规则来限制主体对客体的访问。

能够列出TCSEC、ITSEC和通用准则的类别。TCSEC的类别包括己验证保护、强制性保护、自主性保护和最小化保护。表8.5概述并比较了TCSEC、ITSEC和CC的相当且适用的等级(需要记住的是,ITSEC中从F7到FI0的功能性等级没有对应的TCSEC等级)。

定义可信计算基(TCB)。TCB组合了硬件、软件和控制(形成了实施安全策略的可信基)。

能够解释安全边界。安全边界是想象出来的,用于将TCB与系统其余部分分隔的界限。TCB组件与非TCB组件之间的通信使用可信路径。

知道什么是引用监控器和安全内核。引用监控器是TCB的逻辑部分,对主体在被授予访问权限之前是否具有使用资源的权限进行确认。安全内核是实现引用监控器功能的TCB组件的集合。

了解信息系统的安全功能。常见的安全功能包括内存保护、虚拟化和可信平台模块(TPM)。

参考链接:

=END=


《“CISSP官方学习指南第7版#第8章”》 有 4 条评论

  1. 理解状态机
    https://glumes.com/post/android/understand-state-machine/
    `
    有限状态机(FSM)——有限状态机(Finite State Machine)是表示有限个状态(State)以及在这些状态(State)之间的转移(Transition)和动作(Action)等行为的数据模型。
    总的来说,有限状态机系统,是指在不同阶段呈现出不同的运行状态的系统,这些状态是有限的、不重叠的。
    这样的系统在某一时刻一定会处于其所有状态中的一个状态,此时它接收一部分允许的输入,产生一部分可能的响应,并迁移到一部分可能的状态。

    有限状态机的要素
    State(状态)
    Guard(条件)
    Event(事件)
    Action(动作)
    Transition(迁移)

    有限状态机的 Java 实现

    分层状态机(HFSM)
    在有限状态机中,虽说状态是有限的,但是当状态太多的时候却不是那么好维护的,这个时候就需要将一些具有公共属性的状态分类,抽离出来,将同类型的状态作为一个状态机,然后再做一个大的状态机,来维护这些子状态。
    分层状态机从某种程度上就是限制了状态机的跳转,而且高层状态内部的状态是不需要关心外部状态的跳转的,这也做到了无关状态间的隔离,在每个状态内部只需要关心自己的小状态的跳转就可以了,这样就大大的降低了状态机的复杂度。
    `

  2. 为什么技术人一定要懂点“可信计算”?
    https://mp.weixin.qq.com/s/v_iRGO7g7JzlJTT_83eSlg
    `
    导读:可信计算(TrustedComputing,简称TC)是一项由TCG(可信计算组)推动和开发的技术。可信的核心目标之一是保证系统和应用的完整性,从而确定系统或软件运行在设计目标期望的可信状态。可信和安全是相辅相成的,可信是安全的基础,了解可信才能更好地了解安全,才能为构建更稳固的安全体系固本强基。

    一、什么是可信计算
    可信并不等同于安全,但它是安全的基础,因为安全方案、策略只有运行在未被篡改的环境下才能进一步确保安全目的。通过保证系统和应用的完整性,可以确保使用正确的软件栈,并在软件栈受到攻击发生改变后能及时发现。总的来说,在系统和应用中加入可信验证能够减少由于使用未知或遭到篡改的系统/软件遭到攻击的可能性。
    `

  3. 安全设计原则 – Security design principles
    https://docs.microsoft.com/en-us/azure/architecture/framework/security/security-principles
    `
    规划资源以及如何对其进行加固 (Plan resources and how to harden them)
    自动化和使用最小权限 (Automate and use least privilege)
    对数据进行分类和加密 (Classify and encrypt data)
    监视系统安全性,规划事件响应 (Monitor system security, plan incident response)
    识别和保护端点 (Identify and protect endpoints)
    防范代码级漏洞 (Protect against code-level vulnerabilities)
    针对潜在威胁进行建模和测试 (Model and test against potential threats)
    `

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注