4. 数据安全风险建模与威胁分析

数据安全治理不能停留在“上了哪些设备、配了哪些策略”的清单式管理上。真正决定防护优先级的是:哪些数据资产在哪些环节暴露于哪些威胁,暴露后会造成多大损失,以及现有控制能把风险压到什么水平。风险建模与威胁分析就是把这几个问题从模糊判断变成可比较、可排序、可复盘的量化过程。本节围绕数据生命周期威胁、攻击面分析、风险量化方法和场景化建模四个层次展开,并给出可直接套用的建模示例。

一、数据生命周期威胁:把威胁挂到数据流转的每个节点上

数据生命周期通常划分为采集、传输、存储、处理、共享交换、归档、销毁七个阶段。威胁建模的第一步不是罗列攻击手法,而是先画出数据的真实流转路径,再把威胁挂到路径的每个节点上。以某电商平台的用户订单数据为例,其流转路径为:App 采集 → 网关传输 → 订单库存储 → 风控与推荐系统处理 → 数据中台共享 → 冷备归档 → 到期销毁。

每个阶段的典型威胁与可利用的薄弱点并不相同:采集阶段面临过度采集、SDK 越权读取、终端被植入恶意程序;传输阶段面临明文传输、证书校验缺失、中间人劫持;存储阶段面临未加密落盘、备份介质失管、数据库账号权限过大;处理阶段面临内部人员越权查询、测试环境使用生产数据、日志打印敏感字段;共享交换阶段面临接口未鉴权、批量导出无审批、第三方留存超期;归档阶段面临冷数据长期无人审计;销毁阶段面临逻辑删除未物理清除、介质报废流程缺失。

把威胁挂到节点上之后,一个关键判断是威胁是否可跨阶段组合。例如“终端恶意程序读取本地缓存”叠加“传输未做双向校验”,就构成一条从采集到传输的完整攻击链,其风险高于两个孤立威胁的简单相加。建模时必须识别这类组合路径,否则会系统性低估风险。

二、攻击面分析:从外部可达面收敛到内部信任边界

攻击面分析回答的是“攻击者从哪里进来”。对数据安全而言,攻击面可分为四类:外部网络面(公网 API、开放端口、第三方回调)、应用接口面(未鉴权接口、越权 ID 遍历、批量查询)、身份与权限面(弱口令、长期凭证、离职未回收账号、服务账号共享)、数据流转面(导出通道、共享链路、备份介质、日志与监控数据)。

分析时建议采用“入口—信任边界—数据资产”的三段式梳理:先枚举所有可达入口,再标注每个入口跨越了哪些信任边界(如从公网进入 DMZ、从 DMZ 进入内网、从应用层进入数据库层),最后标注该路径最终能触达哪些数据资产。跨越信任边界越多、触达资产越敏感,该攻击面的优先级越高。需要特别注意的是,日志、监控、备份、测试环境往往是被忽视的高价值攻击面,它们常包含生产数据副本,却缺少与生产环境同等级别的访问控制。

数据生命周期威胁与攻击面映射模型 威胁挂载于流转节点 · 攻击面跨越信任边界 · 风险由可达性与资产价值共同决定 采集 App / SDK / 表单 传输 网关 / 专线 / 回调 存储 订单库 / 对象存储 处理 风控 / 推荐 / 报表 共享交换 数据中台 / 第三方 归档 / 销毁 冷备 / 介质报废 过度采集 SDK 越权读取 终端恶意程序 明文传输 证书校验缺失 中间人劫持 未加密落盘 备份介质失管 账号权限过大 内部越权查询 测试用生产数据 日志打印敏感字段 接口未鉴权 批量导出无审批 第三方留存超期 冷数据无审计 逻辑删除未清除 介质报废缺失 攻击面(攻击者可达入口) 外部网络面 公网 API / 开放端口 第三方回调 应用接口面 未鉴权接口 / 越权遍历 批量查询 身份与权限面 弱口令 / 长期凭证 离职未回收 / 共享账号 数据流转面 导出通道 / 共享链路 备份介质 / 日志监控 信任边界 公网 → DMZ DMZ → 内网 应用层 → 数据库层 生产 → 测试/备份 风险量化输出 风险值 = 资产价值 × 威胁可能性 × 脆弱性可利用度 × 影响范围 ÷ 现有控制有效性 输出:风险排序清单 → 控制措施优先级 → 残余风险接受/处置决策 组合攻击链:终端读取 + 传输未校验

