hnsh3in/threat-intel-digest
GitHub: hnsh3in/threat-intel-digest
一个基于 n8n 与 Claude AI 构建的低成本自托管威胁情报流水线,通过两阶段智能分流过滤信息噪音,仅交付与组织高度相关的安全威胁摘要。
Stars: 1 | Forks: 0
# Threat Intel Digest





一个自托管的威胁情报流水线,每日两次抓取 20 多个安全 RSS feed,通过根据您组织的架构和区域校准的 Claude AI 分流引擎处理每一条目,并仅交付真正相关内容的精简摘要——让您只获取关键的威胁信息,而不是海量原始信息流噪音。
基于 n8n(自托管,Docker)、AWS Lightsail 和 Anthropic Claude API 构建。运行成本低于 $12/月。
## 独特之处
大多数开源威胁情报流水线仅停留在信息收集阶段——将少量 RSS feed 传入摘要提示并推送到频道。而本项目专为日常实际使用而构建:
- **20+ 个 feed** - 覆盖范围包括威胁情报、DFIR、厂商研究、ICS/OT 以及国家级 CERT。The DFIR Report 和 Malware Traffic Analysis 等高信噪比、低吞吐量的信息源与 Bleeping Computer 和 The Hacker News 等高吞吐量的信息源并存。
- **相关性过滤,而非仅仅做摘要** - 在生成摘要之前,每一条目都会根据您的组织、分析师技术栈和受监控区域进行评分。不适用于您的噪音永远不会到达您的收件箱。
- **两阶段设计保持低成本** - 分流阶段仅对标题和摘要进行处理;摘要生成请求仅在条目通过阈值时触发。您可以获得广泛的覆盖,而无需为摘要生成所有内容付费。
- **针对反爬虫 feed 的回退抓取机制** - 拒绝默认爬虫(如 BankInfoSecurity、Fortiguard)的 feed 将使用浏览器的 User-Agent 进行重试,确保它们不会静默丢失。
- **专为校准而设计,而非一劳永逸** - 审计日志记录每一个判定(`PASSED` / `REJECTED` / `UNSCORED`)及其分数和原因。两周后,您可以准确查看阈值在何处过严或过松,并相应地调整提示。
- **这里的一切都基于真实数据** - 评分规则、自动升级规则和阈值均已经过实际流水线运行的调优。示例输出是真实的摘要执行结果,而非模拟数据。
## 功能
- **双阶段 Claude 流水线** - 分流阶段首先对每一条目进行评分(成本高效);摘要生成仅针对通过阈值的条目运行,保持较低的 token 使用量
- **21 个 RSS feed** - 覆盖威胁情报、DFIR、厂商研究、ICS/OT 以及国家级 CERT
- **相关性评分 (0-10)** - 可根据您的技术栈和区域进行配置
- **分流提示中的自动升级和自动降级规则** - 用于捕获边缘情况(CISA KEV 新增、针对 CNI 的国家级攻击活动、Infostealer IOC 投放、PhaaS 基础设施)
- **双层回退抓取** - 先使用 n8n RSS 节点,其次是带有浏览器 `User-Agent` 的 HTTP 回退(处理如 BankInfoSecurity 和 Fortiguard 等反爬虫 feed)
- **通过 n8n SQLite 实现跨执行去重** - 抑制之前运行中已出现的条目
- **每次运行实行 12 小时 pubDate 过滤**,并对无日期条目进行放行,以避免 feed 静默丢失数据
- **审计日志** (Google Sheets) 记录每一条目:`PASSED`、`REJECTED` 或 `UNSCORED` - 用于分流阈值校准
- **错误通知分支** - 失败的 feed 将向 Discord 和 Gmail 发送警报,包含 feed 名称、URL、HTTP 状态码和错误详情
- **Discord 分块** - 输出在条目边界处拆分,每条消息最多 1,950 个字符,webhook 调用之间延迟 2 秒,以防止 429 错误并保持顺序
## 预计运行成本
| 组件 | 成本 |
|---|---|
| Claude API (Haiku) | 每日两次、21 个 feed 运行频率下低于 $5/月 |
| AWS Lightsail | $7/月 (1GB RAM, 2 vCPUs) |
## 示例输出
**邮件摘要**

