操作系统安全 基本概念-程序员宅基地

技术标签: 安全  系统安全  安全笔记  

前言

参考教材是沈晴霓的《操作系统安全设计》,课程链接:https://www.coursera.org/learn/os-virtsecurity

本书内容由浅入深,分为“基础篇”、“理论篇”、“实践篇”和“趋势篇”四大部分。

“基础篇"重点介绍操作系统基本安全概念、通用安全需求、安全标准和必要的安全机制等。

“理论篇”重点介绍操作系统安全建模理论、安全体系结构设计思想,以及安全保证技术和测评方法等。

“实践篇”重点介绍安全操作系统设计与实现技术的案例,以及基于安全操作系统的应用系统安全案例。

“趋势篇"重点介绍最新的可信计算技术、系统虚拟化技术,以及操作系统进展及其安全实践。

读者可以依据不同层面的需求灵活地选用相关部分的内容进行阅读本书的每一章后 面都附有习题和参考文献,便于读者对各章的内容进行思考和深人理解。

系统边界和安全周界

系统边界:一个系统是指开发者实施某种控制的计算和通信环境的全体。系统内部所有的东西由系统来保护,系统之外的东西不受其保护。

安全周界系统内部组件有两种:负责维护系统安全(或者安全相关)的部分和所有其他部分。这些安全相关的组件实现内部控制。用一种假想的边界分离两种类型的组件,该边界称为安全周界。 安全周界内的所有组件的属性必须被精确定义,因为任何一个组件发生故障都可能导致安全背离;相反,安全周界外部的组件的属性是相当随意的,仅实施通过系统边界进人系统时的限制。

可信与不可信软件

在讨论操作系统安全时,前提是用户是可信的,可以不信任用户运行的应用程序。
软件分类:
软件一般分为可信的、良性的、恶意的三类

  1. 可信的。软件保证能安全运行,并且后来系统的安全也依赖于软件的无错操作。
  2. 良性的。软件并不确保安全运行,但由于使用了特权或对敏感信息的访问权,因而必须确信它不会有意地违反规则。良性软件的错误被视作偶然性的,而且这类错误不会影响系统的安全。
  3. 恶意的。软件来源不明,从安全的角度出发,该软件必须被当作恶意的,认为其将对系统进行破坏。

日常应用的多数软件时良性的 。通常将良性和恶意归为不可信软件。
在这里插入图片描述

访问控制基本概念

主体与客体

主体是一个主动的实体,包括用户、用户组、进程等。
在这里插入图片描述

客体是一个被动的实体。 在操作系统中,客体可以是按照一定格式存储在一定记录介质上的数据信息(通常以文件系统格式存储数据),也可以是操作系统中的进程

进程一般有着双重身份,即是主体,又是客体。进程分为用户进程和系统进程

用户进程是固定为某一用户服务的,它在运行中代表该用户对客体资源进行访问,其权限应与所代表的用户相同(通过用户-主体绑定实现)。
系统进程是动态地为所有用户提供服务的,因而它的权限随着服务对象的变化而变化,这就需要将用户的权限与为其服务的进程的权限动态地相关联(通过用户-主体绑定实现)。
当一个系统进程与:一个特定的用户相关联时,这个系统进程在运行中就代表该用户对客体资源进行访问。

访问控制矩阵

1969年,B.W.Lampson 通过形式化表示方法运用主体(subject)、 客体(object) 和访问矩阵(access matrix)的思想第一次对访问控 制问题进行了抽象。

主体是访问操作中的主动实体,客体是访问操作中的被动实体,即主体对客体进行访问。

访问矩阵是以主体为行索引、以客体为列索引的矩阵,矩阵中的每一个元素表示若干访问方式的集合。访问方式包括 r(读)、w(写)、x(执行)。
在这里插入图片描述

引用监控器

访问控制机制的理论基础是引用监控器。 它是一个抽象概念,表现的是一种思想。

访问控制数据库包含有关由主体存取的客体及其存取方式的信息。

在这里插入图片描述

引用监控器的关键作用是控制从主体到客体的每一次存取,并将重要的安全事件存入审计文件之中。

安全内核

安全内核是指系统中与安全性实现有关的部分,包括访问控制机制、授权机制和授权管理机制等部分。

安全内核的软件和硬件是可信的,处于安全周界内,但操作系统和应用程序均处于安全周界之外。

在这里插入图片描述

安全内核的设计原则如下:
在这里插入图片描述

构建安全的基本要素

安全策略(应该做什么)

安全策略是针对系统面临的安全威胁所采取的应对办法,包括有关管理、保护和发布敏感信息的法律、规定和实施细则。

安全机制(应该怎么做)

在这里插入图片描述

安全保证

操作系统产品的安全性涉及两个重要因素:产品所能提供的安全功能和安全功能的确信度。

安全保证(又称安全保障)则是通过一定的方法保证操作系统所提供的安全功能确实达到了确定的功能要求,它可以从系统的设计和实现、自身安全、安全管理等方面进行描述,也可以借助配置管理、发行与使用、开发和指南文档、生命周期支持、测试和脆弱性评估等方面所采取的措施来确立产品的安全确信度。

可信计算基 (TCB)

操作系统的安全依赖于一些具体实施安全策略的可信的软件和硬件。这些软件、硬件和负责系统安全管理的人员- -起组成了系统的可信计算基(Trusted Computing Base, TCB)。

在这里插入图片描述
在一个通用安全操作系统(CC 标准中的评估对象TOE)中,TCB为用以构成一个安全操作系统的所有安全保护装置的组合体。一个TCB可以包含多个TOE安全功能(TSF),每一个TSF实现一个安全功能策略(TSP), 这些TSP共同构成一个安全域,以防止不可信主体的干扰和篡改。同时TCB中的非TSF部分也构成另一个域,称为非安全域。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_52444045/article/details/126789617

