aplaceforallmystuff/mcp-threatintel

GitHub: aplaceforallmystuff/mcp-threatintel

一个基于 MCP 的统一威胁情报聚合服务器,解决多源情报分散查询与切换成本高的问题。

Stars: 3 | Forks: 1

# MCP Threat Intel Server [![npm version](https://img.shields.io/npm/v/mcp-threatintel-server.svg)](https://www.npmjs.com/package/mcp-threatintel-server) [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/27a0510317193844.svg)](https://github.com/aplaceforallmystuff/mcp-threatintel/actions/workflows/ci.yml) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![MCP](https://img.shields.io/badge/MCP-Compatible-blue)](https://modelcontextprotocol.io) MCP 服务器,为安全研究和分析提供对多个威胁情报源的统一访问。 ## 为什么使用这个? 如果您正在进行安全研究、事件响应或威胁分析,此 MCP 服务器可以让您: - **统一查询** - 同时查询 IP、域名、文件哈希和 URL 的多个来源 - **减少上下文切换** - 无需在多个浏览器标签页之间切换来访问不同的情报源 - **关联情报** - 在一个响应中查看所有配置来源的结果 - **免费层级友好** - 适用于免费 API 层级,在来源不可用时优雅降级 - **无需密钥即可工作** - Feodo Tracker(僵尸网络 C2)无需任何 API 密钥即可工作 ## 功能 | 类别 | 功能 | |------|------| | **统一查询** | 查询所有来源的 IP、域名、文件哈希、URL | | **AlienVault OTX** | 威胁脉冲、指标妥协、社区情报 | | **AbuseIPDB** | IP 信誉、滥用报告、置信度分数 | | **GreyNoise** | 互联网噪音与定向攻击、扫描器识别 | | **abuse.ch** | URLhaus、MalwareBazaar、ThreatFox、Feodo Tracker | ## 先决条件 - Node.js 18+ - 您首选的威胁情报来源的 API 密钥(参见下文) ## 安装 ### 使用 npm(推荐) ``` npx mcp-threatintel-server ``` 或全局安装: ``` npm install -g mcp-threatintel-server ``` ### 从源代码安装 ``` git clone https://github.com/aplaceforallmystuff/mcp-threatintel.git cd mcp-threatintel npm install npm run build ``` ## 配置 ### 对于 Claude Desktop 添加到您的 Claude Desktop 配置文件: **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json` **Windows**: `%APPDATA%\Claude\claude_desktop_config.json` ``` { "mcpServers": { "threatintel": { "command": "npx", "args": ["-y", "mcp-threatintel-server"], "env": { "OTX_API_KEY": "your-otx-api-key", "ABUSEIPDB_API_KEY": "your-abuseipdb-api-key", "GREYNOISE_API_KEY": "your-greynoise-api-key", "ABUSECH_AUTH_KEY": "your-abusech-auth-key" } } } } ``` ### 对于 Claude Code 添加到 `~/.claude.json`: ``` { "mcpServers": { "threatintel": { "command": "npx", "args": ["-y", "mcp-threatintel-server"], "env": { "OTX_API_KEY": "your-otx-api-key", "ABUSEIPDB_API_KEY": "your-abuseipdb-api-key", "GREYNOISE_API_KEY": "your-greynoise-api-key", "ABUSECH_AUTH_KEY": "your-abusech-auth-key" } } } } ``` ### API 密钥 | 服务 | 必需 | 免费层级 | 获取密钥 | |------|------|----------|----------| | AlienVault OTX | 可选 | 是(无限制) | [otx.alienvault.com](https://otx.alienvault.com) | | AbuseIPDB | 可选 | 是(每天 1,000 次) | [abuseipdb.com](https://www.abuseipdb.com) | | GreyNoise | 可选 | 是(有限) | [greynoise.io](https://www.greynoise.io) | | abuse.ch | 可选 | 是 | [auth.abuse.ch](https://auth.abuse.ch) | | Feodo Tracker | 否 | 是 | 公共 JSON 源 | **注意:** 工具会根据您提供的 API 密钥动态启用。Feodo Tracker 无需身份验证即可工作(使用公共 JSON 源)。 ## 使用示例 ### 检查可用来源 ### IP 调查 ### 域名分析 ### 恶意软件哈希查找 ### URL 分析 ### 僵尸网络追踪(无需 API 密钥) ### 威胁脉冲 ## 可用工具 ### 状态 | 工具 | 描述 | |------|------| | `threatintel_status` | 检查已配置哪些威胁情报来源 | ### 统一查询 | 工具 | 描述 | |------|------| | `threatintel_lookup_ip` | 查询所有来源的 IP | | `threatintel_lookup_domain` | 查询所有来源的域名 | | `threatintel_lookup_hash` | 查询文件哈希(MD5/SHA1/SHA256)跨来源 | | `threatintel_lookup_url` | 查询所有来源的 URL | ### AbuseIPDB(需要 API 密钥) | 工具 | 描述 | |------|------| | `abuseipdb_check` | 检查 IP 信誉和滥用历史 | ### AlienVault OTX(需要 API 密钥) | 工具 | 描述 | |------|------| | `otx_get_pulses` | 获取最近的威胁情报脉冲 | | `otx_search_pulses` | 按关键词搜索脉冲 | ### GreyNoise(需要 API 密钥) | 工具 | 描述 | |------|------| | `greynoise_ip` | 检查 IP 是网络噪音还是定向威胁 | ### URLhaus(需要 abuse.ch 认证密钥) | 工具 | 描述 | |------|------| | `urlhaus_lookup` | 在 URLhaus 中查询 URL、域名或 IP | | `urlhaus_recent` | 获取最近的恶意 URL | ### MalwareBazaar(需要 abuse.ch 认证密钥) | 工具 | 描述 | |------|------| | `malwarebazaar_hash` | 按哈希查找恶意软件样本 | | `malwarebazaar_recent` | 获取最近的恶意软件样本 | | `malwarebazaar_tag` | 按标签搜索样本 | ### ThreatFox(需要 abuse.ch 认证密钥) | 工具 | 描述 | |------|------| | `threatfox_iocs` | 获取 ThreatFox 的最近 IOC | | `threatfox_search` | 搜索 ThreatFox IOC | ### Feodo Tracker(无需密钥) | 工具 | 描述 | |------|------| | `feodo_tracker` | 获取活动僵尸网络 C2 服务器(QakBot、Emotet、Dridex 等) | ## 开发 ``` # Watch mode for development npm run watch # Build TypeScript npm run build # Run locally node dist/index.js ``` ## 故障排除 ### "未配置威胁情报来源" 您可以在没有 API 密钥的情况下使用服务器 - Feodo Tracker 仍然可以工作。对于其他来源,请添加适当的 API 密钥到您的配置中。 ### "API 错误:401 未授权" 您的 API 密钥无效或已过期。从相应服务生成一个新的密钥。 ### "API 错误:429 请求过多" 您已超出某个服务的速率限制。请稍等或升级您的 API 层级。 ### 部分结果 如果某些来源返回错误,统一查询工具仍将返回正常来源的结果。检查 `threatintel_status` 以查看哪些来源配置正确。 ## 数据来源 ### AlienVault OTX 开放威胁交换 - 一个社区驱动的威胁情报平台,包含妥协指标的脉冲。 ### AbuseIPDB 一个由全球网络管理员提供的滥用报告组成的众包 IP 信誉数据库。 ### GreyNoise 识别扫描互联网的 IP 地址与定向攻击。帮助减少威胁检测中的误报。 ### abuse.ch 项目 - **URLhaus** - 恶意软件分发 URL - **MalwareBazaar** - 恶意软件样本存储库 - **ThreatFox** - IOC 共享平台 - **Feodo Tracker** - 僵尸网络 C2 基础设施跟踪 ## 许可证 MIT - 详细信息请参见 [LICENSE](LICENSE)。 ## 链接 - [模型上下文协议](https://modelcontextprotocol.io) - [MCP 规范](https://spec.modelcontextprotocol.io) - [GitHub 仓库](https://github.com/aplaceforallmystuff/mcp-threatintel) ## 相关项目 如需更多威胁情报功能,请考虑: - [@burtthecoder/mcp-shodan](https://www.npmjs.com/package/@burtthecoder/mcp-shodan) - Shodan 互联网扫描 - [@burtthecoder/mcp-virustotal](https://www.npmjs.com/package/@burtthecoder/mcp-virustotal) - VirusTotal 恶意软件分析
标签:abuse.ch, AbuseIPDB, CI, Cilium, Feodo Tracker, GNU通用公共许可证, GreyNoise, IOC 查询, IP 信誉, MalwareBazaar, MCP Server, MCP 兼容, MIT License, MITM代理, Node.js, NPM, ThreatFox, URLhaus, URL 查询, 上下文切换, 互联网噪音, 免费 API, 域名查询, 多源查询, 威胁分析, 威胁情报, 开发者工具, 开源, 情报聚合, 扫描器识别, 文件哈希查询, 无需密钥, 模型上下文协议, 社区情报, 统一威胁情报, 自动化侦查工具, 自定义脚本, 降级处理