**审计日志 - Feed 噪音分析**

**审计日志 - 分流数据**

有关包含错误通知的完整输出示例,请参阅 [samples/](./samples/) 文件夹。
## 技术栈
| 组件 | 技术 |
|---|---|
| 编排 | [n8n](https://n8n.io/) (自托管, Docker) |
| 托管 | AWS Lightsail - Ubuntu 24.04 LTS |
| AI / 分流 | Anthropic Claude API (`claude-haiku-4-5-20251001`) |
| 通知 | Discord Webhook, Gmail (OAuth2) |
| 审计日志 | Google Sheets (OAuth2) |
| 语言 | JavaScript (n8n Code 节点) |
| 去重 | n8n SQLite (内置, 跨执行) |
## 前置条件
- AWS Lightsail 实例(或任何 Linux VPS) - 运行于 Ubuntu 24.04 LTS, 1GB RAM
- n8n (自托管) - 运行于 v2.14.2
- Anthropic API 密钥 ([console.anthropic.com](https://console.anthropic.com)) - **在激活前,请务必在 Console > Settings > Limits 中设置月度消费限额**,以在密钥泄露时限制风险敞口
- 带有 webhook URL 的 Discord 服务器
- 在 Google Cloud Console 中配置了 OAuth2 的 Gmail 账户
- Google Sheets(用于审计日志)
有关逐步配置说明,请参阅 [SETUP.md](./SETUP.md)。
## 流水线阶段
### 阶段 1 - 分流
- 输入:仅 `title` + `contentSnippet`(精简,高性价比)
- 模型:`claude-haiku-4-5-20251001`,max_tokens:2000
- 输出:JSON 数组 - `{ id, score, category, reason }`
- 阈值:score >= 4 通过;score < 4 被拒绝
**评分规则 (0-10):**
| 分数 | 标准 |
|---|---|
| 10 | 直接提及您的组织或核心平台。在确切的分析师技术栈中被积极利用的 zero-day。 |
| 8-9 | 针对您目标区域内 CNI 的国家级攻击活动。针对 CNI 的勒索软件。您所在行业的关键系统和运营平台中的漏洞。安全或 IT 工具的供应链攻击。PAM/特权访问妥协。 |
| 6-7 | Windows/AD/Azure 惯用手法 (Kerberoasting, DCSync, ADCS, OAuth abuse, AiTM, BYOVD)。新型勒索软件 TTPs。AI/LLM 攻击 (prompt injection, MCP exploits)。Container/K8s escapes。带有 IOC 的 Infostealer 攻击活动。PhaaS 基础设施。SIEM/XDR 绕过。 |
| 4-5 | DFIR 与检测工程 (Sigma, KQL, YARA, Sysmon, Velociraptor)。MITRE ATT&CK 研究。Linux/macOS 企业级攻击。具有 RCE/SSRF/auth bypass 原语的 CVE,但无确认的利用。 |
| 2-3 | 一般性的漏洞披露。安全行业新闻。边缘研究。 |
| 0-1 | 厂商营销、会议公告、消费者建议、无关内容。 |
### 阶段 2 - 摘要生成
- 输入:仅限通过阈值的条目
- 模型:`claude-haiku-4-5-20251001`,max_tokens:10000
- 每条目输出:标题、来源、发布时间、类别、相关性分数、摘要(2 句话)、建议操作、阅读原文链接
- 按相关性分数降序排列
- 原样使用 `triageScore` - 模型被指示不得对其进行调整
## 工作原理
每次运行进行两次 Claude API 调用 - 首先进行分流,然后仅对通过的内容生成摘要。
```
flowchart TD
A([Schedule Trigger\n00:00 & 12:00 UTC]) --> B[RSS Feed List\n21 feeds]
B --> C[Clear Accumulator]
C --> D[Split Feed Array]
D --> E{Loop Feeds\nbatch size 1}
E --> F[Fetch RSS\nn8n RSS node]
F --> G[Unpack Feed Fallback]
G --> H{Error?}
H -- Yes --> I[HTTP Fallback Fetch\nbrowser User-Agent]
I --> J[Parse RSS XML\nregex, RSS 2.0 + Atom]
J --> K{Still failing?}
K -- Yes --> L[Format Error Notification]
L --> M[Gmail Error Alert]
L --> N[Discord Error Alert]
N --> O[Rate Limit Delay 2s]
K -- No --> O
H -- No --> O
O --> P[Accumulate Items\nworkflow static data]
P --> Q{All feeds done?}
Q -- No --> E
Q -- Yes --> R[Read Accumulated Items]
R --> S[Filter pubDate 12h]
S --> T[Deduplicate by Link\ncross-execution SQLite]
T --> U[Aggregate Items]
U --> V[Build Triage Payload]
V --> W[[Claude Haiku\nStage 1: Triage\nJSON score array]]
W --> X[Decode Claude Response]
X --> Y[Parse + Filter\nthreshold score 4]
Y --> Z[Audit Rows]
Z --> AA[(Google Sheets\nAudit Log)]
Y --> AB[Build Summary Payload]
AB --> AC[[Claude Haiku\nStage 2: Summarise\nsurvivors only]]
AC --> AD[Format Gmail]
AC --> AE[Format Discord]
AD --> AF[Gmail\nHTML digest]
AE --> AG[Split In Batches]
AG --> AH[Discord Webhook]
AH --> AI[Wait 2s]
AI --> AG
```
## RSS Feeds (21)
| 来源 | 类型 |
|---|---|
| The Hacker News | 综合威胁新闻 |
| Bleeping Computer | 漏洞与恶意软件新闻 |
| Krebs on Security | 调查类威胁情报 |
| Dark Reading | 行业安全新闻 |
| BankInfoSecurity | 金融行业 / CNI |
| Cisco Talos | 厂商威胁研究 |
| Palo Alto Unit 42 | 厂商威胁研究 |
| Malwarebytes Blog | 恶意软件分析 |
| Microsoft Security Blog | Microsoft 架构通告 |
| Rapid7 Blog | 漏洞研究 |
| SANS ISC | 每日威胁指标 |
| Fortiguard IR | 厂商 IR 通告 |
| Recorded Future | 威胁情报 |
| Malware Traffic Analysis | PCAP / 流量分析 |
| CISA ICS Advisories | OT/ICS 通告 |
| The DFIR Report | DFIR 案例研究 |
| JPCERT/CC | 国家级 CERT |
| Elastic Security Labs | 检测研究 |
| CrowdStrike Blog | 厂商威胁研究 |
| SentinelOne Labs | 恶意软件与威胁研究 |
| Red Canary | 检测工程 |
## 仓库结构
```
Threat_Intel_Digest/
├── README.md # This file
├── SETUP.md # Deployment and configuration guide
├── FEEDS.md # Feed list with notes
├── samples/ # Sample output screenshots
│ ├── discord_digest.png
│ ├── gsheet_triage_audit.png
│ └── gsheet_feed_noise_analysis_chart.png
└── workflow/
└── Threat_Intel_Digest_Published_v1.0.json # n8n workflow export (sanitised)
```
## 路线图
- [ ] 通过 RSS 桥接或 Bot API 进行 Telegram feed 抓取
- [ ] 针对暗网泄露站点和地下论坛的 Onion 站点爬取 (Tor + scraper)
- [ ] 每周汇总摘要
- [ ] 在摘要生成 prompt 中加入 MITRE ATT&CK 技术标记
- [ ] 提取 IOC (IPs, domains, hashes, CVE IDs) 为结构化输出
- [ ] 通过摘要生成 prompt 产生检测规则建议 (Sigma / KQL / YARA)
## License
MIT
标签:AWS, DLL 劫持, Docker, DPI, RSS聚合, 大语言模型, 威胁情报, 安全防御评估, 开发者工具, 数据可视化, 请求拦截