(学期2023-2024.1;学号:20232300)《⽹络空间安全导论》第4周学习总结
第4章 系统安全基础
4.1 系统安全概述
(1)以对系统的认识为基础,考察系统安全研究的方法论,理解贯穿系统安全始终的思维方式。
4.1.1系统安全的演进
(1)网络空间(Cyberspace) 是人类活动的第五大疆域。虽然海、陆、空、天那四大自然疆域的起源还是个谜,但网络空间这个人工疆域的起源是清晰的,它随着计算机的诞生而逐渐形成。
4.1.2系统与系统安全
(1)一个系统(System) 是由相互作用或相互依赖的元素或成分构成的某种类型的一个统一整体,其中的元素完整地关联在一起,它们之间的这种关联关系有别于它们与系统外、其他元素之间可能存在的关系。
(2)对系统的观察可以采取自外观察法,也可以采取自内观察法。自外观察法就是观察者位于系统之外对系统进行观察,通常是通过观察系统的输入和输出来分析系统的行为。 自内观察法则是观察者位于系统之内对系统进行观察,此时,观察者属于系统的一个组成部分,该方法通常是通过观察系统的外部环境来分析系统的行为。观察者在虎园外观察园内老虎的行为,采用的是自外观察法,在飞行的飞机上观察飞机的飞行状况,采用的是自内观察法。
4.1.3 整体论与还原论
(1)系统的宏观特性,即整体特性,可以区分为涌现性和综合特性两种情形。
(2)整体论和还原论都关心整体特性,但它们关心的是整体特性中的两种不同形态,整体论聚焦的是涌现性,而还原论聚焦的是综合特性。
4.1.4 系统安全思维
(1)网络空间系统安全知识领域的核心包含着两大理念,一是保护对象,二是思维方法。 系统一方面表示会受到威胁因此需要保护的对象,另一方面表示考虑安全问题时应具有的思维方法,即系统化思维方法。系统化思维具有普适性,不是网络空间所独有,运用到网络空间安全之中称为系统安全思维。
4.2系统安全原理
(1)系统建设者需要思考基本原则、着手方式、事前预防、事后补救和保障措施等方面的事宜
4.2.1 基本原则
在网络空间中,系统的设计与实现是系统生命周期中分量很重的两个阶段,长期以来受到了人们的高度关注,形成了一系列对系统安全具有重要影响的基本原则。这些原则可以划分成三类,分别是限制性原则、简单性原则和方法性原则。
(1)限制性原则包括最小特权原则、失败-保险默认原则、完全仲裁原则、特权分离原则和信任最小化原则。
①最小特权原则(Least Privilege);系统中执行任务的实体(程序或用户)应该只拥有完成该项任务所需特权的最小集合
②失败-保险默认原则(Fail-Safe Defaults):安全机制对访问请求的决定应采取默认拒绝方案,不要采取默认允许方案;
③完全仲裁原则(Complete Mediation):安全机制实施的授权检查必须能够覆盖系统中的任何一个访问操作,避免出现能逃过检查的访问操作。
④特权分离原则(Separation of Privilege):对资源访问请求进行授权或执行其他安全相关行动,不要仅凭单一条件做决定,应该增加分离的条件因素;
⑤信任最小化原则(Minimize Trust):系统应该建立在尽量少的信任假设的基础上,减少对不明对象的信任;
(2)简单性原则包括机制经济性原则、公共机制最小化原则和最小惊讶原则。
①机制经济性原则(Economy of Mechanism):应该把安全机制设计得尽可能简单和短小,因为,任何系统设计与实现都不可能保证完全没有缺陷;
②公共机制最小化原则(Minimize Common Mechanism):如果系统中存在可以由两个以上的用户共用的机制,应该把它们的数量减到最少;
③最小惊讶原则(Least Astonishment):系统的安全特性和安全机制的设计应该尽可能符合逻辑并简单,与用户的经验、预期和想象相吻合
(3)方法性原则包括公开设计原则、层次化原则、抽象化原则、模块化原则、完全关联原则和设计迭代原则
①公开设计原则(Open Design):不要把系统安全性的希望寄托在保守安全机制设计秘密的基础之上,应该在公开安全机制设计方案的前提下,借助容易保护的特定元素,如密钥、口令或其他特征信息等,增强系统的安全性;公开设计思想有助于使安全机制接受广泛的审查,进而提高安全机制的鲁棒性。
②层次化原则(Layering):应该采用分层的方法设计和实现系统,以便某层的模块只与其紧邻的上层和下层模块进行交互,这样,可以通过自顶向下或自底向上的技术对系统进行测试,每次可以只测试一层。
③抽象化原则(Abstraction):在分层的基础上,屏蔽每一层的内部细节,只公布该层的对外接口,这样,每一层内部执行任务的具体方法可以灵活确定,在必要的时候,可以自由地对这些方法进行变更,而不会对其他层次的系统组件产生影响。
④模块化原则(Modularity):把系统设计成相互协作的组件的集合,用模块实现组件,用相互协作的模块的集合实现系统;每个模块的接口就是一种抽象。
⑤完全关联原则(Complete Linkage):把系统的安全设计与实现与该系统的安全规格说明紧密联系起来。
⑥设计迭代原则(Design for Iteration):对设计进行规划的时候,要考虑到必要时可 以改变设计;因系统的规格说明与系统的使用环境不匹配而需要改变设计时,要使这种改变对安全性的影响降到最低。
4.2.2 威胁建模
(1)威胁建模(Threat Modeling)就是标识潜在安全威胁并审视风险缓解途径的过程。 威胁建模的目的是:在明确了系统的本质特征、潜在攻击者的基本情况、最有可能的被攻击角度、攻击者最想得到的好处等的情况下,为防御者提供系统地分析应采取的控制或防御措施的机会。威胁建模回答像这样的问题:被攻击的最薄弱之处在哪里、最相关的攻击是什么、为应对这些攻击应该怎么做等。
4.2.3 安全控制
(1)对系统进行安全保护的最美好愿景是提前做好准备,防止安全事件的发生。访问控制(Access Control)就是这方面的努力之一,它的目标是防止系统中出现不按规矩对资源进行访问的事件。
(2)访问行为的常见情形是某个用户对某个文件进行操作,操作的方式可以是查看、复制或修改,如果该文件属于程序,操作的方式也可以是运行。在访问行为中,用户是主动的,称为主体,文件是被动的,称为客体。如果用s、c、p 分别表示主体、客体、操作,那么,一个访问行为,或者简单地说一个访问,可以形式化地表示成以下三元组:
(s,o,p)
(3)它表示主体s 对客体o 执行操作p,对应前述示例,p 的取值可以是 read、copy、modify、 execute 中的任意一个。
(4)系统中负责访问控制的组成部分称为访问控制机制。访问控制机制的重要任务之一是在接收到一个(s,o,p)请求时,判断能不能批准(s,o,p)执行,作出允许执行或禁止执行的决定,并指示和协助系统实施该决定。
(5)访问控制需要确定主体的身份(Identity),确定主体身份的过程称为身份认证 (Authentication)。身份认证最常用的方法是基于口令(Password) 进行认证,主体向系提供账户名和口令信息,由系统对这些信息进行核实。
(6)口令认证法与现实中对暗号的方法很相似。主体事先与系统约定了账户名和口令信息,认证时系统就可以进行核实。
4.2.4 安全监测
(1)和自然界中的情形一样,网络空间中的系统及其环境一直处于不断的变换之中,方方面面的不确定因素大量存在。由于热力学第二定律的作用,混乱总是不停地增加。正如天灾人祸在所难免一样,安全事件是不可能根除的。既然不得不面对,系统至少应能感知安全事件的发生,增强事后补救能力。
4.2.5 安全管理
国际标准化组织(ISO) 确定的风险管理原则如下:
①风险管理应创造价值,即为降低风险投入的资源代价应少于不作为的后果。
②风险管理应成为组织过程不可或缺的一部分。
③风险管理应成为决策过程的一部分。
④风险管理应明确处理不确定性和假设。
⑤风险管理应是一个系统化和结构化的过程。
⑥风险管理应以最佳可用信息为基础。
⑦风险管理应可量身定制。
⑧风险管理应考虑人为因素。
⑨风险管理应透明和包容。
⑩风险管理应是动态的、迭代的和适应变化的。
⑪风险管理应能持续改进和加强。
⑫风险管理应持续地或周期性地重新评估。
4.3 系 统 安 全 结 构
机器系统可划分成硬件、操作系统、数据库系统和应用系统等层次。
4.3.1 硬件系统安全
(1)处理器硬件定义了用户态和内核态两种状态,内核态给操作系统用,用户态给其他程序用,规定用户态的程序不能干扰内核态的程序。这样,在免受其他程序破坏的意义上操作系统受到了硬件的保护。
4.3.2 操作系统安全
(1)操作系统是直接控制硬件工作的基础软件系统,它紧贴在硬件之上,介于硬件与应用软件之间,这样的特殊地位决定了它在系统安全中具有不可替代的作用。没有操作系统提供的安全支持,应用系统的安全性无法得到保障。
(2)最著名的多级安全策略模型是贝尔-拉普度拉(BLP) 模型,虽然 Adept-50实现的还不是该模型。实现强制访问控制的最初动因是实现多级安全策略,而最初的多级安全策略主要关心信息的保密需求。
4.3.3 数据库系统安全
(1)数据库系统是提供通用数据管理功能的软件系统,它由数据库管理系统(Database Management System,DBMS)和数据库应用构成。相对于操作系统而言,数据库系统属于应用软件系统,但由于它为很多应用系统提供基础数据管理支持,所以它属于基础软件系统
(2)数据库类型很多,关系数据库是最常见、应用最广泛的一种。 一个关系数据库形式上就是一张二维表,表4-1是一个示例。
4.3.4 应用系统安全
(1)自从有了网络空间中的各种应用,人类的生活便变得更加绚丽多彩。床头路边的即时聊天,都市乡间的抬手自拍,菜市场里的扫码付款,停车场上的杆起杆落,不管人们有没有留意,都有应用系统在提供服务。基于 Web 的应用(简称 Web 应用)是典型的常见应用之一,本小节以该类应用为例,考察应用系统的安全现象。
4.3.5 安全生态系统
(1)首先,这个概念强调整体的思想,一个生态系统是一个统一整体,那是生物体与环境的统一,也是人与自然的统一。其次,生态系统是实在的,不是虚无的,一个地理范围能确定它的边界,谈论一个生态系统需要明确一个区域。再者,生态系统各组成部分之间的相互作用存在清晰的线索,那就是物质的循环和能量的流动。
(2)复杂系统研究表明,了解生态系统对于认识和应对复杂系统环境中出现的问题具有重要的现实意义。网络空间是一种复杂的人工环境,网络空间中的系统无疑属于复杂系统。在观察网络空间复杂现象的过程中,生态思想开始受到重视,数字生态系统、网络空间生态系统等概念逐渐形成
(3)国际互联网协会(Internet Society)给出了互联网生态系统的模型。该模型把互联网 生态系统的组成部分划分为6类,分别是:
①域名和地址分配。
②开放标准开发。
③全球共享服务和运营。
④用户。
⑤教育与能力建设。
⑥地方、地区、国家和全球政策制定。
本章小结
(1)网络空间的系统安全起源于运行在大型主机系统上的安全操作系统。探访历史上曾经在实际应用中发挥过作用的典型安全操作系统,可以快速形成系统安全的感性认识。 互联网触角的延伸,物联网应用的普及,促使网络空间疆域极速扩大,系统安全不停演化一步步向安全生态系统迈进。
(2)作为网络空间安全学科中的一个知识领域,系统安全从系统的角度研究和应对安全 问题,一方面,系统指因为必然面临安全威胁而需要保护的对象,另一方面,系统指在分析和解决安全问题的时候应该遵循的指导思想。它既关注对象,也强调思想,提倡运用系统化思维为系统增加安全弹性。涉足系统安全,两方面都要兼顾,不可疏漏。
(3)正确认识系统是进行系统安全之旅的开端。与其他科学领域相比,网络空间安全非常年轻,值得借用他山之石以更好地走向成熟。网络空间中的系统与自然界中的系统有相同之处,系统安全研究可以从研究普适系统的系统科学中吸取养分,可以从研究自然生态系统的生态学中寻找灵感。
(4)欲善其事,须明其理。系统安全学科领域的最终目标是提升系统的安全性,实现这一目标需要有科学的理论体系为之支撑。学习系统安全应该了解这个学科领域中的重要原理。系统化安全思想要求系统的建设者了解安全建设的基本原则,明白威胁建模的重要性,清楚事前预防和事后补救的道理,懂得使安全建设落到实处的招数。
(5)系统安全思维的要义是合理地运用整体论和还原论。按照还原的方法,网络空间中的系统可以看成包含硬件、操作系统、数据库系统和应用系统等层次。硬件系统安全、操作系统安全、数据库系统安全和应用系统安全是系统安全在体系结构角度的重要关注点,必须注意,系统安全不是孤立地看待这些点,而是要观察它们所形成的面。整体论带来的启示是认识网络空间中的系统需要有生态系统的思想,研究系统安全需要有安全生态系统的视野。
思维导图
向chatGPT提问