尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

attack-scripts实战攻击面可视化:从STIX到Bear系APT图层的一次完整旅程

attack-scripts实战攻击面可视化:从STIX到Bear系APT图层的一次完整旅程 attack-scripts实战攻击面可视化从STIX到Bear系APT图层的一次完整旅程【免费下载链接】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威胁内容打交道时的各种需求。它的核心能力是解析 STIX 2.0 威胁情报数据一键生成 ATTCK Navigator 可视化图层Layer帮助新手安全分析人员把枯燥的威胁数据变成直观的攻击面地图。本文将带你完成一次完整旅程从环境安装、STIX 数据解析到生成Bear 系 APT 组织攻击图层并横向盘点仓库中的全部可视化脚本。 一、attack-scripts 项目速览里面都有什么这是一个即取即用的脚本仓库目录结构非常清晰目录 / 文件作用scripts/layers/samples/⭐ 核心目录4 个图层生成示例脚本本文主角scripts/数据源查询、CSV 导出、STIX 版本差异对比等实用脚本layers/旧版图层工具已迁移至 mitreattack-python 库仅保留说明requirements.txt依赖清单Python 3 虚拟环境一键安装在scripts/README.md中官方给出了每个脚本的用途说明配合layers/samples/README.md即可掌握全部能力。⚙️ 二、环境准备三步完成 attack-scripts 安装整个过程只需 Python 3无需编译任何依赖克隆仓库git clone https://gitcode.com/gh_mirrors/at/attack-scripts创建并激活虚拟环境python3 -m venv env source env/bin/activate # Windows 请用 env\Scripts\activate.bat安装依赖stix2、taxii2-client等均已锁定版本pip3 install -r requirements.txt 小提示如果安装的taxii2client版本低于 2.0.0TAXII 请求 API 可能不兼容建议保持requirements.txt中的 2.3.0 版本。 三、核心概念STIX 数据如何变成可视化图层理解两个概念后面所有脚本就都通了STIX 2.0网络威胁情报的标准语言。ATTCK 全部内容技术、APT 组织、恶意软件都以 STIX JSON 形式发布脚本通过stix2.MemoryStore加载后即可像查数据库一样查询和遍历关系。Navigator Layer图层ATTCK Navigator 使用的 JSON 格式每个图层包含techniques列表每一项可以是techniqueID color染色或techniqueID score评分导入后就能在矩阵图上直观呈现。整个旅程的本质就是一条流水线拉取 STIX 数据 → 按条件筛选对象 → 沿关系链收集技术 → 输出图层 JSON → 导入 Navigator 查看 四、实战主角生成 Bear 系 APT 攻击图层bear_APT.py是仓库中最经典的示例目标一句话找出所有别名中带 bear 的 APT 组织如 APT29 The Dukes 等俄系熊家族把它们使用过的所有技术染成红色生成一张 Bear 系 APT 攻击面图层。脚本scripts/layers/samples/bear_APT.py的工作逻辑分为四步加载数据拉取企业版 ATTCK 的 STIX 内容并载入MemoryStore筛选 APT 组织查询所有intrusion-set对象过滤掉已废弃deprecated和已撤销revoked的组织再用正则匹配别名中的 bear沿关系链收集技术对每个 Bear 组织遍历其relationships只保留指向attack-pattern技术的关系并按技术 → 使用者建立映射同一技术被多个 Bear 组织使用时会合并记录输出图层每个技术生成{techniqueID, comment, color}注释中写明used by xxx最终写出Bear_APT.json。运行方式简单到一行python3 scripts/layers/samples/bear_APT.py --output Bear_APT.json生成的图层结构长这样节选{ name: *Bear APTs, domain: enterprise-attack, techniques: [ { techniqueID: T1566, comment: used by APT29, color: #ff6666 } ], legendItems: [{ label: Used by a group the phrase bear in the group aliases, color: #ff6666 }] }把Bear_APT.json导入 ATTCK Navigator矩阵图上所有红色格子就是 Bear 系 APT 组织已知的攻击面——哪些格子越密集说明这个方向对手玩得越熟防御资源就该向那里倾斜。 五、进阶玩法另外 3 个可视化脚本一次看懂scripts/layers/samples/目录下还有 3 个同样开箱即用的脚本覆盖了图层制作的三大常见场景1. 评分热图heatmap.py给每个技术打一个 1-100 的随机分数并按分数降序生成热图图层heatmap_layer.json。它是理解score 型图层的最佳入门样本——把其中的随机数换成你自己评估的风险分就是一个可用的企业风险热图。2. 双组织 软件 可检测性apt3_apt29_software.py功能最丰富的一枚多面手按固定 ID 取出APT3和APT29两个组织不仅收集它们直接使用的技术还二次遍历其使用的恶意软件/工具把软件能执行的技术也一并计入按APT3 独有 / APT29 独有 / 两者共用三种颜色区分#6baed6、#fce93b、#74c476附加模式--notional-no-detection把**没有关联数据源即理论上无法被检测**的技术额外标红为#fc3b3b帮你一眼找出防御盲区。这是做攻击者画像 检测缺口分析的绝佳模板。3. 软件执行视角software_execution.py反其道而行之不按组织查而按软件查。支持三种模式参数输出图层含义--softwaretype softwaresoftware_execution.json所有恶意软件 工具能执行的技术--softwaretype malwaresoftware_malware_execution.json仅恶意软件--softwaretype toolsoftware_tool_execution.json仅工具每个技术附带score使用它的软件数量软件越多说明该技术是通用手法越值得优先设防。 六、配套工具箱scripts 目录下的数据处理脚本图层生成之外scripts/目录还有一组数据加工脚本与可视化形成互补脚本用途techniques_from_data_source.py从 TAXII 服务器拉取 STIX 对象列出使用指定数据源的所有企业版技术如哪些技术能通过进程创建事件被检测到technique_mappings_to_csv.py将技术与缓解措施 / 组织 / 软件的映射关系导出为CSV 表格方便做报表techniques_data_sources_vis.py生成 ATTCK 路线图技术与数据源映射可视化所需的 CSV 数据diff_stix.py对比两个版本的 STIX bundle输出Markdown 变更报告或 Navigator 图层追踪 ATTCK 版本迭代 项目说明文档见scripts/README.md更新历史见CHANGELOG.md当前版本 v1.9.2。 七、下一步从脚本走向 mitreattack-python 库值得注意的是layers/目录中的图层处理工具图层合并、导出 SVG/Excel 等已在 v1.9.1 起迁移到官方的mitreattack-pythonpip 模块中见layers/README.md与CHANGELOG.md。建议的成长路线是先用本仓库的示例脚本理解 STIX 查询与图层生成原理再用 mitreattack-python 库在自己的项目中做图层增删、合并与导出结合 ATTCK Navigator 完成从数据到决策的闭环。✅ 总结一条完整旅程的回顾步骤关键文件收获安装环境requirements.txtPython 虚拟环境 stix2 依赖理解原理scripts/README.mdSTIX 查询 → 图层 JSON 的数据流生成 APT 图层scripts/layers/samples/bear_APT.py按组织别名筛选并染色技术热图 / 画像 / 盲区heatmap.py、apt3_apt29_software.py、software_execution.py三种高频图层场景全覆盖数据加工scripts/technique_mappings_to_csv.py等CSV 导出与版本差异对比attack-scripts 用最简洁的示例脚本把威胁情报 → 攻击面可视化这条链路完整走了一遍。只要跑通bear_APT.py你就已经掌握了 ATTCK 数据分析的核心套路——剩下的只是把筛选条件换成你自己关心的 APT 组织、恶意软件或数据源。【免费下载链接】attack-scriptsScripts and a (future) library to improve users interactions with the ATTCK content项目地址: https://gitcode.com/gh_mirrors/at/attack-scripts创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表