zoukankan      html  css  js  c++  java
  • 复习笔记--计算机系统安全

    Lecture 1

    • 安全目标

    • 机密性(confidentiality、secrecy、privacy):授权用户具有读权限

    • 完整性(integrity):仅被授权实体可按所授权权限进行修改

    • 可用性(availability):仅被授权实体可访问

    • 防御方法

    • 防止:prevention

    • 阻碍:hindrance

    • 震慑、制止:deterrence

    • 偏斜、偏差:deflection

    • 检测:detection

    • 恢复:recovering

    • 安全原则

    • 最弱链接原则

    • 适当保护原则:安全目标不是最大化安全,而是最大化实用性,限制风险的花费控制在可接受范围内

    • 有效性原则:必须使用控制措施,控制措施要适当、有效,措施要充分、适合,用户心理能接受

    • 深度防御

    • 晦涩的安全是不起作用的

    • 系统的安全需求,如:

    • 银行

    • 空军基地

    • 医院

    • 家庭

    Lecture 2

    • 内存保护模式:保证一个用户的进程不能访问其他人的内存空间,操作系统进程、用户进程具有不同的权限

    • 栅栏

    • 分段

    • 分页

    • 基/堆寄存器

    • 重分配

    • CPU模式(又叫处理器模式、特权模式)

    • 系统模式(内核模式):可以执行任意指令、访问任意内存地址、硬件设备、中断操作、改变处理器特权状态、访问内存管理单元、修改寄存器

    • 用户模式:受限的内存访问,有些指令不能执行

    • 不能停止中断,改变任意进程状态,访问内存管理单元等

    • 从用户模式转到系统模式的切换必须通过系统调用

    • 服务程序和用户的应用作为进程运行,形成用户空间

    • root用户运行的进程可能在内核模式或用户模式

    • 内核实现方法

    • 单核:一个大内核提供所有的服务,包括文件系统、网络服务、设备驱动等

    • 所有内核代码运行在单地址空间,互相之间会产生影响

    • 如,Linux2.6内核有6百万条代码

    • 优点:高效

    • 缺点:复杂,某部分的bug会影响整个系统

    • 例如:UNIX-variants:FreeBSD,SunOS,AIX,NetBSD

    • 提供可加载内核模块的内核依然是单核,如MULTICS

    • 微内核:内核较小,仅提供执行系统服务必须的机制

    • 内核提供:低地址空间的管理,线程管理,进程间通信

    • 操作系统的服务可在用户模式下工作:包括设备驱动、协议栈、文件系统、用户的接口代码

    • 优点:可实现最小特权,容忍设备驱动的失败/错误等

    • 缺点:性能差,系统的关键服务出错后会使系统停机

    • 系统调用:UNIX为每个系统调用在标准C库中设置一个同样名字的函数。用户进程用标准C调用序列来调用这些函数,启动函数调用对应的内核服务

    • 进程控制

    • prctl:对进程进行特定操作

    • ptrace:进程跟踪

    • 文件管理

    • fcntl:文件控制

    • umask:设置文件权限掩码

    • truncate:截断文件

    • 用户管理

    • 信息维护

    • 通信

    • 用户空间的安全机制

    • 鉴别

    • 访问控制

    • 记录日志和审计

    • 入侵检测

    • 被动式IDS vs 响应式IDS

    • 基于主机IDS vs 基于网络IDS

    • 恢复

    Lecture 3

    • 二进制文件 vs 脚本文件

    • 命令cat和more调用了read()系统调用,但仅当对要访问的文件或者目录有r权限才能调用、

    • mv命令对转移文件不需要读权限

    • 粘滞位:在最低位,为t表示无x权限,有T表示有x权限,t/T都表示只有拥有者且为root才能删除或更名目录下文件

    • 对于目录:读权限仅能显示目录下的文件的文件名,执行权限可以用于遍历文件属性信息,写加执行权限可以在目录下创建删除文件更名文件,且在UNIX中,目录不具有继承性

    • 若无写权限,则用户无法访问目录下文件信息

    • 若有读权限但是无执行权限

    • ls somedir, ok

    • ls -l somedir, no

    • 有执行权限但无读权限

    • ls -l someDir/file, ok

    • ls somedir, no

    • 只有超级用户可以创建一个目录的硬链接

    • /etc/group文件保存组用户和组id的映射

    Lecture 4

    • 访问控制的一些建议

    • 虚拟化限制

    • 操作系统级虚拟化

    • chroot

    • FreeBSD jail

    • 虚拟机

    • 虚拟指令集

    • root权限分开

    • POSIX/Linux内核能力

    • FreeBSD安全级

    • 细粒度的、基于进程的强制访问控制:目的是更好的实现最小特权,分配一个程序其需要的权限,不同于按用户进行权限划分

    • chroot好处

    • 增加了系统的安全性,限制了用户的全力

    • 建立一个与原系统隔离的系统目录结构,方便用户的开发

    • 切换系统的根目录位置,引导Linux系统启动以及急救系统等

    • chroot的一些原则

    • 在chroot环境下以non-root user运行

    • 正确的放弃权限

    • 利用chdir显示进入jail

    • 在jail环境中内容尽量少

    • 尽可能让root管理jailed文件

    • 建立权限设置脚本

    • 不要在jail环境存放/etc/passwd文件

    • 在建立jail环境前关闭文件描述符

    • FreeBSD jail的三个目标

    • 虚拟化:每个jail是运行于单机的虚拟环境,拥有自己的文件,进程,用户,超级用户。在jail内部看起来和真实系统一样

    • 安全:每个jail和其他部分无关联,破坏其他部分比较困难

    • 容易授权:因为jail是受限环境,管理员授权后对整个系统影响不大

    • 虚拟机在用户进程中模拟硬件,性能差;虚拟指令集无主机OS,只有一个小型的虚拟指令集运行在硬件上,性能高,能支持多个OS

    • 细粒度访问控制工具:Systrace,LIDS

    • SELinux:类型强制访问控制(TE),所有访问都必须明确授权,默认不允许任何访问,无超级用户,通过指定主体类型(即域)和客体类型使用allow规则授予访问权限

    • 每个进程上下文:ID,role,domain

    • allow规则由四部分组成

    • 源类型:尝试访问的进程的域类型

    • 目标类型:被进程访问的客体的类型

    • 客体类型:指定允许访问的客体的类型

    • 许可:象征目标类型允许源类型访问客体类型的访问种类

    • 如:allow user_t bin_t:file {read execute},user_t为源类型,bin_t和目标类型或者客体类型,file是其名称,大括号内包括的许可是文件客体类别有效许可

    Lecture 5

    • 访问控制矩阵:行表示用户或进程(主体S),列表示文件(客体O),值为权限。即A(S,O)准确的描述了保护状态的模型。描述一个主体(进程)相对于系统客体的权限,并且是变化的。

    • 通常客体可操作的可称为客体:目录、文件或者内存段。在遇到kill、suspend、resume等命令时,主体可以当成客体使用

    • 访问控制列表(ACL):每个客体维持一个访问列表,列表上为用户以及在这个客体上相应的权限

    • 能力表:每个用户或者进程(主体)维持多个序列对,序列对内容是客体和对应权限

    • 自主访问控制(DAC)是依据主体的判断力授予访问权限,通常由客体的拥有者授权,但是容易被Trojan木马入侵

    Lecture 6

    • 两阶段更新:准备阶段和提交阶段,防止数据很大修改到一半就失败。提交阶段时要设置提交标志,写入数据库。直到COMMIT-FLAG为0才能执行操作

    • 推理:根据不敏感的数据得到、推理敏感数据。

    Lecture 7

    • 安全策略:定义了系统的安全,可以是非形式化的,也可以是数据描述,精确定义安全策略后,我们信任它

    • 将计算机系统想象成有限状态的自动机,设定一系列转换函数

    • 策略将系统状态划分为

    • 被授权状态

    • 未授权状态(不安全)

    • 机密性:X为实体集,I为信息,I具有机密性属性:如果无x属于X可以从I中获得信息,如X为学生,I为期末考试试卷题目

    • 完整性:I相对于X来说有完整性,当所有x属于X,信任I中的信息。

    • 信任的类型包括

    • 信任I,包括传递和保护(数据完整性)

    • I的起源和身份(初始完整性,鉴别)

    • 信任其能按预定的功能工作(保障)

    • 可用性:I相对X来说有可用性:当所有x属于X可以访问I

    • 可用性类型

    • 按传统:x可以访问或者不可以访问

    • 按服务质量:访问效率等

    Lecture 8

    • BLP模型

    • 信息安全级别

    • 绝密 Top Secret

    • 机密 Secret

    • 秘密 Confidential

    • 公开 Unclassified

    • 主体的安全许可L(s),客体的安全级L(o)

    • 信息向上流动,非向下流动

    • 上读不允许,下读允许

    • 禁止上读原则

    • 信息向上流动,非向下流动

    • 上写允许,下写不允许

    • 禁止下写原则

    • A是安全级,C是安全分类,(A,C) dom (A',C') iff A' <= A和C'属于C。如(Top Secret,{NUC,ASI}) dom (Secret,{NUC})

    • 安全级集合L = A x C,dom形成格序

    • 最小上界lub(L) = (max(A), C)

    • 最大下界glb(L) = (min(A), 空)


    • DG/UX System

    • 初始

    • 主体的标签:指定为用户,保存在授权与鉴别数据库中

    • 客体在创建时建立标签

    • 显示标签:是属性的一部分

    • 隐式标签:从父目录获得

    • 进程p(MAC_A标签)想创建/tmp/x,可是x已经存在,标签为MAC_B,并且MAC_B dom MAC_A,所以创建失败

    • 多级目录时,若进程p为MAC_A标签,想创建/tmp/x,可是MAC_A对应的目录为/tmp/d/,所以创建了/tmp/d/x


    Lecture 9

    • Biba完整性模型

    • 主体和客体具有完整性级别I,包括完整级和分类(和机密性类似)
    • 读写和BLP模型相反
    • 执行操作和写操作一样

    • Clark-Wilson模型

    • 主要关注责任分离和事务

  • 相关阅读:
    ASP.NET MVC 3: Razor中的@:和语法
    telerik 值得学习 web mvc 桌面 控件大全
    Android 基于google Zxing实现对手机中的二维码进行扫描
    Android 基于google Zxing实现二维码、条形码扫描,仿微信二维码扫描效果
    SQL聚集索引和非聚集索引的区别
    SQL Server的聚集索引和非聚集索引
    请教一个Jquery ligerui 框架的小问题
    学习如何用VS2010创建ocx控件
    nginx-rtmp-module--------------WIKI
    rtmp一些状态信息详解-as连接FMS服务器报错状态汇总~~
  • 原文地址:https://www.cnblogs.com/vachester/p/7082991.html
Copyright © 2011-2022 走看看