{"name":"安全","id":"操作系统-安全","content":"# 操作系统安全\n\n> 1. 操作系统为什么必须具备安全性？\n> 2. 安全目标如何被转化为可执行的系统机制？\n> 3. 安全为何永远是一种动态博弈，而非静态状态？\n\n---\n\n## 一、安全的本质：操作系统的信任问题\n\n### 1. 操作系统在系统中的地位\n\n操作系统是：\n\n* **资源的唯一仲裁者**（CPU / 内存 / IO / 设备）\n* **权限的最终裁决者**\n* **软件执行的最低信任根**\n\n> 因此：\n> **一旦操作系统失守，上层所有安全假设都会失效。**\n\n安全并非“附加功能”，而是操作系统存在的**前提条件之一**。\n\n---\n\n## 二、安全目标层：系统必须守住的三条底线（CIA）\n\n| 安全目标                 | 本质含义      | 系统视角解释  |\n| -------------------- | --------- | ------- |\n| 机密性（Confidentiality） | 数据不被未授权获取 | 谁能读？    |\n| 完整性（Integrity）       | 数据不被未授权修改 | 谁能改？    |\n| 可用性（Availability）    | 系统不被恶意阻断  | 谁能让系统停？ |\n\n这三者并非功能需求，而是：\n\n> **对操作系统行为的约束条件**\n\n---\n\n## 三、威胁模型层：安全从“假设攻击者”开始\n\n### 1. 攻击者能力假设\n\n操作系统安全设计必须首先回答：\n\n* 攻击者是否拥有本地账户？\n* 是否可以执行任意用户态代码？\n* 是否可以并发竞争系统资源？\n* 是否可能获取部分系统信息（信息泄漏）？\n\n> **没有威胁模型的安全设计是空谈。**\n\n### 2. 攻击类型抽象\n\n| 分类   | 本质目标      |\n| ---- | --------- |\n| 被动攻击 | 获取不应获得的信息 |\n| 主动攻击 | 改变系统的预期行为 |\n\n---\n\n## 四、可信计算基础：为什么“绝对安全”不存在\n\n### 1. 可信系统的现实约束\n\n现代操作系统具备：\n\n* 海量代码规模\n* 高度动态行为\n* 多方参与的软件供应链\n\n因此：\n\n> **不存在“全系统可信”，只能存在“最小可信子集”。**\n\n### 2. 可信计算基（TCB）\n\nTCB 是：\n\n> **实施安全策略所必需、且必须被完全信任的硬件与软件集合**\n\n典型 TCB 组件包括：\n\n* 进程创建与切换\n* 内存管理\n* 文件与 IO 管理\n* 权限检查逻辑\n\n**设计原则**：\n\n* TCB 必须尽可能小\n* TCB 行为必须可验证\n\n---\n\n## 五、安全模型层：策略如何被形式化\n\n### 1. 强制访问控制（MAC）的思想\n\n核心思想：\n\n> **安全策略不属于用户，而属于系统本身。**\n\n### 2. 经典形式化模型\n\n#### Bell-LaPadula（机密性模型）\n\n* 不向下读（No Read Down）\n* 不向上写（No Write Up）\n\n解决问题：\n\n* 防止信息从高密级泄漏到低密级\n\n#### Biba（完整性模型）\n\n* 不向上读\n* 不向下写\n\n解决问题：\n\n* 防止低可信数据污染高可信对象\n\n### 3. 工程现实\n\n形式化模型：\n\n* 提供**思想边界**\n* 很少被完整实现\n* 更多用于指导策略设计而非直接落地\n\n---\n\n## 六、安全机制层：操作系统提供的控制手段\n\n### 1. 保护域（Protection Domain）\n\n保护域是：\n\n> **一组（对象 × 权限）的集合**\n\n进程运行在某一域中：\n\n* 权限随域变化\n* 域切换意味着权限重配置\n\n核心原则：\n\n> **最小权限原则（Least Privilege）**\n\n---\n\n### 2. 访问控制的两种核心实现\n\n#### 访问控制列表（ACL）\n\n* 权限绑定在对象上\n* 易于管理、易于撤权\n* 查询成本较高\n\n#### 权能字（Capability）\n\n* 权限绑定在主体上\n* 执行效率高\n* 权限传播需严格控制\n\n> 这是一个**管理性 vs 性能**的经典权衡。\n\n---\n\n## 七、工程实现层：安全如何落地\n\n### 1. 内存安全防护\n\n| 威胁     | 防御机制     |\n| ------ | -------- |\n| 缓冲区溢出  | 栈金丝雀     |\n| 任意代码执行 | DEP / NX |\n| 地址预测   | ASLR     |\n\n> 本质：\n> **限制“数据被当作指令执行”的可能性**\n\n---\n\n### 2. 代码重用与对抗升级\n\n* ROP / JOP 等技术\n* 安全机制 → 攻击绕过 → 再强化\n\n体现：\n\n> **红皇后效应：不进则退**\n\n---\n\n## 八、认证与身份体系\n\n认证解决的问题：\n\n> **你是谁？**\n\n授权解决的问题：\n\n> **你能做什么？**\n\n操作系统支持的认证形态：\n\n* 知识因子（密码）\n* 持有因子（卡、Token）\n* 生物特征\n\n---\n\n## 九、恶意软件：对系统信任链的持续侵蚀\n\n### 1. 恶意软件的本质分类\n\n| 类型      | 关键特征   |\n| ------- | ------ |\n| 病毒      | 依附宿主传播 |\n| 蠕虫      | 网络自传播  |\n| 木马      | 社会工程   |\n| Rootkit | 隐匿自身   |\n\n### 2. Rootkit 的危险性\n\nRootkit 的目标不是破坏系统：\n\n> **而是成为系统的一部分**\n\n---\n\n## 十、防御体系：纵深防御而非单点安全\n\n### 1. 多层安全模型\n\n| 层级  | 防御手段 |\n| --- | ---- |\n| 网络层 | 防火墙  |\n| 系统层 | 权限控制 |\n| 执行层 | 沙盒   |\n| 行为层 | IDS  |\n\n### 2. 检测与对抗\n\n* 特征检测\n* 行为检测\n* 蜜罐系统\n\n---\n\n## 十一、安全的工程哲学\n\n1. 安全是系统属性，不是功能\n2. 安全建立在最坏假设之上\n3. 安全机制必须可组合\n4. 安全永远是博弈而非终态\n5. 复杂性本身就是安全风险\n\n---\n\n## 十二、总结：操作系统安全的长期视角\n\n> 操作系统安全不是\"防漏洞集合\"，而是：\n> **在资源共享前提下，对信任进行最小化、对权限进行精确定义的系统工程。**\n\n它追求的不是绝对安全，而是：\n\n* 可理解的信任边界\n* 可验证的控制路径\n* 可演进的防御体系\n\n\n## 关联内容（自动生成）\n\n- [/计算机网络/网络安全/安全性.md](/计算机网络/网络安全/安全性.md) 操作系统安全与网络安全在C.I.A安全基本原则、安全控制、安全评估方法等方面有共通之处，共同构建完整的安全防护体系\n- [/计算机网络/网络安全/安全架构.md](/计算机网络/网络安全/安全架构.md) 网络安全架构中的身份认证、访问控制模型与操作系统安全中的认证机制、保护域、访问控制有相似原理，可相互参考\n- [/计算机网络/网络安全/认证与授权.md](/计算机网络/网络安全/认证与授权.md) 详细描述认证与授权机制，是操作系统安全中访问控制体系的具体实现方案，两者在身份验证、权限管理方面有直接关联\n- [/计算机网络/网络安全/网络安全技术.md](/计算机网络/网络安全/网络安全技术.md) 网络安全技术中的访问控制、权限管理与操作系统安全在安全模型、隔离技术等方面有共通之处，两者结合可构建端到端的安全防护体系\n- [/数据技术/合规与安全.md](/数据技术/合规与安全.md) 数据安全与操作系统安全在访问控制、权限管理、安全审计等方面有密切关联，操作系统安全是数据安全的基础保障\n- [/计算机网络/网络安全/Web安全.md](/计算机网络/网络安全/Web安全.md) Web安全与操作系统安全都涉及访问控制、权限管理、认证授权等概念，Web应用的安全最终需要操作系统的底层支持\n- [/操作系统/操作系统.md](/操作系统/操作系统.md) 操作系统设计中的安全治理、ACL、沙箱、SELinux等机制是操作系统安全的具体实现和体现\n- [/计算机网络/网络安全/业务安全.md](/计算机网络/网络安全/业务安全.md) 业务安全的底层基于操作系统安全，操作系统的认证机制、保护域、访问控制等概念对业务安全身份体系建设有重要参考价值\n- [/操作系统/容器化.md](/操作系统/容器化.md) 容器安全与操作系统安全密切相关，容器的隔离机制、权限控制、安全策略等基于操作系统安全机制实现\n- [/操作系统/虚拟化.md](/操作系统/虚拟化.md) 虚拟化技术中的安全隔离与操作系统安全中的保护域、访问控制等概念有相似性，都涉及资源隔离与权限管理\n- [/软件工程/安全生产.md](/软件工程/安全生产.md) 安全生产与操作系统安全都关注风险控制、权限管理、安全审计，共同保障系统稳定与业务连续性\n- [/计算机网络/网络安全/网络安全隔离技术.md](/计算机网络/网络安全/网络安全隔离技术.md) 网络隔离技术与操作系统安全在访问控制、权限管理、隔离等方面有共通之处，两者结合可构建端到端的安全防护体系\n","metadata":"tags: ['安全']","hasMoreCommit":true,"totalCommits":13,"commitList":[{"date":"2026-02-12T14:07:03+08:00","author":"MY","message":"doc: 整理标签","hash":"290b3e8ad18f48832ac282290238d020fc030a88"},{"date":"2025-12-15T17:36:51+08:00","author":"MY","message":"docs(os-security): 重构操作系统安全文档结构与内容","hash":"9dd9af890ee4a1ec98800fda55e917691cffe6ce"},{"date":"2022-07-05T21:37:37+08:00","author":"MY","message":"✏️更新 内存管理&安全","hash":"e767e9ecb9be8c0dc718a5f24a5940ef8655c38c"},{"date":"2020-12-21T17:15:59+08:00","author":"cjiping","message":"✏更新 操作系统 安全","hash":"59724dca30049a0005a436fbb976ed4076b46bc6"},{"date":"2020-12-15T20:37:06+08:00","author":"cjiping","message":"✏更新 操作系统 安全","hash":"a80255ca3faa882e43f06545966bf88aed8fe043"},{"date":"2020-12-14T17:32:33+08:00","author":"cjiping","message":"✏更新 操作系统 安全","hash":"33e5d3b0c6b8d71aba120a8be644eafab6a9dc81"},{"date":"2020-12-11T17:50:53+08:00","author":"cjiping","message":"✏更新 操作系统 安全","hash":"eeccfe7b4d740fb4f89f69f1244bc65f53f6b786"},{"date":"2020-12-09T17:54:47+08:00","author":"cjiping","message":"✏更新 操作系统 安全","hash":"42d4cc8bc0ba10a030855ffc6595c9914645540e"},{"date":"2020-12-08T19:13:24+08:00","author":"cjiping","message":"✏更新 操作系统 安全","hash":"7bc01029fdb7ef2de98fa19f7de37a8c542cbfe1"},{"date":"2020-12-05T17:19:09+08:00","author":"cjiping","message":"✏更新 操作系统 安全","hash":"c5952c9fad1d912628f848fab985fc3f30eeeb59"}],"createTime":"2019-07-09T12:04:41+08:00"}