Agent SkillsMHaggis/Security-Detections-MCP › ATT&CK Navigator Layer Generator

ATT&CK Navigator Layer Generator

GitHub

用于生成MITRE ATT&CK Navigator可视化图层,支持检测覆盖热力图、威胁行为体映射及差距分析。提供JSON格式规范、颜色约定及基于MCP工具的实现流程。

.claude/skills/attack-navigator-generator/SKILL.md MHaggis/Security-Detections-MCP

触发场景

需要可视化ATT&CK检测覆盖情况 进行威胁行为体技术映射 执行安全能力差距分析

安装

npx skills add MHaggis/Security-Detections-MCP --skill ATT&CK Navigator Layer Generator -g -y
更多选项

非标准路径

npx skills add https://github.com/MHaggis/Security-Detections-MCP/tree/main/.claude/skills/attack-navigator-generator -g -y

不安装直接使用

npx skills use MHaggis/Security-Detections-MCP@ATT&CK Navigator Layer Generator

指定 Agent (Claude Code)

npx skills add MHaggis/Security-Detections-MCP --skill ATT&CK Navigator Layer Generator -a claude-code -g -y

安装 repo 全部 skill

npx skills add MHaggis/Security-Detections-MCP --all -g -y

预览 repo 内 skill

npx skills add MHaggis/Security-Detections-MCP --list

SKILL.md

Frontmatter
{
    "name": "ATT&CK Navigator Layer Generator",
    "description": "Generate MITRE ATT&CK Navigator layers for coverage visualization, threat actor mapping, and gap analysis. Produces JSON files compatible with the Navigator web app."
}

ATT&CK Navigator Layer Generator Skill

Overview

ATT&CK Navigator layers are JSON files that visualize technique coverage on the MITRE ATT&CK matrix. This skill covers generating layers for three primary use cases:

  1. Coverage heatmaps — Show which techniques have detections (and how many)
  2. Threat actor mapping — Highlight techniques used by a specific group
  3. Gap analysis — Compare your coverage against a threat profile

Navigator Layer JSON Format

Every layer follows this structure:

{
  "name": "Layer Name",
  "versions": {
    "attack": "18.1",
    "navigator": "5.3.1",
    "layer": "4.5"
  },
  "domain": "enterprise-attack",
  "description": "Layer description",
  "techniques": [
    {
      "techniqueID": "T1059.001",
      "tactic": "execution",
      "score": 75,
      "color": "#66b2ff",
      "comment": "3 Sigma rules, 2 Splunk ESCU rules",
      "enabled": true
    }
  ],
  "gradient": {
    "colors": ["#ff6666", "#ffe766", "#8ec843"],
    "minValue": 0,
    "maxValue": 100
  }
}

Key Fields

Field Type Purpose
techniqueID string MITRE technique ID (e.g., T1059.001)
tactic string Tactic shortname (required for sub-techniques that appear in multiple tactics)
score number 0–100, drives gradient coloring
color string Hex color override (takes precedence over score gradient)
comment string Hover text with details
enabled boolean Whether technique is visible

Color Conventions

Color Meaning
#8ec843 (green) Good coverage (score 70–100)
#ffe766 (yellow) Partial coverage (score 30–69)
#ff6666 (red) Weak/no coverage (score 0–29)
#6baed6 (blue) Threat actor uses this technique
#ffffff (white) Not assessed / not applicable

Use Case 1: Coverage Heatmap

Visualize detection coverage across all techniques. Score is based on number and quality of detections.

Using MCP tools:

1. get_technique_ids()                    → Get all covered technique IDs
2. analyze_coverage()                     → Get tactic-level breakdown
3. generate_coverage_layer(covered_ids)   → Generate the layer JSON

Scoring formula (suggested):

  • 1 detection = score 25
  • 2–3 detections = score 50
  • 4–5 detections = score 75
  • 6+ detections = score 100
  • Bonus: +10 for each additional source type (Sigma + Splunk + Elastic)

Use Case 2: Threat Actor Mapping

Highlight all techniques attributed to a specific threat group.

Using MCP tools:

1. search_groups("APT29")                 → Find group ID (G0016)
2. get_group_techniques("G0016")          → Get technique list
3. generate_group_layer("G0016", "APT29") → Generate the layer

Use Case 3: Gap Analysis

Compare your detection coverage against a target set of techniques (e.g., a threat actor's TTPs).

Using MCP tools:

1. get_technique_ids()                                → Your covered IDs
2. get_group_techniques("G0016")                      → Target IDs
3. generate_gap_layer(covered, target, "APT29 Gaps")  → Gap layer

Gap layer color scheme:

  • Green = covered (you have detections AND the threat actor uses it)
  • Red = gap (threat actor uses it but you have NO detection)
  • Gray = not used by this actor

Generating Layers Programmatically

If MCP tools aren't available, build the JSON directly:

import json

def make_layer(name, techniques, description=""):
    return {
        "name": name,
        "versions": {"attack": "18.1", "navigator": "5.3.1", "layer": "4.5"},
        "domain": "enterprise-attack",
        "description": description,
        "techniques": techniques,
        "gradient": {
            "colors": ["#ff6666", "#ffe766", "#8ec843"],
            "minValue": 0,
            "maxValue": 100,
        },
    }

techniques = [
    {"techniqueID": "T1059.001", "score": 80, "comment": "5 detections"},
    {"techniqueID": "T1053.005", "score": 40, "comment": "1 detection"},
]

layer = make_layer("My Coverage", techniques, "Detection coverage as of 2026-02")
with open("coverage_layer.json", "w") as f:
    json.dump(layer, f, indent=2)

Viewing Layers

  1. Open ATT&CK Navigator
  2. Click Open Existing LayerUpload from local
  3. Select the generated JSON file

Or host Navigator locally:

git clone https://github.com/mitre-attack/attack-navigator.git
cd attack-navigator/nav-app
npm install && npm start

Tips

  • Layer per audience: Executives want simple red/green; analysts want score gradients with comments.
  • Version pin: Always set versions.attack to match the ATT&CK version your analysis used.
  • Combine layers: Navigator supports overlaying multiple layers — useful for comparing before/after or two threat actors.
  • Export as SVG: Navigator can export layers as SVG for inclusion in reports.

版本历史

  • 54a588c 当前 2026-07-25 10:27

同 Skill 集合

.claude/skills/analytic-story-builder/SKILL.md
.claude/skills/atomic-red-team-testing/SKILL.md
.claude/skills/attack-range-builder/SKILL.md
.claude/skills/coverage-analysis/SKILL.md
.claude/skills/cti-detection-engineer/SKILL.md
.claude/skills/custom-atomics-deployment/SKILL.md
.claude/skills/data-source-mapper/SKILL.md
.claude/skills/detection-reviewer/SKILL.md
.claude/skills/detection-test-engineer/SKILL.md
.claude/skills/detection-yaml-engineer/SKILL.md
.claude/skills/pr-extension-workflow/SKILL.md
.claude/skills/spl-optimizer/SKILL.md
.claude/skills/supply-chain-analyst/SKILL.md
.claude/skills/threat-report-parser/SKILL.md

元信息

文件数
0
版本
54a588c
Hash
984b95ef
收录时间
2026-07-25 10:27

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-09-09 18:34
浙ICP备14020137号-1 $访客地图$