智能推荐

JWT(Json Web Token)实现无状态登录_无状态token登录-程序员宅基地

文章浏览阅读685次。1.1.什么是有状态?有状态服务,即服务端需要记录每次会话的客户端信息,从而识别客户端身份,根据用户身份进行请求的处理,典型的设计如tomcat中的session。例如登录:用户登录后,我们把登录者的信息保存在服务端session中,并且给用户一个cookie值,记录对应的session。然后下次请求,用户携带cookie值来,我们就能识别到对应session,从而找到用户的信息。缺点是什么?服务端保存大量数据,增加服务端压力 服务端保存用户状态,无法进行水平扩展 客户端请求依赖服务.._无状态token登录

SDUT OJ逆置正整数-程序员宅基地

文章浏览阅读293次。SDUT OnlineJudge#include<iostream>using namespace std;int main(){int a,b,c,d;cin>>a;b=a%10;c=a/10%10;d=a/100%10;int key[3];key[0]=b;key[1]=c;key[2]=d;for(int i = 0;i<3;i++){ if(key[i]!=0) { cout<<key[i.

年终奖盲区_年终奖盲区表-程序员宅基地

文章浏览阅读2.2k次。年终奖采用的平均每月的收入来评定缴税级数的,速算扣除数也按照月份计算出来,但是最终减去的也是一个月的速算扣除数。为什么这么做呢,这样的收的税更多啊,年终也是一个月的收入,凭什么减去12*速算扣除数了?这个霸道(不要脸)的说法,我们只能合理避免的这些跨级的区域了,那具体是那些区域呢?可以参考下面的表格:年终奖一列标红的一对便是盲区的上下线,发放年终奖的数额一定一定要避免这个区域,不然公司多花了钱..._年终奖盲区表

matlab 提取struct结构体中某个字段所有变量的值_matlab读取struct类型数据中的值-程序员宅基地

文章浏览阅读7.5k次,点赞5次,收藏19次。matlab结构体struct字段变量值提取_matlab读取struct类型数据中的值

Android fragment的用法_android reader fragment-程序员宅基地

文章浏览阅读4.8k次。1,什么情况下使用fragment通常用来作为一个activity的用户界面的一部分例如, 一个新闻应用可以在屏幕左侧使用一个fragment来展示一个文章的列表,然后在屏幕右侧使用另一个fragment来展示一篇文章 – 2个fragment并排显示在相同的一个activity中,并且每一个fragment拥有它自己的一套生命周期回调方法,并且处理它们自己的用户输_android reader fragment

FFT of waveIn audio signals-程序员宅基地

文章浏览阅读2.8k次。FFT of waveIn audio signalsBy Aqiruse An article on using the Fast Fourier Transform on audio signals. IntroductionThe Fast Fourier Transform (FFT) allows users to view the spectrum content of _fft of wavein audio signals

随便推点

Awesome Mac:收集的非常全面好用的Mac应用程序、软件以及工具_awesomemac-程序员宅基地

文章浏览阅读5.9k次。https://jaywcjlove.github.io/awesome-mac/ 这个仓库主要是收集非常好用的Mac应用程序、软件以及工具,主要面向开发者和设计师。有这个想法是因为我最近发了一篇较为火爆的涨粉儿微信公众号文章《工具武装的前端开发工程师》,于是建了这么一个仓库,持续更新作为补充,搜集更多好用的软件工具。请Star、Pull Request或者使劲搓它 issu_awesomemac

java前端技术---jquery基础详解_简介java中jquery技术-程序员宅基地

文章浏览阅读616次。一.jquery简介 jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互 jQuery 的功能概括1、html 的元素选取2、html的元素操作3、html dom遍历和修改4、js特效和动画效果5、css操作6、html事件操作7、ajax_简介java中jquery技术

Ant Design Table换滚动条的样式_ant design ::-webkit-scrollbar-corner-程序员宅基地

文章浏览阅读1.6w次,点赞5次,收藏19次。我修改的是表格的固定列滚动而产生的滚动条引用Table的组件的css文件中加入下面的样式:.ant-table-body{ &amp;amp;::-webkit-scrollbar { height: 5px; } &amp;amp;::-webkit-scrollbar-thumb { border-radius: 5px; -webkit-box..._ant design ::-webkit-scrollbar-corner

javaWeb毕设分享 健身俱乐部会员管理系统【源码+论文】-程序员宅基地

文章浏览阅读269次。基于JSP的健身俱乐部会员管理系统项目分享:见文末!

论文开题报告怎么写?_开题报告研究难点-程序员宅基地

文章浏览阅读1.8k次,点赞2次,收藏15次。同学们,是不是又到了一年一度写开题报告的时候呀?是不是还在为不知道论文的开题报告怎么写而苦恼?Take it easy!我带着倾尽我所有开题报告写作经验总结出来的最强保姆级开题报告解说来啦,一定让你脱胎换骨,顺利拿下开题报告这个高塔,你确定还不赶快点赞收藏学起来吗?_开题报告研究难点

原生JS 与 VUE获取父级、子级、兄弟节点的方法 及一些DOM对象的获取_获取子节点的路径 vue-程序员宅基地

文章浏览阅读6k次,点赞4次,收藏17次。原生先获取对象var a = document.getElementById("dom");vue先添加ref <div class="" ref="divBox">获取对象let a = this.$refs.divBox获取父、子、兄弟节点方法var b = a.childNodes; 获取a的全部子节点 var c = a.parentNode; 获取a的父节点var d = a.nextSbiling; 获取a的下一个兄弟节点 var e = a.previ_获取子节点的路径 vue