安全模型与原则 · kp-001
CIA 三元组:保密性、完整性、可用性
入门
约 15 分钟
状态:reviewed
#基础#安全模型#CIA
一句话定义
CIA 三元组(CIA Triad)是安全领域的最小评价坐标系:保密性(Confidentiality,信息不被未授权者读取)、完整性(Integrity,信息不被未授权篡改)、可用性(Availability,授权者需要时能正常访问)。
为什么重要
所有安全控制的最终目的都能映射回这三个属性;脱离坐标系谈"安全"会退化为功能清单。它回答三个关键问题:防谁看、防谁改、保证谁用。当你评估一个新系统或新风险时,第一步就是问"这次破坏落在哪个属性上"——勒索软件同时破坏三项(加密数据破坏保密与完整、停机破坏可用),所以它才被视为复合型危机。
前置知识
无。本知识点是全库的起点。
核心概念
- 保密性(Confidentiality):对应风险是信息泄露(Disclosure)。典型控制:加密、访问控制、最小权限。
- 完整性(Integrity):对应风险是信息篡改(Alteration)。典型控制:哈希校验、数字签名、审计日志。
- 可用性(Availability):对应风险是服务中断(Destruction/Denial)。典型控制:冗余、备份、容量规划、抗 DDoS。
- 反向视角 DAD:泄露、篡改、破坏——攻击者的三个目标恰好与 CIA 一一对应,做威胁分析时用它枚举更顺手。
- 扩展属性:真实性(Authenticity,确认来源)、不可否认性(Non-repudiation,行为无法抵赖),通常由签名与审计机制承载,可视为完整性与认证的组合。
公式、模型或图示
保密性 C
(不被窃)
/ \
完整性 I —— 可用性 A
(不被改) (不中断)
风险 ≈ 威胁 × 脆弱性 × 资产价值风险近似式不是精确公式,而是资源分配的思考工具:三者任一为低,整体风险就低;安全投入应优先压低"威胁 × 脆弱性"中更容易控制的那一项。
原理与机制
三个属性在不同资产上的权重不同,安全设计的第一步是给资产标注最敏感的属性:数据库记录通常保密性优先,日志系统完整性优先,对外 API 可用性优先。权重决定控制的取舍——对保密性优先的资产,加密与权限收紧可以牺牲部分性能;对可用性优先的资产,则要为冗余与降级留预算。三个属性之间还存在张力:为保密性做的强加密与多因素认证会损害可用性(用户被锁在门外),为可用性做的多副本复制会扩大保密性攻击面(副本越多、泄露点越多)。因此 CIA 不是"三项都拉满",而是在资产价值约束下的显式权衡。
实例或案例
- 医院数据库:保密性优先——病历泄露即是重大事故,控制以加密与权限为主。
- 股票行情接口:可用性优先——数据本身是公开的,停机才是损失,控制以冗余与抗 DDoS 为主。
- 转账指令:完整性优先——金额哪怕被改一位都是资损,控制以签名与复核为主。
- 勒索软件案例:同时打击三项,说明控制需要成体系而非单点。
直观类比
CIA 像保管一份纸质合同:保密性是放进保险柜,完整性是盖骑缝章与火漆封印,可用性是同时留一份副本在防火柜里。三者缺一,"安全"都只是部分成立。
常见误区
- 把安全等同于保密:"没泄露就是安全的"忽视了可用性事故(宕机)与完整性事故(静默篡改)。
- 认为可用性与安全无关:拒绝服务恰恰是三大属性之一,容量规划是安全工作。
- 追求绝对安全:安全是风险压到可接受程度的状态,不是零风险状态。
与其他知识点的关系
- kp-003(最小权限与纵深防御):把 CIA 目标落到控制策略上的两个基本原则。
- kp-025(漏洞管理):CVSS 评分的 C/I/A 三个影响维度直接来自本课。
自测题
- 一家电商把商品价格数据存在无备份的单机数据库里,最受伤的是 CIA 中哪一项?要点:可用性;单点故障 + 无备份使中断不可恢复,其次是完整性。
- 攻击者拿到了只读权限的数据库账号并导出全部用户表,破坏了哪些属性?要点:保密性(数据泄露);若后续篡改数据则再破坏完整性。
- 为什么说"系统很稳定所以不需要安全投入"不成立?要点:稳定只覆盖可用性的一部分;保密性与完整性风险与稳定性正交,且勒索类攻击会同时破坏三项。
延伸阅读
《Security Engineering》(Ross Anderson)第 1 章:以工程视角讨论安全属性与失败模式,与本课的权衡思想一致。