【软件与系统安全】二、软件与系统安全基础
这是《【软件与系统安全】笔记与期末复习》系列中的一篇
2022-01-17 第二次课
2022-02-21 第三次课前部分
计算机安全的目标:
防止信息“遭遇不测事件”, 但不能阻止“好的事情”发生(“好的事情”包括功能性、合法信息访问)
信任
略
可信计算基(TCB)
略
一个由对计算机系统安全起关键作用的硬件、固件和软件组成的集合,负责执行全系统的安全策略
威胁模型
威胁模型(Attack model):对于影响系统安全的所有信息的结构化表示
本质上, 是从安全的视角解读系统与其环境
用于理解攻击者
- 什么可信、什么不可信
- 攻击者的动机、资源、能力; 攻击造成的影响
威胁建模
捕获、组织和分析这些影响系统安全的信息的过程
威胁模型使得 结构化地推理 攻击面 成为可能
-
确定入口点
-
从攻击者的视角审视系统
- 分解、识别系统结构
- 确定各种威胁及其严重程度
- 确定对策和缓解措施
漏洞、攻击与危害
漏洞(vulnerability):可以被对缺陷具有利用能力的攻击者访问并利用的缺陷, 要素:
- 缺陷 (flaw)
- 攻击者能访问缺陷
- 攻击者有利用缺陷的能力
攻击(attack): 指攻击者尝试利用漏洞,例如 主动、被动、DoS…
危害(compromise):攻击成功则危害发生
安全策略与策略执行
安全策略
- 允许什么/不允许什么
- 谁被允许做什么
策略执行
-
为了安全策略被遵循, 我们要做什么
-
策略执行的方法:利用某些“机制”(mechanism)
- 说服
- 监控和威慑
- 技术上禁止 (这是我们最感兴趣的)
- 激励管理
安全策略是一个系统所应具备的 安全属性 的高层次规约
安全策略模型是安全策略的简明(规范化)描述
安全目标是用户希望通过执行安全策略而获得的东西
安全属性与安全目标有时不做严格区分
安全策略的 CIA 模型
参照 网络与协议安全 中的 CIA 概念
- 机密性(Confidentiality)
- 完整性(Integrity)
- 可用性(Availability)
其他安全目标:
隐私(Privacy)
可以归类到机密性下
非否认性(Non-repudiation), 或可追责性(accountability):防止对消息传送或接收的否认
也叫可计量性
网络与协议安全 中还有 真实性
安全属性的另一种分类方法:
- Safety 属性:“坏事”不会发生
- Liveness 属性:“好事”终会发生
任何安全属性都可以被分解为一个 safety 属性和一个 liveness 属性
注意:实际上有一些安全策略无法用 safety 属性或 liveness 属性表示, 如信息流策略(2-safety 属性[2])——是“非属性”(Non-Property)