2. 威胁情报基础与数据源接入
威胁情报不是“把网上的安全新闻复制到本地”,而是围绕可判定的对手、基础设施、恶意样本与攻击行为,形成可被机器消费、可被检索、可被关联的数据资产。要让流量侧设备真正用上情报,第一步不是写匹配规则,而是把来源各异、格式各异、可信度各异的情报接入到统一的数据模型中。本节围绕“情报长什么样、从哪里来、怎么接、接完怎么规范化”展开,重点落在可落地的采集与规范化流程上。
一、结构化与非结构化情报:先分清可机读与需抽取
结构化情报指字段、类型、取值范围相对固定的数据,典型如 IP、域名、URL、文件哈希、邮件地址、JA3 指纹、注册表键等,它们可以直接进入匹配引擎或数据库索引。非结构化情报则包括安全厂商报告、APT 分析文章、漏洞通告、论坛帖子、暗网截图、PDF 与邮件正文,其中大量关键指标以自然语言、表格或图片形式存在,必须经过抽取、归一化与人工复核才能变成可消费的 IOC。
两者在工程上的处理路径不同:结构化情报可直接做字段映射与去重;非结构化情报需要先做文本抽取,再识别实体,最后转成 STIX 对象。一个常见的误区是把非结构化报告里的所有 IP 都当作恶意 IOC 入库,结果把 CDN、公共 DNS、扫描器地址误封。因此,规范化阶段必须保留“置信度、来源、首次/末次出现时间、上下文标签”等元数据,供后续关联与降噪使用。
二、开源与商业源:来源分层与接入策略
开源源包括公开的威胁情报平台、社区共享、政府公告、开源项目(如 abuse.ch、AlienVault OTX、MISP 社区、CIRCL、PhishTank 等),优点是获取成本低、覆盖面广,缺点是质量参差、重复率高、时效不稳定。商业源通常提供更完整的上下文、更高的更新频率与 SLA,例如厂商的 APT 报告、恶意样本家族情报、失陷指标订阅,但需要授权、配额与合规约束。
实际接入时建议按“来源分层”管理:高可信商业源用于高优先级告警与阻断;开源源用于补充狩猎线索与历史回溯;社区源用于快速发现新出现的钓鱼域名或 C2。每类来源都应记录采集频率、字段映射、可信度权重与过期策略。例如,IP 类 IOC 的有效期通常较短,域名类可稍长,文件哈希则相对稳定,但也要结合家族与活动周期判断。
三、STIX/TAXII:情报表达与传输的标准组合
STIX(Structured Threat Information Expression)解决“情报怎么表达”,TAXII(Trusted Automated Exchange of Intelligence Information)解决“情报怎么传”。STIX 2.x 以对象图的方式描述威胁情报,核心对象包括 Indicator(指标)、Malware(恶意软件)、Attack Pattern(攻击模式)、Threat Actor(威胁行为体)、Infrastructure(基础设施)、Relationship(关系)等。一个 Indicator 通常包含 pattern(如 [ipv4-addr:value = '203.0.113.45'])、valid_from、valid_until、confidence、labels 等字段。
TAXII 2.1 提供 Collections、Channels、API Roots 等概念,支持 HTTPS 拉取与推送。接入时通常先发现 API Root,再枚举 Collection,最后按时间窗口增量拉取 STIX Bundle。下面是一个典型的 TAXII 采集配置示例(参数为教学示例,非真实环境):
{
"api_root": "https://taxii.example.com/taxii2/",
"collection_id": "107a9c1e-2f3b-4d5a-9c6e-8b7d0f1a2c34",
"auth": {"type": "basic", "user": "ti_reader", "password": "******"},
"poll_interval_seconds": 300,
"added_after": "2025-01-01T00:00:00Z",
"accept": "application/taxii+json;version=2.1"
}
拉取到的 STIX Bundle 需要做三件事:解析对象、校验必填字段、按对象类型写入不同存储。Indicator 进入匹配库,Malware 与 Threat Actor 进入知识库,Relationship 进入图数据库或关系表,用于后续“IP—域名—样本—家族—攻击活动”的关联分析。
四、MISP:社区共享与本地事件管理
MISP(Malware Information Sharing Platform)既是情报共享平台,也是本地事件管理系统。它支持 Event、Attribute、Object、Galaxy、Tag、Sharing Group 等模型,能够把一次攻击活动组织成一个事件,事件下挂载 IP、域名、哈希、文件名、邮箱等属性,并通过 Tag 标注 TLP、置信度、来源与家族。MISP 还支持与 STIX 互转,可作为 TAXII 之外的另一种接入方式。
接入 MISP 时,通常使用 REST API 按事件或属性拉取。关键参数包括 last(时间窗口)、type(属性类型)、to_ids(是否用于检测)、tags(过滤标签)。例如只拉取最近 7 天、标记为 tlp:amber 且 to_ids=true 的属性,可以显著降低噪声。拉取后同样要进入规范化管道,统一字段名、时间格式与置信度表达。
五、情报采集与规范化:从原始数据到可匹配资产
采集与规范化是本节最核心的工程环节。一个可运行的管道通常包含:采集调度、原始存储、解析抽取、字段映射、去重合并、质量校验、入库与分发。下面用一张图展示从多源接入到统一情报库的关键路径与对象变化。
规范化中最容易出问题的是“同一对象多种写法”。例如域名大小写、末尾点、URL 是否带路径、IP 是否带端口、哈希是否带前缀,都会导致重复入库或匹配失败。建议在入库前统一执行:域名转小写并去除末尾点;URL 保留 scheme、host、path,去除 fragment;IP 去除端口并校验 IPv4/IPv6 格式;文件哈希统一小写并校验 MD5/SHA1/SHA256 长度。对于非结构化报告抽取出的实体,还要经过人工或规则复核,避免把“攻击者使用的公共云 IP”直接当成恶意 IOC。
完成采集与规范化后,情报才真正具备“可匹配、可关联、可追溯”的能力。下一步才是把 IOC 与流量日志、DNS 日志、代理日志做关联匹配,并基于时间窗口与行为序列判断是否形成真实攻击链。本节的重点是先把数据源接稳、把格式统一、把元数据保留完整,后续的流量关联才有可靠基础。