情报扫描服务器

SpiderFoot MCP Server是一个基于SpiderFoot开源情报自动化工具的服务,用于执行侦察、收集情报和分析目标。

  • by schwarztim
  • JavaScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 schwarztim/sec-spiderfoot-mcp

使用说明

SpiderFoot MCP服务器

一种模型上下文协议(MCP)服务器 蜘蛛脚,开源OSINT自动化工具。该服务器使AI助手能够通过SpiderFoot的全面扫描功能进行侦察、收集情报和分析目标。

特性

  • 全OSINT自动化 -启动、停止和管理侦察扫描
  • 200+数据模块 -访问SpiderFoot的广泛模块库以收集情报
  • 多目标支持 -扫描域、IP、电子邮件、电话号码、用户名等
  • 关联引擎 -利用SpiderFoot内置的关联规则进行威胁分析
  • 导出和可视化 -以JSON/GEXF格式导出数据以供进一步分析
  • 搜索和筛选 -使用正则表达式支持跨扫描查询

先决条件

  • 蜘蛛脚 在启用web UI的情况下运行
  • Node.js 18.0.0或更高版本
  • npm或纱线

安装

# Clone the repository
git clone https://github.com/schwarztim/sec-spiderfoot-mcp.git
cd sec-spiderfoot-mcp

# Install dependencies
npm install

# Build the project
npm run build

配置

环境变量

变量 描述 默认值
SPIDERFOOT_URL SpiderFoot网页用户界面URL http://127.0.0.1:5001
SPIDERFOOT_USERNAME 身份验证用户名(可选) -
SPIDERFOOT_PASSWORD 身份验证密码(可选) -

Claude桌面配置

添加到您的Claude桌面配置(~/.config/claude/claude_desktop_config.json 在Linux或 ~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):

{
  "mcpServers": {
    "spiderfoot": {
      "command": "node",
      "args": ["/path/to/sec-spiderfoot-mcp/dist/index.js"],
      "env": {
        "SPIDERFOOT_URL": "http://127.0.0.1:5001"
      }
    }
  }
}

蜘蛛脚设置

选项1:Python(推荐用于Kali Linux)

# Clone SpiderFoot
git clone https://github.com/smicallef/spiderfoot.git
cd spiderfoot

# Install dependencies
pip3 install -r requirements.txt

# Start with web UI
python3 sf.py -l 127.0.0.1:5001

选项2:Docker

docker run -p 5001:5001 spiderfoot/spiderfoot

选项3:Kali Linux软件包

sudo apt update && sudo apt install spiderfoot
spiderfoot -l 127.0.0.1:5001

可用工具

扫描管理

工具 说明
spiderfoot_ping 测试与SpiderFoot服务器的连接
spiderfoot_scans 列出所有扫描的状态和风险指标
spiderfoot_scan_status 获取特定扫描的详细状态
spiderfoot_start_scan 开始新的OSINT侦察扫描
spiderfoot_stop_scan 停止正在运行的扫描
spiderfoot_delete_scan 删除扫描及其数据

结果与分析

工具 说明
spiderfoot_results 获取扫描结果(按类型筛选,排除误报)
spiderfoot_summary 获取按类型/模块/实体分组的摘要
spiderfoot_correlations 获取相关性发现和模式
spiderfoot_search 跨扫描搜索(支持正则表达式)

配置和元数据

工具 说明
spiderfoot_modules 列出所有可用的扫描模块
spiderfoot_event_types 列出SpiderFoot可以收集的所有数据类型
spiderfoot_correlation_rules 列出相关规则和风险评级
spiderfoot_config 获取全局SpiderFoot配置
spiderfoot_scan_config 获取用于特定扫描的配置

导出和可视化

工具 说明
spiderfoot_export 以JSON格式导出扫描数据
spiderfoot_graph 获取图形数据(JSON或GEXF表示Gephi)
spiderfoot_discovery_path 追踪数据元素是如何被发现的
spiderfoot_history 获取扫描时间线/历史记录

诊断

工具 说明
spiderfoot_scan_log 获取扫描的执行日志
spiderfoot_scan_errors 获取扫描过程中遇到的错误

使用示例

开始侦察扫描

Start a footprint scan against example.com:
- Name: "Example Corp Recon"
- Target: "example.com"
- Use Case: "footprint" (attack surface mapping)

扫描用例

用例 描述
all 运行所有模块(全面但缓慢)
passive 无主动探测-仅限OSINT
investigate 威胁调查重点
footprint 攻击面测绘

使用正则表达式搜索

Search for all admin emails across scans:
- value: "/admin.*@.*\.com/"

获得具体结果

Get all email addresses found in scan:
- scan_id: "abc123"
- event_type: "EMAILADDR"
- unique: true

支持的目标类型

SpiderFoot可以扫描各种目标类型:

  • 域名 - example.com
  • IP地址 - 192.168.1.1, 192.168.1.0/24
  • 电子邮件地址 - user@example.com
  • 电话号码 - +1-555-123-4567
  • 保护用户名 - johndoe
  • 比特币地址 - 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa
  • 还有更多。..

安全考虑

  • SpiderFoot执行可能被探测到的主动侦察
  • 在扫描目标之前,始终确保您有授权
  • 使用 passive 非侵入式OSINT收集用例
  • 考虑敏感扫描操作的网络隔离

发展

# Watch mode for development
npm run dev

# Build for production
npm run build

# Start the server
npm start

许可证

MIT许可证-请参阅 许可证 了解详情。

相关项目

贡献

欢迎投稿!请随时提交拉取请求。

  1. 克隆该仓库
  2. 创建功能分支(git checkout -b feature/amazing-feature)
  3. 提交您的更改(git commit -m 'Add amazing feature')
  4. 推到分支(git push origin feature/amazing-feature)
  5. 打开拉取请求