威胁建模指南

STRIDE 威胁类别

字母威胁违反属性示例缓解措施
S欺骗 (Spoofing)认证伪造身份、IP 欺骗强认证、MFA、证书
T篡改 (Tampering)完整性修改传输或静态数据数字签名、HMAC、TLS
R否认 (Repudiation)不可否认性否认曾执行某操作审计日志、数字签名
I信息泄露 (Info Disclosure)机密性数据泄露、详细错误信息加密、访问控制、错误处理
D拒绝服务 (DoS)可用性DDoS、资源耗尽速率限制、自动扩缩容、CDN
E权限提升 (EoP)授权SQL 注入提权、缓冲区溢出最小权限、输入验证

威胁建模流程

步骤活动产出
1. 确定范围定义建模对象(应用、功能、系统)范围文档
2. 分解创建数据流图(DFD):进程、数据存储、外部实体、流、信任边界DFD 图
3. 识别威胁对 DFD 每个元素应用 STRIDE威胁列表
4. 威胁评级使用 CVSS 或 DREAD 评分;按风险排优先级风险评级威胁列表
5. 缓解为每个威胁设计控制措施安全需求、设计变更
6. 验证审查缓解措施;设计变更时更新模型更新后的威胁模型

DREAD 风险评分

因素问题评分(1–10)
危害 (Damage)被利用后危害有多大?1=微小,10=灾难性
可重现性 (Reproducibility)攻击有多容易重现?1=困难,10=轻而易举
可利用性 (Exploitability)需要多少技能/工具?1=专家,10=零门槛
受影响用户 (Affected Users)影响多少用户?1=一人,10=全部
可发现性 (Discoverability)漏洞有多容易发现?1=困难,10=显而易见