三、风险量化方法:从定性分级到可计算的风险值

风险量化不必一开始就追求精确的财务损失模型,但必须做到可比较、可复算、可追溯。推荐采用因子乘积模型:

风险值 R = 资产价值 V × 威胁可能性 P × 脆弱性可利用度 E × 影响范围 S ÷ 控制有效性 C

各因子取值建议(1~5 分制,示例假设):
V:1=公开数据  3=内部数据  5=个人敏感信息/核心业务数据
P:1=极低      3=中等      5=已有公开利用工具或内部高发
E:1=需高权限  3=需普通账号 5=无需认证即可触发
S:1=单条记录  3=千级记录  5=百万级或全量
C:1=控制薄弱  3=部分有效  5=控制完备且持续验证

以“订单库未加密落盘”为例,假设 V=5(含手机号与收货地址)、P=3(内部人员越权查询在同类事件中占比中等)、E=3(需数据库普通账号)、S=5(可批量导出全量)、C=2(仅有基础账号管理,无字段级加密与审计),则 R = 5×3×3×5÷2 = 112.5。再以“日志打印敏感字段”为例,V=4、P=4(开发习惯性打印,发生概率高)、E=4(日志平台访问门槛低)、S=3(单次日志量有限)、C=3,则 R = 4×4×4×3÷3 = 64。两者对比,前者应优先投入字段级加密与数据库审计,后者应优先做日志脱敏与访问收敛。

需要强调的是,因子取值必须来自可核查的依据:V 来自数据分类分级结果,P 来自历史事件统计或行业威胁情报,E 来自渗透测试或配置核查结论,S 来自数据量统计,C 来自控制措施的有效性验证记录。没有依据的取值只是主观打分,无法支撑跨部门的风险排序。

四、场景化建模:把通用模型落到具体业务场景

通用模型容易停留在纸面,场景化建模才是落地的关键。做法是选取一条真实业务链路,把生命周期节点、攻击面、威胁、控制措施和风险值串成一张可评审的模型表。以下为“用户订单数据共享给第三方物流”的场景化建模示例(参数为教学假设值):

生命周期节点 攻击面 威胁 V P E S C R 优先控制措施
共享交换 应用接口面 接口未鉴权,可遍历订单号拉取 54442160 接口双向鉴权 + 订单号脱敏 + 频率限制
共享交换 数据流转面 第三方留存超期,数据未回收 5325275 合同约定留存期 + 到期核验 + 回收证明
存储 身份与权限面 物流侧账号权限过大,可查全量 53352112.5 最小权限 + 按需授权 + 查询审计
传输 外部网络面 回调地址未校验,可伪造推送 4333336 签名校验 + 白名单 + 时间戳防重放

建模完成后,应组织业务、研发、安全三方对因子取值进行评审,重点质疑 P 和 C 的取值依据。评审通过后,把 R 值高于阈值的条目转为整改任务,并明确整改后的预期 C 值,从而计算残余风险。例如接口鉴权从 C=2 提升到 C=4,R 从 160 降至 80,若仍高于阈值,则需叠加脱敏或频率限制继续压降。

场景化建模的价值不在于一次算准,而在于形成“资产—威胁—控制—风险值—整改—复算”的闭环。每次控制措施上线后重新评估 C 值,风险清单就会随治理进展动态收敛,而不是一份写完就归档的文档。
常见误区:只统计威胁数量而不评估可达性与资产价值,导致“低价值资产上的高危漏洞”挤占了核心数据的整改资源;或者把 C 值一律填成 3,使风险排序失去区分度。因子取值必须有来源、有记录、可复核。

综上,数据安全风险建模的完整路径是:先沿数据生命周期挂载威胁并识别组合攻击链,再从四类攻击面梳理可达入口与信任边界,然后用因子乘积模型把风险转为可比较的数值,最后落到具体业务场景形成可评审、可整改、可复算的模型表。这条路径使安全投入从“凭经验”转向“按风险值排序”,也为后续的架构治理与控制选型提供了直接依据。