网络安全之安全设计原则

本文深入探讨了网络安全设计原则,包括客体与主体的概念、封闭与开放系统、保密性、完整性和可用性的技术保障,以及访问控制和信任保证。文章介绍了如进程限制、授权级别、参考监视器和安全内核等概念,强调了安全应融入系统开发的每个阶段。此外,还阐述了安全模型如状态机模型、信息流模型和非干扰模型等,以及各类模型在保护系统安全中的作用。最后,讨论了系统安全评估标准,如TCSEC、ITSEC和通用准则,以及认证和鉴定过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文摘自CISSP官方学习指南第八版
广告
CISSP官方学习手册(第9版)(网络空间安全丛书)
京东
¥161.00
去购买​
广告
CISSP官方学习指南(第8版)正版
京东
¥190.30
去购买​
1.使用安全设计原则实施和管理工程过程
在系统开发的每个阶段都应考虑安全。程序员应该努力为他们开发的每个应用构建安全性,为关键应用以及处理敏感信息的应用提供更高级别的安全性。

1.1 客体和主体

    主体(Subject)是发出访问资源请求的用户或进程。访问意味着可读取一个资源或在其中写入数据。
    客体(Object)是用户或进程想要访问的资源。

主体和客体由某些特定的访问请求决定,因此在不同的访问请求中,相同的资源即可能是主体也可能是客体。

信任传递是一个严重的安全问题,因为它可以绕过约束或限制。例如,使用代理访问网络。(突破了网络限制)

1.2 封闭系统和开放系统
可以根据两种不同的理念设计和构建系统:
- 封闭系统的设计使其只能与很少的系统协作,通常都是来自同一制造商。封闭系统的标准一般是专有的,通常不会公开。
- 开放系统使用公认的行业标准设计。开放系统很容易与来自支持相同标准的不同厂商的系统进行集成。

封闭系统很难与相异的系统集成,但是他们更安全。封闭系统通常由不符合行业标准的专用硬件和软件组成。这意味着很多针对通用系统组件的攻击,要么不起作用,要么定制才能攻击成功。(攻击成本高)
开放系统通常更容易与其他开放系统集成。开放系统的开放性使它们更容易受到攻击,并且它们的广泛存在是攻击者能找到(甚至实践)大量潜在目标。


添加图片注释,不超过 140 字(可选)

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

限制(Confinement)

软件设计者使用“进程限制”来约束程序的行为。进程限制使进程只能对某些内存位置和资源进行读取和写入,这也被称为沙箱。操作系统或某些其他安全组件不允许非法的读写请求。
限制可以在操作系统本身实现(通过进程隔离和内存保护),也可通过限制应用程序和服务实现,或通过虚拟化或虚拟机方案。

界限(Bound)

在系统上运行的每个进程都有授权级别。授权级别告知操作系统进程可执行什么操作。在简单系统中,可能只有两种授权级别:用户和内核。授权级别告知操作系统如何设置进程的界限。进程的界限由对其可以访问的内存地址和资源所设置的限制组成。界限规定了限制和包含进程的区域。这些界限划分出每个进程使用的内存逻辑区域。操作系统负责强制执行这些逻辑界限并禁止其他进程访问。更安全的系统可能需要物理上限制进程。物理界限要求每个受限进程的运行内存与其他受限进程的运行内存在物理上(而不是逻辑上)隔离。物理上限定内存可能非常昂贵,但它比逻辑边界更安全。

隔离(Isolation)

当通过执行访问界限来限制进程时,该进程将以隔离状态运行。进程隔离可确保隔离状态进程的任何行为仅影响与其关联的内存和资源。隔离用来保护操作环境,操作系统(OS)的内核以及其他独立应用程序。隔离时一个稳定的操作系统的重要组成部分。隔离能阻止一个应用访问另一个应用的内存和资源,不论是善意还是恶意的访问。

限制,界限和隔离这三个概念使得设计安全程序和操作系统变得更困难,但它们也使实现更安全的系统成为可能。

1.4 控制

为确保系统的安全性,主体只能访问经过授权的客体。控制使用访问规则(Control)来限制主体对客体的访问。访问规则声明了每个主体可以合法访问客体。

有两种访问控制:

 强制访问控制(Mandatory Access Control,MAC)

        是否许可一个访问由主体和客体的静态属性来决定。每个主体都拥有属性,用来定义其访问资源的许可或授权。每个客体拥有属性,用来定义其分类。

自主访问控制(Discretionary Access Control,DAC)

主体具有一些定义要访问的客体的能力,允许主体根据需要定义要访问的客体列表。这些访问控制列表是主体可修改的动态访问规则集。对于修改的约束通常与主体的身份相关。可以允许主体添加或修改对客体的访问规则。

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

1.5 信任与保证

安全问题不应该在事后才加以考虑,这会导致疏忽,成本增加以及可靠性降低。一旦将安全性集成到设计中,就必须对其进行设计、实现、测试、审核、评估、认证并最终获得认可。

“可信系统”(trusted system)指所有保护机制协同工作的系统,为许多类型的用户处理敏感数据,同时维护稳定和安全的计算环境。
“保证”(Assurance)满足安全需求的可信程度。保证需要持续地维护、更新以及重新验证。

无论何时发生变化,都需要重新评估系统,以验证其先前提供的安全级别是否仍然完好无缺。保证因系统而异,必须针对单独的系统建立。

信任可以通过实现特定的安全功能构建到系统中,而保证是在真实情况下对这些安全功能的可靠性和可用性的评估。

2.理解安全模型的基本概念

在信息安全中,模型提供了一种形式化安全策略的方法。所有模型都旨在提供一组明确规则,计算机可遵循这些规则来实现构成安全策略的基本安全概念、过程和程序。

安全模型为设计人员提供一种将抽象陈述映射到安全策略的方法,该策略规定了构建硬件和软件所需的算法和数据结构。因此,安全模型为软件设计人员提供了一些衡量其设计和实现的标准。
这些策略必须支持安全策略的每个部分。通过这种方式,开发人员可确保他们的安全实现能支持安全策略。

2.1 可信计算基

TCSEC(Trusted Computer System Evaluation Criteria,可信计算机系统评估标准),该标准将可信计算机(Trusted Computing Base,TCB)描述为硬件、软件和控件的组合,它们协同工作构成执行安全策略的可信根基。TCB是系统中唯一可信任的部分,其遵守并执行安全策略。系统中的每个组件未必都是可信的,但从安全角度考虑系统时,应该对构成系统TCB的所有可信组件进行评估。

通常系统中的TCB组件负责控制对系统的访问。TCB必须提供访问TCB本身内部和外部资源的方法,TCB组件通常会限制TCB外部组件的活动。TCB组件的职责是确保系统在所有情况下都能正常运行,在所有情况下都遵守安全策略。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值