CarbeneAI/Harbinger

GitHub: CarbeneAI/Harbinger

AI 驱动的开源威胁情报平台,自动聚合免费 IOC 情报源并通过自然语言交互提供智能化威胁分析与 hunting 查询生成能力。

Stars: 0 | Forks: 0

Harbinger

# Harbinger **AI 驱动的威胁情报平台** [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) [![Bun](https://img.shields.io/badge/Runtime-Bun-black)](https://bun.sh) [![Vue 3](https://img.shields.io/badge/Frontend-Vue%203-42b883)](https://vuejs.org) Harbinger 是一个开源威胁情报平台,它接收免费的公共 IOC 订阅源,将其本地存储在 SQLite 中,并通过 AI 驱动的分析师界面展示它们。您可以用纯英语询问有关威胁的问题。让您的数据保留在自己的网络中。 本项目是 CarbeneAI 开源安全套件的一部分,与 [Specter](https://github.com/CarbeneAI/Specter)(SIEM 仪表盘)和 [Talon](https://github.com/CarbeneAI/Talon)(渗透测试工具)齐名。 ## 功能特性 - **三大免费威胁订阅源** — CISA 已知被利用漏洞、Abuse.ch URLhaus 以及 Abuse.ch ThreatFox。无需付费订阅。 - **AI 威胁分析师** — 用纯英语询问有关 IOC 的问题。AI 会搜索您的本地数据库,关联指标,并通过具有可操作性的补救措施解释威胁。 - **云端/本地 AI 切换** — 一键在 Anthropic Claude(云端)和 Ollama(本地)之间切换。敏感的威胁数据将保留在您的网络中。 - **分析师引导模式** — AI 响应遵循结构化的分类格式:这是什么?为什么重要?如何得知?下一步该做什么?应该注意什么? - **IOC 详情卡片** — 点击任何 IOC 即可查看完整上下文:严重性、类型、描述、来源、时间戳、标签和参考链接。 - **威胁简报生成** — 一键生成 AI 驱动的威胁简报,总结最关键的最新情报。 - ** Hunting 查询生成** — 为任何 IOC 生成 Sigma 规则、KQL 和 SPL 查询。 - **MITRE ATT&CK + D3FEND 映射** — 将 IOC 映射到攻击技术和防御对策。 - **全文搜索** — 使用 SQLite FTS5 跨 IOC 值、标题、描述和标签进行搜索。 - **Markdown 渲染** — AI 响应通过 marked.js 渲染标题、代码块、列表和表格。 - **零配置存储** — 无外部依赖的 SQLite 数据库。无需 Postgres,无需 Redis。 ## 屏幕截图 ### 仪表盘概览 带有严重性颜色编码、类型徽章、搜索和过滤器的 IOC 表格。右侧为 AI 分析师面板。 ![仪表盘概览](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/5afbf58f17102942.png) ### IOC 详情卡片 在请求 AI 分析之前,点击任何 IOC 以查看完整上下文。 ![IOC 详情](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/30090525f4102944.png) ### AI 分析 带有可操作补救措施和 hunting 查询的结构化威胁分析。 ![AI 分析](https://raw.githubusercontent.com/CarbeneAI/Harbinger/main/images/ai-analysis.png) ## 技术栈 | 组件 | 技术 | |-----------|-----------| | 运行时 | Bun | | 前端 | Vue 3 + Vite + Tailwind CSS | | 后端 | Bun HTTP server | | 数据库 | 带有 FTS5 的 SQLite (bun:sqlite) | | AI | Anthropic Claude API (工具使用) 或 Ollama (本地) | | 主题 | CarbeneAI dark (Tokyo Night) | | 图标 | Lucide Vue | ## 环境要求 - [Bun](https://bun.sh) v1.0+ - [Abuse.ch Auth Key](https://auth.abuse.ch/) (免费 — 用于 URLhaus + ThreatFox 订阅源) - [Anthropic API key](https://console.anthropic.com) (用于云端 AI) **或** [Ollama](https://ollama.com) (用于本地 AI) ## 快速开始 ### 1. 克隆仓库 ``` git clone https://github.com/CarbeneAI/Harbinger.git cd Harbinger ``` ### 2. 配置环境 ``` cp .env.example .env ``` 编辑 `.env` 并设置: ``` # URLhaus + ThreatFox feeds 必需(在 https://auth.abuse.ch/ 免费注册) ABUSE_CH_AUTH_KEY=your-key-here # Cloud AI 模式必需(或使用 Ollama 进行本地 AI) ANTHROPIC_API_KEY=sk-ant-... ``` ### 3. 安装依赖 ``` cd apps/server && bun install cd ../client && bun install cd ../.. ``` ### 4. 启动 Harbinger ``` ./manage.sh start ``` 打开 http://localhost:5174 订阅源会立即开始轮询。CISA KEV 加载约 1,500 个 CVE,URLhaus 添加恶意 URL,ThreatFox 添加带有恶意软件归因的 IOC。首次轮询在 15 秒内完成。 ## 配置说明 | 变量 | 默认值 | 描述 | |----------|---------|-------------| | `ABUSE_CH_AUTH_KEY` | — | Abuse.ch API 密钥(免费,URLhaus + ThreatFox 必需) | | `ANTHROPIC_API_KEY` | — | Anthropic API 密钥(云端 AI 模式必需) | | `POLL_INTERVAL_MS` | `3600000` | 订阅源轮询间隔(毫秒)(默认:1 小时) | | `DB_PATH` | `./harbinger.db` | SQLite 数据库文件路径 | | `PORT` | `4001` | 服务器端口 | ## AI 分析的工作原理 当您选择一个 IOC 并使用聊天面板时: 1. 选定的 IOC 将显示为带有完整上下文的详情卡片 2. AI 可以调用 `search_iocs` 工具查询您的本地 SQLite 数据库 3. 最多进行 3 次工具调用迭代以进行深度关联 4. 快捷操作:分析、威胁简报、Hunting 查询、MITRE ATT&CK/D3FEND 映射 ### 云端与本地 AI 对比 | | 云端 | 本地 | |---|---|---| | **模型** | Claude Sonnet | 任何 Ollama 模型 | | **数据隐私** | 发送至 Anthropic API | 保留在您的网络中 | | **IOC 搜索** | 自主工具使用 | 不可用 | | **速度** | 快 | 取决于硬件 | | **成本** | API 使用费 | 免费 | ## 威胁情报源 | 订阅源 | 类型 | IOCs | 更新频率 | |------|------|------|-----------------| | [CISA KEV](https://www.cisa.gov/known-exploited-vulnerabilities-catalog) | 已知被利用的 CVE | ~1,500+ | 每天 | | [URLhaus](https://urlhaus.abuse.ch/) | 恶意 URL + 域名 | ~1,000+ | 每小时 | | [ThreatFox](https://threatfox.abuse.ch/) | 带有恶意软件归因的 IOC | ~3,500+ | 每周(7 天时间窗口) | 所有订阅源均免费。CISA KEV 无需身份验证。URLhaus 和 ThreatFox 需要从 [auth.abuse.ch](https://auth.abuse.ch/) 获取免费 API 密钥。 ## API 参考 | 方法 | 端点 | 描述 | |--------|----------|-------------| | GET | `/health` | 包含 IOC 数量的健康检查 | | GET | `/stats` | 按类型、严重性、订阅源统计的 IOC 数量 | | GET | `/feeds` | 订阅源状态和上次轮询时间 | | POST | `/feeds/poll` | 触发立即订阅源轮询 | | GET | `/iocs?search=&type=&severity=&feed=&limit=&offset=` | 使用过滤器查询 IOC | | GET | `/iocs/:id` | 通过 ID 获取单个 IOC | | POST | `/iocs/search` | 全文搜索 IOC | | POST | `/chat` | 带有 IOC 上下文的 AI 聊天消息 | | GET | `/chat/prompts` | 快速提示模板 | | POST | `/briefs/generate` | 生成 AI 威胁简报 | | GET | `/briefs` | 列出生成的简报 | | GET | `/settings/ollama-models` | 列出可用的 Ollama 模型 | ## 管理脚本 ``` ./manage.sh start # Start server + client ./manage.sh stop # Stop all processes ./manage.sh restart # Restart ./manage.sh status # Check if running ./manage.sh logs # View recent logs ``` ## 路线图 - **Wazuh/Specter 集成** — Harbinger 与 Specter 之间的双向富化。当 Specter 发现警报时,Harbinger 会自动提供威胁上下文。 - **PDF 报告摄取** — 摄取威胁报告,通过 AI 提取 IOC 和 TTP。 - **自定义订阅源支持** — 添加您自己的 STIX/TAXII 或 CSV 订阅源。 - **IOC 富化** — VirusTotal、Shodan、WHOIS 查询以获取更深入的上下文。 - **STIX2 导出** — 将 IOC 导出为 STIX2 捆绑包以便共享。 ## CarbeneAI 安全套件的一部分 | 工具 | 用途 | 链接 | |------|---------|------| | **Talon** | AI 辅助渗透测试 | [GitHub](https://github.com/CarbeneAI/Talon) | | **Specter** | 实时 SIEM 仪表盘 | [GitHub](https://github.com/CarbeneAI/Specter) | | **Harbinger** | AI 驱动的威胁情报 | 您在这里 | ## 许可证 MIT — 详见 [LICENSE](LICENSE) 由 [CarbeneAI](https://carbene.ai) 构建
标签:Abuse.ch, AI安全分析师, AI风险缓解, Anthropic Claude, Bun, CISA, CISA项目, Cloudflare, D3FEND, DAST, DLL 劫持, GPT, Harbinger, IOC威胁指标, IP 地址批量处理, KQL, LLM评估, MITRE ATT&CK, Ollama, PE 加载器, Sigma规则, SPL, SQLite, TTP映射, Vue 3, 信标分析, 大语言模型, 威胁情报, 安全合规, 安全响应, 安全情报平台, 开发者工具, 恶意软件分析, 无线安全, 本地数据存储, 漏洞管理, 目标导入, 网络代理, 网络信息收集, 网络安全, 自动化攻击, 隐私保护