Conducts threat modeling with OWASP Threat Dragon: creates DFDs, identifies threats using STRIDE/LINDDUN, generates PDF reports for security design reviews.
npx claudepluginhub killvxk/cybersecurity-skills-zhThis skill uses the workspace's default tool permissions.
OWASP Threat Dragon 是一个开源威胁建模工具,使安全团队和开发人员能够创建威胁模型图、使用成熟方法论(STRIDE、LINDDUN、CIA、DIE、PLOT4ai)识别威胁,并生成全面报告。Threat Dragon 可作为 Web 应用和桌面应用(Windows、macOS、Linux)运行,支持分布式团队协作开展威胁建模。2.x 版本提供拖放式图表创建、威胁和缓解措施自动生成规则引擎,以及用于文档和 GRC 合规的 PDF 报告输出。
Guides threat modeling with OWASP Threat Dragon: create DFDs, identify threats using STRIDE/LINDDUN, generate reports for secure design reviews.
Uses OWASP Threat Dragon to create data flow diagrams, identify threats via STRIDE and LINDDUN, and generate reports for secure design reviews. Useful for security assessments and audits.
Applies STRIDE methodology to model threats: identifies components, generates Mermaid DFDs, categorizes threats, scores risks by probability/impact, proposes mitigations.
Share bugs, ideas, or general feedback.
OWASP Threat Dragon 是一个开源威胁建模工具,使安全团队和开发人员能够创建威胁模型图、使用成熟方法论(STRIDE、LINDDUN、CIA、DIE、PLOT4ai)识别威胁,并生成全面报告。Threat Dragon 可作为 Web 应用和桌面应用(Windows、macOS、Linux)运行,支持分布式团队协作开展威胁建模。2.x 版本提供拖放式图表创建、威胁和缓解措施自动生成规则引擎,以及用于文档和 GRC 合规的 PDF 报告输出。
| 类别 | 威胁类型 | 描述 | 示例 |
|---|---|---|---|
| S | 欺骗(Spoofing) | 冒充用户或系统 | 会话令牌盗用 |
| T | 篡改(Tampering) | 修改传输中或静止的数据 | SQL 注入改变记录 |
| R | 抵赖(Repudiation) | 否认某操作已发生 | 缺少审计日志 |
| I | 信息泄露(Information Disclosure) | 暴露敏感数据 | API 返回过多字段 |
| D | 拒绝服务(Denial of Service) | 使服务不可用 | 资源耗尽攻击 |
| E | 权限提升(Elevation of Privilege) | 获取未授权访问 | 访问控制失效 |
| 类别 | 威胁类型 | 描述 |
|---|---|---|
| L | 可关联性(Linkability) | 跨上下文关联数据项 |
| I | 可识别性(Identifiability) | 从数据中识别个人身份 |
| N | 不可否认性(Non-repudiation) | 无法否认某操作(隐私风险) |
| D | 可检测性(Detectability) | 确定是否存在关于某主体的数据 |
| D | 信息泄露(Disclosure) | 暴露个人信息 |
| U | 不知情(Unawareness) | 用户不知晓数据收集 |
| N | 违规(Non-compliance) | 违反隐私法规 |
桌面应用: 从 OWASP Threat Dragon 发布页 下载 Windows(.exe)、macOS(.dmg)或 Linux(.AppImage/.deb/.rpm)安装包。
Web 应用(Docker):
docker run -p 3000:3000 \
-e ENCRYPTION_JWT_SIGNING_KEY=$(openssl rand -hex 32) \
-e ENCRYPTION_JWT_REFRESH_SIGNING_KEY=$(openssl rand -hex 32) \
-e ENCRYPTION_KEYS='[{"isPrimary":true,"id":0,"value":"'$(openssl rand -hex 16)'"}]' \
-e NODE_ENV=production \
owasp/threat-dragon:latest
在创建图表前,记录范围:
在 Threat Dragon 中创建新威胁模型,使用以下 DFD 元素添加图表:
处理(Process):转换数据的应用程序、微服务、API 端点。用圆圈/圆角矩形表示。
数据存储(Data Store):持久化数据的数据库、文件系统、缓存、消息队列。用平行线表示。
外部实体(External Entity):信任边界外的用户、外部系统、第三方服务。用矩形表示。
数据流(Data Flow):元素之间显示数据方向的通信通道。用带标签的箭头表示,标签描述数据内容。
信任边界(Trust Boundary):分隔不同信任级别区域的虚线(互联网/DMZ/内部网络、用户/管理员)。
对每个 DFD 元素应用 STRIDE 方法论:
| 元素类型 | 适用的 STRIDE 类别 |
|---|---|
| 外部实体 | 欺骗、抵赖 |
| 处理 | 欺骗、篡改、抵赖、信息泄露、DoS、权限提升 |
| 数据存储 | 篡改、信息泄露、DoS |
| 数据流 | 篡改、信息泄露、DoS |
Threat Dragon 的规则引擎根据元素类型自动建议威胁。审查每个建议并标记为:
对每个开放威胁,记录:
Threat Dragon 生成包含以下内容的 PDF 报告:
Threat Dragon 使用 JSON 格式存储威胁模型,支持版本控制和程序化操作:
{
"version": "2.2.0",
"summary": {
"title": "电子商务应用",
"owner": "安全团队",
"description": "结账流程的威胁模型"
},
"detail": {
"contributors": [
{"name": "安全架构师"}
],
"diagrams": [
{
"id": 0,
"title": "结账流程",
"diagramType": "STRIDE",
"cells": []
}
]
}
}
Threat Dragon 参与 CycloneDX 威胁模型物料清单(TMBOM)工作,支持导出到可被其他威胁建模工具和 GRC 平台使用的通用格式,避免供应商锁定。