使用说明
项目简介
ROADrecon MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为 AI 助手(如 Claude)提供访问 ROADRecon 收集的 Azure AD 数据的能力。它允许 LLM 通过标准化的 MCP 协议,安全地查询 Azure AD 信息并执行安全分析任务。
主要功能点
- 资源访问: 提供对 ROADRecon 收集的 Azure AD 数据的访问,包括用户、组、应用、服务主体等信息,例如获取用户列表、应用详情等。
- 安全分析工具: 内置多种安全分析工具,例如查找特权用户、分析 MFA 状态、检测应用密钥泄露、分析条件访问策略等,帮助 LLM 进行深入的安全评估。
- 预置 Prompt 模板: 提供用于常见安全分析任务的 Prompt 模板,例如分析整体安全态势、特权访问、应用风险等,简化 LLM 的交互和分析流程。
安装步骤
- 克隆仓库到本地:
git clone https://github.com/atomicchonk/roadrecon_mcp_server - 进入仓库目录并安装依赖:
cd roadrecon_mcp_server pip install -r requirements.txt
服务器配置
MCP 服务器是为 MCP 客户端(例如 Claude Desktop)提供服务的后端应用。您需要在 MCP 客户端中配置服务器连接信息。以下是 Claude Desktop 等 MCP 客户端所需的服务器配置示例 (JSON 格式):
{ "server name": "ROADrecon MCP Server", "command": "python", "args": ["roadrecon_mcp_server.py"] }
配置参数说明:
- 'server name': 服务器名称,您可以自定义设置,用于在 MCP 客户端中标识该服务器。例如: '"ROADrecon MCP Server"'。
- 'command': 启动 MCP 服务器的命令。由于该服务器是 Python 应用,此处应设置为 '"python"'。
- 'args': 启动命令的参数,以列表形式提供。这里指定运行 'roadrecon_mcp_server.py' 脚本。如果您的 Python 环境路径配置不同,可能需要使用 Python 解释器的完整路径。
环境变量配置: 如果您的 ROADRecon Web GUI 不是运行在默认地址 'http://localhost:5000',您需要在启动 MCP 服务器前设置 'ROADRECON_URL' 环境变量,指定 ROADRecon GUI 的访问地址。例如,在 Linux/macOS 系统中可以这样设置:
export ROADRECON_URL=http://your_roadrecon_gui_address:port
在 Windows 系统中可以使用 'set' 命令:
set ROADRECON_URL=http://your_roadrecon_gui_address:port
基本使用方法
- 启动 ROADRecon Web GUI: 确保您的 ROADRecon Web GUI 实例已经启动并可访问。默认情况下,ROADRecon GUI 运行在 'http://localhost:5000'。
- 启动 MCP 服务器: 在仓库目录下,打开终端并运行以下命令启动 MCP 服务器:
如果配置了 'ROADRECON_URL' 环境变量,服务器将连接到指定的 ROADRecon GUI 地址。python roadrecon_mcp_server.py - 在 MCP 客户端中添加服务器: 打开您的 MCP 客户端(例如 Claude Desktop),进入服务器设置或添加服务器的页面。选择 "Add from running server" 或类似选项,MCP 客户端会自动扫描并列出正在运行的 MCP 服务器。
- 安装并连接服务器: 在 MCP 客户端的服务器列表中,您应该能看到名为 "ROADrecon MCP Server" 的服务器。点击 "Install" 或类似按钮进行安装和连接。
- 使用 LLM 进行安全分析: 连接成功后,您可以在 LLM 的对话中使用预定义的资源 URI (例如 'roadrecon://users', 'roadrecon://applications') 和工具 (例如 'find_privileged_users()', 'analyze_mfa_status()'),或者调用预置的 Prompt 模板 (例如 'analyze_security_posture', 'analyze_privileged_access'),让 LLM 基于 ROADRecon 数据进行 Azure AD 安全分析。
示例查询:
- "使用工具 'find_privileged_users()' 分析特权用户"
- "读取资源 'roadrecon://mfa' 获取 MFA 状态"
- "使用 Prompt 'analyze_security_posture' 进行全面的安全态势分析"
请参考仓库的 'README.md' 文件和代码注释,了解更多资源、工具和 Prompt 的详细信息。
信息
分类
商业系统