初探ATTCK Navigator图层:用attack-scripts的heatmap.py打造你的第一张热力图

📅 2026/8/22 14:07:03
初探ATTCK Navigator图层:用attack-scripts的heatmap.py打造你的第一张热力图
初探ATTCK Navigator图层用attack-scripts的heatmap.py打造你的第一张热力图【免费下载链接】attack-scriptsScripts and a (future) library to improve users interactions with the ATTCK content项目地址: https://gitcode.com/gh_mirrors/at/attack-scriptsattack-scripts 是 MITRE 社区推出的开源脚本工具集专门用于处理和可视化 ATTCK 威胁内容。本文将用它内置的示例脚本heatmap.py带你入门只需一条命令就能生成包含全部攻击技术、带有随机评分的 ATTCK Navigator 图层layer并在 Navigator 中查看第一张热力图效果快速理解图层这一核心概念。什么是ATTCK Navigator图层1分钟理解核心概念ATTCK一个系统化的网络 adversary 行为知识库记录了攻击者在不同平台上的战术Tactics与技术Techniques例如凭据转储权限提升等。图层LayerATTCK Navigator 可视化平台的着色方案本质是一个 JSON 文件可以为每个技术打上颜色或分数。热力图Heatmap图层的一种常见呈现方式——给技术赋 1–100 的分数分数越高颜色越热一眼看出哪些攻击技术最受关注或风险最高。heatmap.py做的事情很简单拉取官方 STIX 2.0 数据提取所有未废弃、未撤销的技术逐一赋予 1–100 的随机分数再打包成标准图层文件供 Navigator 渲染成热力图。项目结构速览找到关键脚本仓库结构非常清晰建议先花 10 秒了解主要文件文件路径作用scripts/layers/samples/heatmap.py⭐ 本文主角生成全技术随机评分热力图图层scripts/layers/samples/bear_APT.py解析 STIX 数据生成含bear别名 APT 组织所用技术图层scripts/layers/samples/apt3_apt29_software.py生成 APT3 APT29 技术及其使用软件图层scripts/layers/samples/software_execution.py生成可被软件执行的技术图层requirements.txt全部 Python 依赖清单README.md项目说明与安装指引环境准备三步一键安装依赖脚本运行依赖 Python 3安装步骤如下# 1. 克隆仓库 git clone https://gitcode.com/gh_mirrors/at/attack-scripts cd attack-scripts # 2. 创建并激活虚拟环境 python3 -m venv env source env/bin/activate # Windows 使用 env\Scripts\activate.bat # 3. 安装依赖 pip3 install -r requirements.txt核心依赖是stix2解析 STIX 数据和requests下载 ATTCK 数据集requirements.txt已固定版本直接安装即可。最快方法生成图层热力图一条命令运行heatmap.py依赖装好后一条命令即可运行python3 scripts/layers/samples/heatmap.py --output heatmap_layer.json看到writing heatmap_layer.json的提示就成功了。如果想换输出位置只需修改--output参数。脚本内部流程大致是从 MITRE/CTI 下载 enterprise-attack 的 STIX 2.0 数据用stix2的MemoryStore查询所有attack-pattern对象跳过已废弃deprecated和已撤销revoked的技术为每个技术写入随机分数输出 Navigator 4.1 格式的图层 JSON。读懂heatmap_layer.json图层文件结构揭秘生成的图层文件结构一目了然{ name: heatmap example, versions: { layer: 4.1, navigator: 4.1 }, sorting: 3, description: An example layer where all techniques have a randomized score, domain: enterprise-attack, techniques: [ { techniqueID: T1059, score: 87 }, { techniqueID: T1543, score: 23 } ] }domain攻击域企业场景为enterprise-attacksorting: 3按分数降序排列高分技术排在前面techniques每项包含技术 ID如 T1059与 1–100 的随机score热力图颜色就由此决定。在Navigator中查看热力图效果打开 ATTCK Navigator 网页版点击菜单中的Import Layer导入图层选择刚生成的heatmap_layer.json攻击矩阵立即被渲染成深浅不一的热力图颜色越深代表分数越高。 小技巧切换Sorting查看方式或悬停某个格子即可看到具体技术编号与分数——这就是图层最直观的价值。常见问题排查FAQ运行超时或下载失败脚本需要联网获取 MITRE/CTI 的 STIX 数据请检查网络连通性后重试。ModuleNotFoundError确认已激活虚拟环境并完整执行了pip3 install -r requirements.txt。仓库维护状态提示该项目已不再积极维护后续功能迁移到了官方的 mitreattack-python pip 工具包layers/README.md中有说明进阶使用可关注它。举一反三更多示例图层脚本掌握heatmap.py后scripts/layers/samples/目录下的其他脚本是很好的进阶练习bear_APT.py→ 按组织别名过滤技术生成特定 APT 组的攻击画像图层apt3_apt29_software.py→ 展示技术 软件联合图层还可附加检测可能性概念software_execution.py→ 展示哪些技术能被恶意软件/工具执行。它们的套路与heatmap.py一致拉取 STIX → 过滤对象 → 组装图层 JSON读懂一个其余触类旁通。总结收获点说明理解概念ATTCK 图层 技术 分数的可视化 JSON掌握工具一条命令运行scripts/layers/samples/heatmap.py产出成果生成并导入 Navigator 的第一张热力图扩展路径参考同目录其他示例脚本生成自定义威胁画像图层现在就动手试试10 分钟后你就能拥有自己的第一张 ATTCK 热力图【免费下载链接】attack-scriptsScripts and a (future) library to improve users interactions with the ATTCK content项目地址: https://gitcode.com/gh_mirrors/at/attack-scripts创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考