1 / 39

第九章 操作系统安全

操作系统. 第九章 操作系统安全. 主要内容. 操作系统安全性 基本概念 操作系统 主要 安全机制 安全操作系统设计 与实现. 9 .1 操作系统 的 安全性. 操作系统的安全需求 系统安全的评估与标准 Unix/Linux 操作系统安全 Windows 2000 操作系统安全. 9 .1.1 操作系统的安全需求. 计算机信息系统安全性 保密性。安全保密是指防止信息的非授权修改,这也是信息安全最重要的要求。 完整性。完整性要求信息在存储或传输过程中保持不被修改、破坏和丢失。 可靠性。可靠性是指系统提供信息的可信赖程度。

kueng
Download Presentation

第九章 操作系统安全

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 操作系统 第九章 操作系统安全

  2. 主要内容 • 操作系统安全性基本概念 • 操作系统主要安全机制 • 安全操作系统设计与实现

  3. 9.1 操作系统的安全性 • 操作系统的安全需求 • 系统安全的评估与标准 • Unix/Linux操作系统安全 • Windows 2000操作系统安全

  4. 9.1.1 操作系统的安全需求 • 计算机信息系统安全性 • 保密性。安全保密是指防止信息的非授权修改,这也是信息安全最重要的要求。 • 完整性。完整性要求信息在存储或传输过程中保持不被修改、破坏和丢失。 • 可靠性。可靠性是指系统提供信息的可信赖程度。 • 可用性。可用性是指当需要时是否能存取所需信息,保护信息的可用性的任务就是防止信息失效或变得不可存取。 • 操作系统安全的目标 • 为用户信息处理提供安全的软件环境,为应用程序运行提供安全可靠的运行环境。

  5. 操作系统的安全需求 • 系统边界安全 • 认证和鉴别禁止非法用户进入系统; • 系统使用权限管理机制 • 不同用户配置不同的权限,每个用户只拥有他能够工作的最小权利; • 应用和数据的访问控制机制 • 用户只能按照指定的访问控制安全策略访问数据; • 为系统用户提供可信通路 • 保证系统登陆和应用层提供的安全机制不被旁路; • 系统操作的安全审计和管理 • 检查错误发生的原因,或者受到攻击时攻击者留下的痕迹;

  6. 9.1.2 系统安全的评估与标准 • 计算机信息系统 (computer information system) • 由计算机及其相关的和配套的设备、设施(含网络)构成; • 可信计算基 (trusted computing base ) • 计算机系统内保护装置的总体,包括硬件、固件、软件和负责执行安全策略的组合体。 • 主体(subject) • 即主动实体,导致信息在系统中流动及改变系统状态的用户或进程等; • 客体(object) • 能包含或接受信息的被动实体,如文件、内存块等; • 敏感标记 (sensitivity label) • 表示客体安全级别并描述客体数据敏感性的一组信息; • 安全策略(security policy) • 系统资源使用和管理的安全规定和约定;

  7. 系统安全的评估与标准 • TCSEC:Trusted Computer System Evaluation Criteria • 标准是计算机系统安全评估的第一个正式标准,具有划时代的意义。 • 1970年由美国国防科学委员会提出,并于1985年12月由美国国防部公布。 • 国标GB17859-1999:《计算机信息系统安全保护等级划分准则》 • 该准则参照TCSEC标准规定了计算机信息系统安全保护能力的五个等级。 • 用户自主保护级,系统审计保护级,安全标记保护级,结构化保护级,访问验证保护级 • POSIX.1e (Portable Operating System Interface for Computer Environ- ment)) • POSIX.1e是POSIX系列标准的一部分。它定义了POSIX.1规范的安全扩展部分; • POSIX.1e只规定了安全特性的函数接口(Security APIs)。

  8. 1. TCSEC- 共分A、B、C、D四类八个级别 • D: 非安全保护 • C: 自主保护级 • C1: 允许客体拥有者决定该客体的访问控制权,是否可以被其他主体访问 ; • C2: 自主访问控制更加细致。考虑客体重用和系统审计 ; • B:强制安全 • B1: 标记安全保护,标记和强制访问控制; • B2: 结构安全保护,强制访问控制的范围扩大到所有的系统资源,给出证明,要求考虑隐蔽信道(存储),并计算出带宽。 • B3: 安全区域保护,TCB不包含与安全无关的代码,并足够小到可以被测试、分析、证明,系统具有恢复能力。 • A:验证安全保护 • A1:验证设计级,设计可以被形式化的证明; • A2:验证实现级保护,实现可以被形式化的证明 。

  9. 形式化校验级保护,SNS A 级 安全内核,高抗渗透能力,Trusted Mach B3 级 结构化内容保护,正式安全策略模型,MULTICS B2 级 标记安全保护,如System V等 B1 级 C1+访问控制,广泛审核,Linux/WINDOWS NT C2 级 主体自主决定的安全保护,UNIX/WINDOWS C1 级 不分等级,无口令和权限控制,MS DOS D 级 系统安全的评估与标准

  10. 9.1.3 Unix/Linux操作系统安全-机制 • 用户标识和身份鉴别 • 每个用户一个唯一的标识符(UID); • 系统给每个用户组也分配有一个唯一的标识符(GID); • 登录需要密码口令; • 基于保护位的自主访问控制安全机制 • 用户:owner/group/other) • 访问权限:read/write/executable。 • 日志信息 • 包括:连接时间日志、进程统计和错误日志。

  11. Unix/Linux操作系统安全-弱点 • 用户数据保护机制并不能保证严格安全要求; • 超级用户成为系统安全瓶颈; • 缺乏必要的系统审计机制; • 用户认证方面的要求不够严格; • 系统自身的完整性保护问题,一旦加载恶意的核心模块,整个系统可能完全被非法控制。

  12. 9.1.4 Windows 2000操作系统安全 • 活动目录 • 分布式对象存储和管理的目录服务; • 每个对象,都有唯一的安全描述符,定义了读取或更新对象属性所必需的访问权限。 • 身份验证 • 交互式登录/网络身份验证( Kerberos V5、公钥证书和NTLM、智能卡登录等) • 访问控制 • 安全主体包括用户,组和服务。 • 客体包括:文件,文件夹、打印机、注册表键、活动目录项。

  13. 主要内容 • 操作系统安全性基本概念 • 操作系统主要安全机制 • 安全操作系统设计与实现

  14. 9. 2 操作系统安全机制 • 标识和鉴别 • 可信路径管理 • 禁止客体重用 • 最小特权管理 • 访问控制技术 • 隐蔽信道检测与控制 • 安全审计

  15. 9.2.1 标识与鉴别 • 用户标识(user identification)——信息系统用以标识用户的一个独特符号或字符串; • 鉴别(authentication)——验证用户,设备,进程和实体的身份; • Unix/Linux实现了基本的标识和鉴别机制。一般系统中有三类用户:超级用户,普通用户和系统用户。 • 超级用户:root • 普通用户是指那些能够登录系统的用户 • 系统用于特定的系统目的。例如用户nobody和lp

  16. 标识与鉴别 • UID和GID通常是唯一的,不同的用户拥有不同的UID,不同的用户组拥有不同的GID; • 用户登录到系统时,须输入用户名标识其身份; • 用户属性的信息主要存储在 /etc/passwd 和 /etc/shadow 系统文件中; • 系统会分配好用户目录。这块空间与系统区域和其他用户的区域分割开来。

  17. 9.2.2 可信路径管理 • 任何进入系统都需要进行用户认证,同时进行相应的用户鉴别; • 可信路径-该路径上的通信只能由该用户初始化 。 • 实现可信路径 • 能够准确辨认出用户登录的意图; • 提供无法冒充的用户界面; • 在用户认证和鉴别过程中,限制无关进程的活动; • 保证通信路径上的可靠性。

  18. 禁止客体重用 • 含义 • 一个主体在释放资源时,一定要清除上面的信息。 • 思考 • WINDOWS/LINUX内存释放后内容被清空了吗? • WINDOWS/LINUX文件删除后硬盘上没有了吗?

  19. 9.2.3 最小特权管理 • 最小特权管理 • 系统不应给予用户超过执行任务所需特权以外的特权。 • 实现 • 将超级用户的特权划分为一组细粒度的特权,使得各种操作员或者管理员只具有完成其任务所必需的特权。 • 一般系统的三种管理角色 • 安全管理员,审计管理员,系统管理员。

  20. 9.2.4 访问控制技术 • 访问控制功能 • 管理所有资源访问请求,即根据安全策略的要求,对每个资源访问请求作出是否许可的判断; • 主要访问控制策略 • 最小权益策略:按主体执行任务所需权利最小化分配权利。 • 最小泄漏策略:按主题执行任务时所知道的信息最小化原则分配权利。 • 多级安全策略:主体和客体按普通、秘密、机密、绝密等级别划分,进行权限控制。 • 主要访问控制技术 • 自主访问控制,强制访问控制

  21. 自主访问控制(Discretionary Access Control) • 访问控制方法 • 它由资源拥有者分配访问权,在辨别各用户的基础上实现访问控制。 • 实现方式 • 基于行的DAC:这种方法在每个主体上都附加一个该主体可访问的客体的明细表; • 基于列的DAC:在客体上附加了一个主体明细表 来表示访问控制矩阵的列; • 弱点 • 权限管理比较分散,安全性差,不能抵御特洛伊木马的攻击。

  22. 自主访问控制缺陷举例 • SOS 重要信息放在important文件中,权限为只有自己可以读写。 • SPY 设计一个有用的程序Use_it_Please,除了有用的部分,还有一个木马,同时准备好一个文件Pocket,将其权限设置为: SOS:W, SPY:RW • 当SOS运行木马程序时 木马会将important文件的信息,写入Pocket中。

  23. 2. 强制访问控制(Mandatory Access Control) • 访问控制方法 • 每个主体和每个客体都有既定安全属性,是否能执行特定的操作取决于二者之间的关系。 • 实现方式 • 由特定用户(管理员)实现授权管理; • 通常指TCSEC的多级安全策略:安全属性用二元组表示,记作(密集,类别集合),密集表示机密程度,类别集合表示部门或组织的集合。 • 弱点 • 应用的领域比较窄,使用不灵活,一般只用于军方等具有明显等级观念的行业或领域,完整性方面控制不够。

  24. BLP多级强制访问控制策略 • 两个重要的安全特性(公理) • Simple Security Condition:主体读客体,当且仅当用户的安全等级必须大于或等于该信息的安全级,并且该用户必须具有包含该信息所有访问类别的类别集合 ; • *-Property (Star Property) :一个主体/用户要写一个客体,当且仅当用户的安全等级不大于该客体安全等级,并且该客体包含该用户的所有类别 。 • 安全特性 • 保证了信息的单向流动,即信息只能向高安全属性的方向流动,

  25. 强制访问控制防止木马举例 • SOS赋予High安全级;important文件安全级high • SPY赋予low安全级;pocket文件安全级low • 当运行木马程序时 • 木马程序获得High安全级,可以读important文件; • 当向Pocket文件进行写操作时会被拒绝,因为Pocket文件的安全级别低于木马程序的安全级别,所以不允许进行写操作。

  26. 9.2.5 隐蔽信道检测与控制 • 定义 • “在强制式访问控制下,主体间以违背安全策略的形式传递信息的通信信道”。 • 分类 • 隐蔽存储通道(Covert Storage Channel) • 隐蔽时间通道(Covert Timing Channel) • 相关研究 • 搜索:静态或动态 • 计算带宽 • 消除、减低带宽

  27. 隐蔽信道检测与控制 • 隐蔽存储通道存在场景 • 信息发送者直接或间接地修改某存储单元,信息接收者直接或间接地读取该存储单元。 • 其产生的必要条件有以下四条 • 发送和接收进程必须能够对同一存储单元具有存取能力; • 发送进程必须能够改变共享存储单元内容; • 接收进程必须能够探测共享存储单元内容的改变; • 必须有对通信初始化和发送与接收进程同步的机制;

  28. 隐蔽信道检测与控制 • 时间隐蔽信道的存在场景 • 信息发送者依据机密信息有规律地调节它对系统资源的使用,信息接收者通过观察系统来推断信息。 • 产生的必要条件有以下四条 • 发送和接收进程必须能够对同一广义存储单元具有存取能力; • 发送和接收进程必须具有时间参照物; • 接收进程必须能够探测到发送进程对广义存储单元内容的改变; • 必须有对通信初始化和发送与接收进程同步的机制;

  29. 9.2.6 安全审计(auditing) • 功能要求 • 是一种通过事后追查增强系统安全性的安全技术; • 对涉及系统安全的操作做完整记录,并对这些记录进行必要的分析。 • 审计处理 • 记录系统中主体对受保护的客体的违规访问情况; • 系统中主体对某些特定客体的违规访问情况。 • 审计机制 • 在系统调用的总入口处设置审计点,审计系统调用,也就审计了所有使用内核服务的事件。 • 要选择最主要的事件加以审计,不能设置太多的审计事件,以免过多影响系统性能。

  30. 安全审计 • Linux系统的审计 • 连接时间日志——login等程序更新wtmp和utmp文件,使系统管理员能够跟踪谁在何时登录到系统。 • 进程统计——由系统内核执行。当一个进程终止时,为每个进程往进程统计文件(pacct或acct)中写一个记录。 • 错误日志——各种系统守护进程、用户程序和内核通过syslog向文件/var/log/messages报告值得注意的事件。

  31. 主要内容 • 操作系统安全性基本概念 • 操作系统主要安全机制 • 安全操作系统设计与实现

  32. 9.3 安全操作系统设计与实现 9.3.1访问监视器(Reference Monitor) 审计数据库 主体 引用监视器 客体 访问控制数据库—安全策略 • 访问监视器是一种负责实施安全策略的软件和硬件的结合体 • 访问监视器只是一个理论上的概念,并没有一种实用的实现方法。一般人们把访问监视器的概念和安全内核和可信软件等同起来。

  33. 9.3.2 安全策略与安全模型 • 常用安全策略 • 自主存取控制策略 • 强制存取控制(BLP)策略 • BIBA策略 • 中国墙策略 • 常用安全模型 • 有限状态机模型 • 访问控制矩阵 • 基于角色的访问控制模型(RBAC)

  34. 安全体系结构——GFAC通用访问控制框架

  35. 安全体系结构——Flask结构

  36. 典型安全操作系统分析 • 在TCSEC促进下研制了多种具有B1级别以上的安全操作系统产品 • IBM的安全Xenix、 • Bell实验室的System V/MLS、 • 加拿大多伦多大学的安全TUNIS等 • 早期的安全操作系统基本上是按照TCSEC中的要求为蓝本研制 • 根据单一的整体安全策略对系统进行访问控制和防护。 • 现代安全操作系统中已逐步实现了多种安全策略(Security Policy) • 典型的是RSBAC和SELinux安全操作系统。

  37. RSBAC • RSBAC是基于GFAC提出的安全操作系统原型

  38. SELinux • SELinux采用Flask框架作为它的安全体系结构 • SELinux核心级的安全增强主要表现在三个方面 • 实现了功能强大的安全服务器-ESS(Example Security Server) • 按照Flask体系框架的要求,把Linux内核中的相应子系统,包括文件管理、进程管理、Socket控制等,改造成独立的客体管理器 • 客体管理器中实现了访问向量缓存AVC(Access Vector Caching)提高了效率。 • 实现了安全工具层 • 提供一个与安全服务器相配套的安全策略配置语言和相应配置工具

  39. 谢谢

More Related