CarbeneAI/Harbinger
GitHub: CarbeneAI/Harbinger
AI 驱动的开源威胁情报平台,自动聚合免费 IOC 情报源并通过自然语言交互提供智能化威胁分析与 hunting 查询生成能力。
Stars: 0 | Forks: 0
# Harbinger
**AI 驱动的威胁情报平台**
[](LICENSE)
[](https://bun.sh)
[](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 分析师面板。

### IOC 详情卡片
在请求 AI 分析之前,点击任何 IOC 以查看完整上下文。

### AI 分析
带有可操作补救措施和 hunting 查询的结构化威胁分析。

## 技术栈
| 组件 | 技术 |
|-----------|-----------|
| 运行时 | 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, 信标分析, 大语言模型, 威胁情报, 安全合规, 安全响应, 安全情报平台, 开发者工具, 恶意软件分析, 无线安全, 本地数据存储, 漏洞管理, 目标导入, 网络代理, 网络信息收集, 网络安全, 自动化攻击, 隐私保护