PatrickGallucci/threat-model-templates
GitHub: PatrickGallucci/threat-model-templates
面向微软威胁建模工具的 SaaS 安全模板集,提供涵盖 20 余种主流云服务的 STRIDE+A 威胁目录与预置模具,帮助企业系统化开展 SaaS 威胁建模。
Stars: 179 | Forks: 44
# Microsoft 模板 - Microsoft 安全威胁模型模具
https://www.microsoft.com/en-us/securityengineering/sdl/threatmodeling

## 发布说明
**第 12 版 (2026-05-06)**
## 本次更新新增内容
- [Microsoft 模板威胁目录](ThreatCatalog.md)
- 添加了示例 PowerShell 脚本以通过 Azure 订阅创建模型 [New-AzureThreatModel.ps1](/Scripts/New-AzureThreatModel.ps1)
## STRIDE+A 分布
| 类别 | 数量 | 威胁 |
|---|---|---|
| S — 欺骗 | 1 | TH381 |
| T — 篡改 | 5 | TH364, TH366, TH368, TH370, TH375 |
| R — 否认 | 1 | TH379 |
| I — 信息泄露 | 17 | TH356, TH357, TH358, TH360, TH361, TH362, TH363, TH365, TH367, TH369, TH371, TH373, TH374, TH376, TH377, TH378, TH380 |
| D — 拒绝服务 | 1 | TH382 |
| E — 权限提升 | 2 | TH359, TH372 |
| A — 滥用 | 0 | (除了 TH219、TH242 中已有的 LLM/AI 滥用模式外,没有 SaaS 独有的滥用模式) |
这种以信息泄露 (I) 为主的分布准确反映了 SaaS 的威胁面:大多数平台级风险集中在过度分享、联合身份验证缺口以及因错误使用合法共享功能导致的内容暴露。
## 本轮更新后的模具覆盖情况
现在,每个 SaaS 模具在本轮中至少有 2 个专属威胁:
| 模具 | 针对它的新威胁(本轮) |
|---|---|
| GE.CS (父级) | TH356, TH379, TH380 |
| Adobe | TH356, TH357, TH358, TH359, TH374, TH375, TH379, TH380, TH382 |
| ADP | TH356, TH358, TH359, TH367, TH379, TH380, TH382 |
| Aero | TH356, TH358, TH359, TH360, TH361, TH362, TH379, TH380, TH381 |
| Box Storage | TH356, TH357, TH358, TH359, TH361, TH362, TH376, TH379, TH380, TH382 |
| Dynamics CRM | TH358, TH359, TH372, TH379, TH380, TH382 |
| Dynamics CRM Portal | TH372, TH373 |
| Expensify | TH356, TH358, TH359, TH367, TH368, TH379, TH380, TH382 |
| Jira | TH356, TH357, TH358, TH359, TH360, TH361, TH362, TH379, TH380, TH381, TH382 |
| Microsoft 365 | TH356, TH357, TH358, TH359, TH361, TH362, TH379, TH380, TH381, TH382 |
| Monday | TH356, TH357, TH358, TH359, TH360, TH361, TH362, TH379, TH380, TH381, TH382 |
| Notion | TH356, TH357, TH358, TH359, TH360, TH361, TH362, TH379, TH380, TH381, TH382 |
| Postmark | TH356, TH358, TH359, TH369, TH370, TH379, TH380, TH382 |
| Power Automate | TH356, TH358, TH359, TH378, TH379, TH380, TH382 |
| Power BI Platform | TH356, TH358, TH359, TH377, TH379, TH380 |
| Salesforce | TH356, TH357, TH358, TH359, TH371, TH372, TH379, TH380, TH381, TH382 |
| Trello | TH356, TH357, TH358, TH359, TH360, TH361, TH362, TH379, TH380, TH381, TH382 |
| Slack | TH356, TH357, TH358, TH359, TH361, TH363, TH364, TH379, TH380, TH381, TH382 |
| Zoom | TH356, TH357, TH358, TH359, TH361, TH365, TH366, TH379, TH380, TH381, TH382 |
| Workday | TH356, TH358, TH359, TH367, TH379, TH380, TH382 |
## 按主题分组的威胁
### 跨领域 SaaS 治理
**TH356 — SaaS 未与企业 IdP 联合** *(I / 高)*
在 IdP 停用后本地账户依然存在;SCIM 预配是正确的解决方案。
**TH357 — SaaS 市场第三方集成** *(I / 高)*
最终用户的 OAuth 授权在离职后依然存在,并作为未知信任度供应商的长期访问权限不断累积。
**TH358 — SaaS 审计日志未导出至中央 SIEM** *(I / 中)*
每个 SaaS 在本地保留日志的时间有限;跨 SaaS 调查需要中央关联分析。
**TH359 — SaaS 管理员角色集中** *(E / 高)*
没有 PIM/JIT 控制的静态管理员角色集中了整个租户的特权。
**TH379 — 供应商审计保留期限** *(R / 中)*
日志保留时间可能无法满足调查的时间线要求;导出到租户控制的归档是解决方案。
**TH380 — SaaS 数据驻留和子处理者列表** *(I / 高)*
供应商区域选择和子处理者变更可能会将数据移动到租户未授权的监管边界之外。
### 工作管理 / 生产力
**TH360 — 公共链接分享** *(I / 高)*
“发布到 Web”/“拥有链接的任何人”功能导致最终用户过度分享看板、页面和工单。
**TH361 — 粘贴到工单/卡片/页面中的机密信息** *(I / 中)*
为方便协作而粘贴的凭据、token 和客户 PII 会保留在修订历史记录和搜索索引中。
**TH362 — 外部来宾工作区可见性** *(I / 中)*
来宾通常能看到比邀请者预期更多的内容;交叉引用和搜索会暴露无关的工作区内容。
### 团队沟通
**TH363 — Slack 无限期消息保留** *(I / 中)*
默认保留策略会保存数年的频道和直接消息;一旦工作区被攻破,将导致累积的内容被窃取。
**TH364 — Slack webhook URL 泄露** *(T / 高)*
Webhook URL 即是持有者凭据;泄露后攻击者可通过伪造逼真的自动化消息进行内部钓鱼。
**TH365 — Zoom 云端录像暴露** *(I / 高)*
默认共享设置 + 转录文本 + 聊天日志,使得敏感会议可被原始参与者之外的人访问。
**TH366 — 通过泄露的 ID 劫持 Zoom 会议** *(T / 中)*
没有密码/等候室的会议容易遭到“Zoom轰炸” 并导致机密谈话被窃听。
### HR / 财务 / 薪资
**TH367 — HR/薪资 PII 数据分类** *(I / 高)*
薪酬、税号、银行信息、受抚养人信息、医疗记录——均属于最高敏感级别,应当采取更严格的基线控制措施。
**TH368 — 通过篡改报销凭证进行费用欺诈** *(T / 中)*
通过 OCR 修改金额、合成虚假收据、类别作弊——需要在设计时对验证规则和审批进行控制。
### 邮件 / 事务性 API (Postmark)
**TH369 — 事务性电子邮件 API token 泄露** *(I / 高)*
泄露的 token 允许攻击者从经过验证的组织域发送通过 SPF/DKIM/DMARC 验证的钓鱼邮件。
**TH370 — 电子邮件模板篡改** *(T / 高)*
服务器端模板被篡改,将合法的事务性流程(密码重置、发票)转化为钓鱼/恶意软件投递。
### CRM (Salesforce, Dynamics CRM)
**TH371 — Salesforce 共享模型复杂性** *(I / 高)*
组织范围默认值 (OWD) + 角色层级 + 共享规则 + 手动共享 + Apex 共享 → 随着时间推移导致实际访问权限发生偏移。
**TH372 — 具有广泛权限的 CRM 集成用户** *(E / 高)*
等同于系统管理员的共享服务账户分布在众多集成中。
**TH373 — Dynamics CRM Portal 实体权限** *(I / 高)*
门户权限是独立于内部 CRM 安全性的单独模型;全局范围的授权可能会暴露表中的所有行。
### 创意 / 文档
**TH374 — Creative Cloud 库过度分享** *(I / 中)*
组织范围的库会暴露未发布的设计和附带元数据的嵌入客户数据。
**TH375 — Adobe Sign 工作流篡改** *(T / 高)*
工作流设计权限允许替换签名者、更改文档版本或重定向完成流程。
### 文件存储
**TH376 — Box 匿名链接分享** *(I / 高)*
“拥有链接的任何人”这一默认设置使得文件夹对任何获取该 URL 的人全局可读。
### Power BI / Power Automate
**TH377 — Power BI 发布到 Web (Publish to Web)** *(I / 高)*
公共 URL + 可查询的底层数据集 = 未经身份验证即可读取报告内容和数据集。
**TH378 — Power Automate 连接器 DLP 缺口** *(I / 高)*
如果没有 DLP 策略,流程将桥接企业和消费者连接器,从而成为数据外泄通道。
### 跨 SaaS 身份与可靠性
**TH381 — 显示名称冒充** *(S / 中)*
用户可控制的显示名称可实现内部社会工程学攻击,例如冒充“CEO 姓名”、“IT 服务台”。
**TH382 — 租户 API 速率限制耗尽** *(D / 中)*
一个失控的集成会耗尽资源,导致同一租户下的所有其他使用者无法正常使用。
标签:AI合规, AI安全, Azure, Chat Copilot, Libemu, Microsoft Threat Modeling Tool, PowerShell脚本, SaaS安全, SDL, STRIDE, STRIDE+A, 信息泄露, 协议分析, 威胁建模, 威胁目录, 威胁识别, 安全合规, 安全工程, 安全开发生命周期, 安全架构, 安全模板, 抵赖, 拒绝服务, 权限提升, 模板库, 欺骗, 渗透测试防御, 滥用, 篡改, 网络代理, 网络安全, 隐私保护