
attack-scripts预备知识ATTCK、STIX 2.0与TAXII 2.0三大基石通俗指南【免费下载链接】attack-scriptsScripts and a (future) library to improve users interactions with the ATTCK content项目地址: https://gitcode.com/gh_mirrors/at/attack-scriptsattack-scripts 是一个用于处理 ATTCK 威胁情报内容的开源脚本合集。要用好它绕不开三大基石ATTCK、STIX 2.0和TAXII 2.0。这篇通俗指南会用图书馆 快递的类比帮你快速建立整体认知并附上动手上手的步骤。 先看懂全景三大基石各管一件事如果把威胁情报体系比作一家图书馆基石一句话定位类比解决的问题ATTCK对抗者行为的知识库图书馆里的书攻击者都会干什么STIX 2.0威胁情报的标准化语言统一的书籍装帧格式数据怎么统一表达TAXII 2.0威胁情报的传输协议快递配送服务数据怎么及时拿到attack-scripts 里的每个脚本本质上都是在从快递站取书TAXII→ 按标准格式拆包STIX→ 整理书中的攻击技法目录ATTCK。 ATTCK攻击者的行为百科全书ATTCK 是一个精心整理curated的网络对抗者行为知识库和模型它记录了攻击者生命周期的各个阶段以及他们已知针对的各类平台如 Enterprise、Mobile 等。它的核心价值有三个用途理解风险对照已知攻击者行为评估自身安全暴露面规划改进找出防御短板制定安全改进计划✅验证防御确认现有检测手段是否真的有效理解 ATTCK 时记住这套层级结构即可Tactic战术攻击的大阶段如初始访问持久化Technique技术具体手法如钓鱼脚本执行Group / Software / Mitigation攻击组织、攻击工具软件、对应的缓解措施 STIX 2.0让机器也能读懂的统一格式STIXStructured Threat Information Expression结构化威胁情报表达式是一种用于交换网络威胁情报CTI的语言和序列化格式。它要解决的问题很现实各家安全厂商的数据格式五花八门机器无法直接互通。STIX 2.0 让各组织用一致、机器可读的方式共享情报从而支持协作分析、自动化威胁交换、自动化检测响应等能力。在 attack-scripts 的世界观里整个 ATTCK 目录就是用 STIX 2.0 JSON 表达的每一条技术、每一款恶意软件、每个 APT 组织、每项缓解措施都是 JSON 数据包bundle里的一个对象通过type字段区分身份ATTCK 概念STIX 2.0 对象类型Technique 技术attack-patternMalware 恶意软件malwareTool 攻击工具toolGroup 攻击组织intrusion-setMitigation 缓解措施course-of-action TAXII 2.0一键取走最新数据的快递通道TAXII 2.0Threat Attribute Exchange 的演进版本是威胁情报的传输协议。有了它你不用手动到处找文件直接向服务器下单就能取回最新的 STIX 数据。attack-scripts 的多个脚本正是这么干的通过taxii2-client连接 MITRE 官方的 TAXII 服务器锁定 Enterprise 或 Mobile 对应的集合Collection再用过滤器精准查询。例如在 scripts/techniques_from_data_source.py 中核心套路就是三步建立 TAXII 2.0 Collection 实例指向 Enterprise 集合交给TAXIICollectionSource作为数据源用Filter(type, , attack-pattern)这样的条件过滤出所有技术 三大基石如何联动一条完整的数据流ATTCK 知识库内容 │ 序列化 ▼ STIX 2.0 JSON bundle统一格式 │ 发布 ▼ TAXII 2.0 服务器在线传输 │ 脚本拉取 stix2 解析 ▼ attack-scripts 处理输出CSV 报表 / 差异报告 / Navigator 图层看懂这条链路你就理解了为什么项目依赖清单 requirements.txt 里同时出现了stix2和taxii2-client两个核心库。 快速上手三步跑起 attack-scripts环境要求Python 3其余依赖由requirements.txt统一管理核心是stix22.1.0与taxii2-client2.3.0。第 1 步获取项目git clone https://gitcode.com/gh_mirrors/at/attack-scripts第 2 步创建并激活虚拟环境macOS / Linuxpython3 -m venv env然后source env/bin/activateWindowspy -m venv env然后env\Scripts\activate.bat第 3 步安装依赖pip3 install -r requirements.txt️ 四大核心脚本一览学完基石立刻能用脚本说明详见 scripts/README.md脚本作用scripts/techniques_from_data_source.py从 TAXII 服务器拉取 ATTCK 的 STIX 2.0 对象列出所有数据源并查指定数据源被哪些技术使用scripts/techniques_data_sources_vis.py生成技术映射到数据源可视化所需的 CSV 数据scripts/diff_stix.py对比两个版本的 STIX2 bundle输出 Markdown 或 Navigator 图层的新增/变更/弃用/移除差异报告scripts/technique_mappings_to_csv.py导出技术 ↔ 缓解措施 / 攻击组织 / 软件 的映射电子表格另外scripts/layers/samples/下还有四个示例图层生成脚本是理解STIX 数据 → 可视化图层的绝佳教材说明见 scripts/layers/samples/README.mdheatmap.py给所有技术打随机分数生成热图图层bear_APT.py解析 STIX 数据展示别名含 bear 的 APT 组织所用技术apt3_apt29_software.py展示 APT3 与 APT29 使用的技术及软件software_execution.py展示各类软件可执行的技术 小技巧任何脚本都支持python3 脚本名 -h查看完整用法。⚠️ 新手避坑taxii2client 版本兼容性taxii2client库的一次 API 更新改变了 TAXII 2.0 请求的接口。attack-scripts 已适配最新版本如果你本地安装的taxii2client低于 2.0.0脚本可能无法正常运行建议统一升级到 2.x 版本依赖清单锁定的就是taxii2-client2.3.0。 总结三句话记住三大基石ATTCK回答攻击者都干了什么——内容是知识库STIX 2.0回答情报如何统一表达——格式是 JSONTAXII 2.0回答如何随时取到最新数据——传输是协议把这三块拼图放进脑子里再回头看 attack-scripts 的每一个脚本你会发现它们不过是这条数据链上一个个顺理成章的处理站。【免费下载链接】attack-scriptsScripts and a (future) library to improve users interactions with the ATTCK content项目地址: https://gitcode.com/gh_mirrors/at/attack-scripts创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考