Инструмент с открытым исходным кодом для обнаружения рисков безопасности в службах MCP

Общее введение

mcp-is-dangerous - это инструмент с открытым исходным кодом, разработанный Шаоцзе Цзяном на GitHub. Он помогает пользователям обнаружить риски безопасности службы MCP (Model Context Protocol) при использовании инструментов искусственного интеллекта с помощью простого кода на Python. Инструмент показывает потенциальные угрозы, когда внешние инструменты могут получить доступ к переменным окружения или файлам, и призван предупредить пользователей о проблемах безопасности. Он совместим с авторским расширяемые агенты Проект, связанный с проектом, подчеркивает простоту совместного использования инструментов и риски. Проекты предназначены только для образовательных и тестовых целей и не поддерживают вредоносное использование.

检测MCP服务安全风险的开源工具

 

Список функций

  • зондирование MCP Можно ли использовать сервис в злонамеренных целях.
  • Обеспечить функции инструмента get_environment_variables, показывая доступ к переменным окружения.
  • Раскройте уязвимость службы MCP с помощью примеров кода.
  • Поддержка подключения пользовательских клиентов MCP для тестирования безопасности услуг.
  • Напомните пользователям о необходимости запуска в изолированной среде для проверки риска.

 

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

Как установить и запустить

Для работы с этим инструментом требуется базовая среда Python. Ниже приведены подробные шаги:

  1. Проверка окружения Python
    Убедитесь, что установлен Python 3.8 или более поздней версии. Введите в терминале:
python --version

Если он у вас не установлен, вы можете загрузить его с сайта Python.

  1. Скачать инструменты
    Выполните следующую команду в терминале для локального клонирования:
git clone https://github.com/ShaojieJiang/mcp-is-dangerous.git

Затем перейдите к каталогу:

cd mcp-is-dangerous
  1. Установка зависимостей
    нужно fastmcp библиотека для запуска службы MCP. Способ установки:
pip install fastmcp

В целях безопасности доступна виртуальная среда:

python -m venv venv
source venv/bin/activate  # Windows 用 venv\Scripts\activate

затем запустите pip install fastmcp.

  1. стартовый набор
    Запустите его в каталоге:
python main.py

Когда на терминале отображается "Server running...", инструмент запускается. Когда на терминале отображается "Сервер работает...", инструмент запускается.

  1. функция тестирования
    Обнаружение с помощью командной строки:
uvx mcp-is-dangerous

Пример вывода:

Here are what I could find:
PATH                          /usr/***
HOME                          /home/***

Основные функции

  • Обнаружение доступа к переменным окружения
    Основными функциями являются get_environment_variablesЭтот код используется для проверки того, может ли служба MCP получить переменные окружения. Код выглядит следующим образом:
@server.tool()
async def get_environment_variables() -> str:
result = ["Here are what I could find:"]
for key, value in os.environ.items():
result.append(f"{key:<30} {value[:5]}***")
return "\n".join(result)

На выходе отображается имя переменной и часть значения (первые 5 символов, последующие скрыты как "***"), вы можете модифицировать код для просмотра полных данных, но для этого необходимо работать в безопасной среде.

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

    {
    "mcpServers": {
    "dangerous-mcp": {
    "command": "python",
    "args": ["main.py"]
    }
    }
    }
    

    Сохраните его в виде JSON-файла и запустите клиент для его обнаружения.

Рекомендации по тестированию безопасности

  • Работа в изолированной среде
    Рекомендуется тестирование контейнеров Docker:

    docker run -it --rm python:3.8 bash
    

    Установите и запустите внутри контейнера, чтобы избежать влияния на локальную систему.

  • Очистка конфиденциальных данных
    Удалите конфиденциальную информацию из переменных окружения перед запуском, например:

    unset OPENAI_API_KEY
    
  • Обзор исходного кода
    Проверка перед использованием main.pyКод короткий и подходит для проверки безопасности службы MCP.

дополнительное примечание

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

 

сценарий применения

  1. Обнаружение безопасности услуг MCP
    Разработчики могут использовать его для проверки службы MCP на наличие рисков утечки.
  2. Проверка безопасности инструментов
    Команды безопасности используют его для моделирования поведения при доступе и проверки мер защиты.
  3. Учебная демонстрация
    Образовательные организации используют его для демонстрации рисков, связанных с услугами MCP, и повышения осведомленности о безопасности.

 

QA

  1. Что делает этот инструмент?
    Он определяет, можно ли использовать службу MCP для доступа к переменным среды, и помогает пользователям выявить риски безопасности.
  2. Безопасно ли бегать?
    Сам инструмент используется для тестирования и не является вредоносным. Однако его использование в реальной среде может привести к раскрытию данных, поэтому рекомендуется использовать изолированную среду.
  3. Как я могу использовать его для повышения безопасности?
    Проверьте исходный код, изолируйте выполнение, очистите конфиденциальные данные, проверьте работу инструментов.
© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...