本文目录导读:

- 核心协议:TAXII 2.x(推荐)
- 手动或半自动化:STIX Bundle 文件交换
- 实时或流式:消息队列与流处理
- 通过威胁情报平台(TIP)共享
- 联邦与社区:信息共享与分析中心(ISAC)
- 技术实践关键点
- 总结线路图
威胁情报的STIX格式(结构化威胁信息表达式)共享主要通过 TAXII(可信自动化情报信息交换)协议实现,STIX定义了情报的“内容”与“结构”,而TAXII则定义了情报的“传输”与“交换”机制。
以下是STIX格式情报共享的几种主要方式和具体实现路径:
核心协议:TAXII 2.x(推荐)
这是当前最主流、标准化的共享方式,TAXII 2.x基于HTTPS和RESTful API,易于集成。
- 工作模式:
- 拉取:消费方(如SIEM/SOAR系统)定期向TAXII服务器请求新的STIX对象。
- 推送:生产方(如威胁情报平台)主动将STIX对象发送给订阅的消费者。
- 核心对象:
- Collection:情报集合,类似于数据库中的“表”或消息队列中的“主题”。
- API Root:端点URL。
- 共享步骤:
- 情报生产者将STIX格式的威胁指标(如IP、域名、Hash)或攻击模式(如ATT&CK)打包成STIX Bundle(JSON格式的包)。
- 通过HTTPS
POST请求上传到TAXII服务器的指定Collection。 - 消费者通过
GET请求(携带时间戳或游标参数)从该Collection中拉取增量更新的STIX Bundle。
- 优势:标准化程度高,支持双向通信,易于与现有安全工具(如MISP、OpenCTI、Splunk等)集成。
手动或半自动化:STIX Bundle 文件交换
如果组织之间没有建立直接的API通道,可以通过文件直接交换。
- 格式:
stix2.json或压缩包(stix2.zip),文件内容是一个JSON对象,其type字段为"bundle",objects数组包含若干STIX域对象(如Indicator、Report、Malware等)。 - 共享方式:
- 邮件:加密发送STIX Bundle文件。
- 安全FTP/SFTP:上传到指定目录。
- 威胁情报共享平台:如MISP(Malware Information Sharing Platform),它支持内部使用MISP格式,但也原生支持导入/导出为标准STIX 2.x JSON。
- 优势:无需复杂基础设施,适合低频率、高价值的战略情报交换。
- 劣势:时效性差,无法自动集成。
实时或流式:消息队列与流处理
对于需要毫秒级响应的高频威胁情报(如正在攻击的恶意IP),可以采用异步消息队列。
- 技术栈:Kafka、RabbitMQ、Amazon SQS、Azure Event Hubs。
- 实现:
- 生产者将STIX Bundle作为消息Value序列化(通常为JSON或CBOR)。
- 发布到特定Topic或Queue。
- 消费者订阅该Topic,反序列化并处理。
- 场景:大型ISP、CDN或安全SaaS厂商之间的情报实时同步。
通过威胁情报平台(TIP)共享
使用开源或商业情报平台作为中间层,降低操作复杂性。
- MISP(开源):
- MISP内部用自有事件格式存储数据。
- 共享时,通过其 REST API 导出为STIX 2.x格式。
- MISP可以作为TAXII服务器(安装相应模块),提供标准TAXII接口。
- OpenCTI(开源):
- 原生支持STIX 2.x作为其核心数据模型。
- 支持通过GraphQL API或内置的TAXII 2.x服务进行共享。
- 商业平台(如Anomali、ThreatConnect):
通常内置TAXII Server/Client功能,支持自动推送到客户的SIEM/Firewall。
联邦与社区:信息共享与分析中心(ISAC)
行业特定的ISAC(如金融、医疗、能源)通常建立共享网络。
- 模式:成员机构通过TAXII连接到ISAC的中央Hub。
- 规则:成员上传匿名的STIX对象(对IP做部分模糊处理),ISAC进行聚合、去重、验证后,再将高质量的STIX对象分发给所有成员。
技术实践关键点
无论采用哪种方式,共享STIX格式情报时需注意以下方面:
- 序列化:确保使用JSON序列化(STIX 2.x默认),避免使用XML(STIX 1.x已弃用),数据对象必须符合 STIX 2.1 规范。
- 认证与授权:
- TAXII 2.x支持HTTP Basic Auth、API Key、OAuth 2.0。
- 文件交换时使用PGP加密文件或使用HTTPS传输。
- 隐私与去标识化:在共享可能涉及个人身份信息(PII)或商业机密的STIX对象(如
Identity、Domain Name)时,需进行哈希或截断处理。 - 版本兼容性:
- STIX 2.0与2.1略有差异(例如
pattern字段语法从[network-traffic:src_port = 80]变为更严格的STIX Patterning Language)。 - TAXII 1.x(XML/HTTPS)已基本淘汰,仅用于遗留系统。
- STIX 2.0与2.1略有差异(例如
总结线路图
| 需求场景 | 推荐方案 | 传输协议 | 自动程度 |
|---|---|---|---|
| 长期、大批量标准化共享 | TAXII 2.x Server/Client | HTTPS/REST | 全自动 |
| 临时、少量手工共享 | STIX Bundle 文件 | 邮件/SFTP | 半自动 |
| 实时低延迟共享 | Kafka/消息队列 | 二进制/JSON流 | 全自动/流式 |
| 社区协作共享 | MISP + TAXII | HTTPS (API) | 全自动 |
实践建议:如果你的组织刚开始建设威胁情报共享能力,最务实的路径是:部署一个MISP或OpenCTI平台,让内部团队通过Web界面管理情报,然后通过平台内置的TAXII 2.x服务器对外提供标准接口,这样既降低了手工编写STIX JSON的难度,又确保了输出格式的标准化。