ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

MISP 威胁情报标准与框架全景指南:从 MISP 核心格式、STIX 2.1/TAXII 2.1 到 TLP/PAP 协议的实战应用(Anthropic-Cybersecurity-Skills)

MISP 威胁情报标准与框架全景指南:从 MISP 核心格式、STIX 2.1/TAXII 2.1 到 TLP/PAP 协议的实战应用(Anthropic-Cybersecurity-Skills) MISP 威胁情报标准与框架全景指南从 MISP 核心格式、STIX 2.1/TAXII 2.1 到 TLP/PAP 协议的实战应用Anthropic-Cybersecurity-Skills【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI 20 platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-SkillsMISPMalware Information Sharing Platform之所以能成为全球威胁情报共享的事实标准关键在于其背后一整套成熟的数据标准与协作协议原生 MISP 事件格式、STIX 2.1 与 TAXII 2.1 开放标准、MITRE ATTCK 战术与技术映射以及 TLP/PAP 分级协议。本文以 Anthropic-Cybersecurity-Skills 仓库中 collecting-threat-intelligence-with-misp 技能的 standards 参考文档 为骨架结合该技能下的 SKILL.md、api-reference.md、workflows.md 及 process.py 等源码系统讲解这些标准与框架的底层原理、字段语义以及它们在真实 IOC 采集、去重、导出与实例同步流程中的落地方式。读完本文你将能够读懂 MISP 事件与 feed 的数据结构掌握 STIX/TAXII 互操作要点理解 TLP/PAP 分级的合规含义并能把它们正确应用到基于 PyMISP 的自动化采集管道中。MISP 标准体系事件、Galaxy、Taxonomies 与 WarninglistsMISP 的互操作性建立在一组自有的、机器可读的标准之上。理解这四个构件是使用 MISP 任何 API 与 feed 功能的前提。MISP JSON 格式实例间同步的原生语言MISP JSON Format 是 MISP 的原生事件表示格式用于实例之间的数据同步。一个事件Event是一组有语义归属的属性集合属性Attribute是单一 IOC如 IP、域名、哈希、URL而对象Object则把多个属性按真实世界实体分组如一个 file 对象包含文件名、大小、哈希、MIME 类型等子字段。事件还携带 Galaxy威胁情报集群、Tag标签等元数据。在 SKILL.md 的架构描述中这一事件模型被明确概括为MISP 采用事件驱动模型威胁情报被组织为事件事件中包含属性IOC、对象属性的结构化分组、Galaxy与 MITRE ATTCK 关联的威胁行为体/恶意软件集群以及用于分类的标签。这意味着在使用 PyMISP 编程访问时MISPEvent、MISPAttribute、MISPObject这三个类就对应着 JSON 格式中的三个核心层级。例如 process.py 中collect_events_by_tag方法遍历event.attributes并提取每个属性的type、value、category、to_ids字段正是对该 JSON 层级结构的直接消费。MISP Galaxy集群化知识库MISP Galaxy 是 MISP 的集群式知识库将威胁行为体threat actors、恶意软件家族malware families、工具、攻击技术等组织为可复用的集群clusters并可链接到 MITRE ATTCK 等外部框架。在事件上打 Galaxy 标签等于为事件附加了结构化的威胁情报语义例如 APT28、TrickBot 或某个具体的 ATTCK 技术编号。MISP Taxonomies机器可读标签体系MISP Taxonomies 是机器可读的标签方案覆盖 TLP、PAP、admiralty-scale来源可信度分级、OSINT 等维度。它们以namespace:predicate的标签形式挂在事件或属性上例如tlp:amber、admiralty-scale:source-reliability:a。由于标签是标准化的跨实例同步和跨工具解析才不会出现语义歧义。MISP Warninglists降低误报的已知良性指标清单Warninglists 是已知良性指标列表用于在导入或导出时降低误报典型条目包括 Alexa Top 1M 域名、Office 365 邮件服务器 IP 等。这一机制在 process.py 中有直接的源码体现filter_warninglists方法调用self.misp.values_in_warninglist([ioc[value]])若返回值命中则将该 IOC 剔除并计入warninglist_filtered统计项从而实现采集管道中的自动化误报过滤。这也是为什么在编排自动采集时warninglists 过滤应位于原始数据收集与最终导出之间。STIX 2.1威胁情报的通用表达语言STIXStructured Threat Information Expression2.1 是描述网络威胁情报的标准语言由 OASIS CTI 组织维护。MISP 支持 STIX 2.1 bundle 的导入与导出使其能与 OpenCTI、商用威胁情报平台等生态无缝交换数据。核心对象类型STIX 2.1 使用面向对象模型表达威胁情报常用对象类型包括STIX 对象语义Indicator可被检测的 IOC 模式如[ipv4-addr:value 198.51.100.42]Malware恶意软件家族描述Threat Actor威胁行为体/组织Attack Pattern攻击技术与手法Campaign有明确意图的攻击活动Observed Data观测到的数据样本原始观测记录关系类型STIX 对象之间通过标准化的关系Relationship连接MISP 支持的核心关系包括uses威胁行为体使用某工具/攻击模式targets针对特定资产/部门attributed-to归因到某威胁行为体indicatesIndicator 指示某威胁行为mitigates缓解某攻击模式MISP 中的 STIX 2.1 落地在 SKILL.md 的第 5 步导出 IOC 供下游工具使用中STIX 2.1 导出通过return_formatstix2实现# Export as STIX 2.1 bundle stix_output misp.search( controllerevents, return_formatstix2, tags[tlp:white], publishedTrue )process.py 的export_stix2方法进一步展示了如何按eventid或tags过滤后导出 STIX bundle而 agent.py 中的export_stix2则使用misp.get_stix_event(event_id)将单个事件转为 STIX 数据。这两个脚本从批量搜索导出与单事件导出两个角度印证了 STIX 2.1 互操作在 MISP 中的实现方式。TAXII 2.1威胁情报的传输协议TAXIITrusted Automated Exchange of Intelligence Information2.1 是 STIX 数据通过 HTTPS 传输的协议标准。MISP 既可以作为 TAXII 客户端消费 TAXII feeds也可以自身作为 TAXII 服务器对外提供情报服务。基于 Collection 的模型TAXII 2.1 采用基于集合collection的架构包含四层概念Discovery发现查询 TAXII server 的 discovery 端点获取可用的 API rootsAPI Root服务的顶层命名空间包含多个集合Collections集合可订阅的情报集合携带元数据名称、描述、对象类型Objects对象集合内承载的 STIX 2.1 对象分页与过滤TAXII 2.1 支持分页pagination以及按added_after添加时间、type对象类型、version版本等参数过滤对象。这使下游消费方可以增量拉取新增情报避免重复传输全量数据。在采集工作流中的位置workflows.md 中的Workflow 3: TAXII Feed Integration给出了完整接入链路[TAXII Server] -- [TAXII Client] -- [STIX Parser] -- [MISP Import] -- [Correlation]其步骤为Discovery 发现 API roots → 枚举集合与元数据 → 带分页拉取 STIX 2.1 对象 → 将 STIX Indicator/Malware/Threat Actor 映射为 MISP 事件与属性 → 导入 MISP → 与既有数据执行关联correlation。同时SKILL.md 将 TAXII 列为四种 feed 类型之一STIX/TAXII 2.1 兼容的商用与政府来源 feeds。MITRE ATTCK 集成让事件具备战术语义MISP 与 MITRE ATTCK 的集成是标准映射中最实用的一环也是本仓库 ATTACK_COVERAGE.md 全局覆盖分析的基础能力之一。Galaxy 集群与 T-code 的直接映射MISP Galaxy 集群可以直接映射到 ATTCK 技术T 编码。例如为事件打上mitre-attack-pattern:T1566标签即声明该事件涉及钓鱼技术。战术标签事件可通过标签关联 ATTCK 战术tacticsInitial Access初始访问、Execution执行、Persistence持久化、Privilege Escalation权限提升、Defense Evasion防御规避、Credential Access凭据访问、Discovery发现、Lateral Movement横向移动、Collection收集、Command and Control命令与控制、Exfiltration数据渗出、Impact影响等。子技术支持ATTCK 的子技术sub-technique同样受支持典型如T1566.001 - Spearphishing Attachment带附件的鱼叉式钓鱼。在 SKILL.md 的 frontmatter 中可以看到该技能自身就映射了T1071.001、T1588.001、T1583.001、T1566.001、T1587.001等含子技术的编码与本仓库其他技能的映射规范一致。ATTCK Navigator 可视化MISP 与 ATTCK Navigator 集成用于可视化技术覆盖情况technique coverage。仓库根目录的 mappings/attack-navigator-layer.json 即为可导入 Navigator 的覆盖图层文件展示了仓库所有技能在 ATTCK 矩阵上的聚合覆盖。TLP流量灯协议的分级披露规则TLPTraffic Light Protocol流量灯协议由 FIRST 维护用于规范敏感信息的共享范围。TLP 标签必须被原样传递、不得私自升级或降级。最新标准已用新命名取代旧名称TLP 级别说明TLP:CLEAR无限制披露原 TLP:WHITE可与任何人共享TLP:GREEN仅限社区内有限披露不得发布到互联网TLP:AMBER仅限组织内部及其客户共享TLP:AMBERSTRICT仅限同一组织内部分享不得跨组织传递TLP:RED仅限特定接收者通常仅限会议/桌面上的人员在 assets/template.md 的情报采集报告模板中报告元数据字段Classification的默认值即TLP:AMBER并在 Notable Campaigns 小节为每个攻击活动单独标注 TLP 级别这体现了 TLP 在情报产品全生命周期采集、分析、报告、共享中的贯穿使用。在 PyMISP 搜索场景中TLP 标签也常作为过滤条件例如 SKILL.md 中tags[tlp:white]的 STIX 导出示例。PAP可允许行为协议PAPPermissible Actions Protocol可允许行为协议与 TLP 互补TLP 规定谁能看PAP 规定拿到情报后能做什么。PAP 级别允许的行为PAP:RED仅允许被动行为不得进行外部查询如不查 DNS、不访问恶意 URLPAP:AMBER允许主动行为但不得针对被分析的基础设施如不触碰恶意主机PAP:GREEN允许主动行为可进行外部主动探测PAP:CLEAR无限制使用在自动采集管道中PAP 通常与 TLP 一起作为 MISP Taxonomies 标签落到事件上。workflows.md 的 Workflow 1 明确将自动为事件打 TLP/PAP 标签作为 feed 拉取后的关键步骤之一确保即使自动化导入的情报也具备清晰的使用边界避免下游工具对 PAP:RED 情报执行主动外联查询而暴露分析环境。标准在采集管道中的串联一个完整落地方案将上述标准放入 SKILL.md 的采集流程中可以看到它们如何环环相扣Deploy MISP with Docker按 SKILL.md 部署 MISP 实例misp-docker、docker compose up -d这是承载所有标准的基础设施。Configure Default Feeds通过misp.feeds()、misp.enable_feed(feed_id1)、misp.cache_feed(feed_id1)、misp.fetch_feed(feed_id1)启用 CIRCL OSINT、Botvrij.eu 等社区 feed。这些 feed 分别以 MISP JSON、CSV、freetext 等格式提供正是 MISP 核心格式与外部标准的交汇点。Add Custom Threat Feeds以add_feed添加 abuse.ch URLhaus 等自定义 feed配置source_formatcsv/misp/freetext/taxii字段决定解析器采用哪套标准。可参考 api-reference.md 的 Feed Management 部分。Search and Retrieve通过 api-reference.md 展示的misp.search按标签、日期、类型、事件 ID 检索事件与属性常用属性类型包括ip-dst、domain、url、sha256、md5、email-src、filename等。Export按 workflows.md 的 Workflow 5将事件导出为 Suricata/Zeek 规则、SIEM 的 CSV/JSON、STIX bundle 等下游格式供 IDS/IPS 与 SIEMSplunk、Elastic、QRadar消费。Report最后按 assets/template.md 生成带 TLP 分级、feed 状态、IOC 分类统计与导出清单的情报采集报告形成从标准到产品的闭环。总结MISP 的价值不仅在于它本身是一个平台更在于它建立了一套可组合的标准栈用 MISP JSON 格式保证实例间原生同步用 STIX 2.1 保证跨生态的语义互通用 TAXII 2.1 保证标准化的传输机制用 MITRE ATTCK 映射赋予事件战术上下文再用 TLP 与 PAP 双重协议约束情报的披露范围与使用边界。在 Anthropic-Cybersecurity-Skills 仓库的该技能中这套标准栈已被完整封装进 SKILL.md、api-reference.md、workflows.md 以及 agent.py、process.py 两个可执行脚本中。读者可将 process.py 的enable_default_feeds、collect_recent_iocs、filter_warninglists、export_stix2、export_suricata、get_correlation_summary等方法作为模板快速搭建一套从多源 feed 汇聚、warninglist 去噪、ATTCK 标注到多格式导出的完整自动威胁情报采集管道。【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI 20 platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-Skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进