OSINT安全情报服务器

一个为AI助手提供安全访问recon-ng框架OSINT能力的MCP服务器,专用于防御性安全目的。

  • by NimaZahediN
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 NimaZahediN/recon-ng-mcp-server

使用说明

Recon-ng MCP 服务器

一个模型上下文协议(MCP)服务器,为人工智能助手提供安全访问recon-ng的开源情报(OSINT)功能,以用于防御性安全目的。

概述

这个MCP服务器与recon-ng框架集成,提供了人工智能辅助的开源情报(Open Source Intelligence)收集功能。它实施了严格的安全控制措施,以确保该系统仅用于防御性安全目的。

特点/特性

=' 核心工具

  • 列出模块获取经过安全过滤的可用recon-ng模块
  • 获取模块信息获取特定模块的详细信息
  • 运行模块在安全验证下安全执行模块
  • 列出工作区显示可用的recon-ng工作区
  • 创建工作区创建新的工作区以组织调查工作
  • 切换工作区在不同的工作区之间切换

=Ę 资源

  • recon://workspace/{工作区}/data访问工作区侦察数据
  • recon://模块/类别获取模块类别和组织结构
  • recon://security/approved_modules 翻译为中文是:“侦察://安全/已批准模块” 或者更自然的表达可以是 “安全侦察://已批准模块”。不过,这里的“recon”通常是一个特定上下文中的术语,可能代表“侦察”或“安全侦察”等,具体翻译可能需要根据上下文来确定。在缺乏具体上下文的情况下,上述翻译提供了一种通用的表达方式获取经安全认证的模块列表
  • **recon://workspace/{workspace}/summary 翻译为中文是:“侦察://工作区/{工作区名称}/摘要”**获取工作区数据概要

安全特性

  • 仅用于防御性安全用途的模块白名单
  • 输入验证和清理
  • 工作区隔离
  • 安全模式检测
  • 速率限制
  • 全面记录(或综合日志记录)

先决条件

安装

  1. 克隆仓库 (如果是独立项目)或设置项目:

    git clone <repository-url>
    cd recon-ng-mcp-server
    
  2. 使用 uv 安装依赖项:

    uv sync
    
  3. 设置 recon-ng好的

    # Clone recon-ng to the parent directory
    cd ..
    git clone https://github.com/lanmaster53/recon-ng.git
    cd recon-ng-mcp-server
    

配置

安全配置

编辑 config/security_config.yaml 进行定制:

  • 已批准的模块列表
  • 被阻挡的模式
  • 安全设置
  • 速率限制

服务器配置

编辑 config/server_config.yaml 进行定制:

  • 服务器设置
  • 日志配置
  • Recon-ng 集成设置
  • MCP(可能指某种特定系统或协议,如“多协议控制器”等,具体含义需根据上下文确定)功能/能力

用法

启动服务器

# Using uv
uv run src/mcp_server.py

# Or using the installed script
uv run recon-mcp

与Claude Desktop配合使用

在您的Claude Desktop MCP配置中添加:

{
  "mcpServers": {
    "recon-ng": {
      "command": "uv",
      "args": ["run", "recon-mcp"],
      "cwd": "/path/to/recon-ng-mcp-server"
    }
  }
}

示例操作

  1. 列出可用模块:

    List all security-approved recon-ng modules
    
  2. 获取模块信息:

    Get information about the recon/domains-hosts/bing_domain_web module
    
  3. 运行一个模块 (安全模拟模式):

    Run the bing_domain_web module with domain example.com
    
  4. 访问工作区数据:

    Show me the summary of data in the default workspace
    

安全考虑因素

已批准的模块

仅允许使用明确批准用于防御安全的模块:

  • 域名侦察模块
  • 收集联系方式
  • 社交媒体侦察(仅读取)
  • 报告和导出模块

阻塞操作

以下类型的运算是被阻止的:

  • 暴力破解攻击
  • 凭证收集(或称为凭证窃取)
  • 开采尝试
  • 密码破解
  • 任何进攻性安全行动

输入验证

所有输入均经过验证,以确保:

  • 长度限制
  • 字符限制
  • 安全模式检测
  • 防止路径遍历攻击

发展

项目结构

recon-ng-mcp-server/
�� src/
   �� mcp_server.py       # Main MCP server
   �� recon_wrapper.py    # Recon-ng integration
   �� security.py         # Security validation
   �� utils.py            # Utility functions
�� config/
   �� server_config.yaml  # Server configuration
   �� security_config.yaml # Security settings
�� tests/
   �� test_mcp_server.py  # Tests
�� pyproject.toml          # Project configuration
�� README.md

添加依赖项

uv add package-name

运行测试

uv run pytest

开发模式

设定 development.debug_mode: true 在 config/server_config.yaml 用于详细日志记录。

局限性

  • 目前为安全起见,在模拟模式下运行
  • 仅限于只读的开源情报(OSINT)操作
  • 新模块需手动批准
  • 无实时模块执行功能(计划在未来的版本中实现)

做出贡献

  1. 确保所有新模块通过安全验证
  2. 添加适当的测试
  3. 更新文档
  4. 遵循防御性安全原则

许可证

此项目仅设计用于防御性安全用途。请确保遵守相关法律法规。

支持

对于以下相关问题:

免责声明

此工具专为防御性安全和授权的开源情报(OSINT)收集而设计。用户有责任确保其使用符合相关法律法规。作者不对该软件的任何滥用行为负责。