Автор: Evan Harris
Ризик: Високий
Уражений компонент: thirdweb MCP Server

Вступ

У межах нашого поточного дослідження безпеки серверів Model Context Protocol (MCP) ми виявили суттєву вразливість у thirdweb MCP Server, яка уможливлює несанкціоновані криптовалютні транзакції через неавтентифікований мережевий доступ.

Огляд вразливості

thirdweb MCP Server, запущений із прапорцем --transport sse, відкриває неавтентифікований інтерфейс Server-Sent Events (SSE), який за замовчуванням прив’язується до 0.0.0.0:8000. Така конфігурація дозволяє віддаленим зловмисникам виконувати несанкціоновані криптовалютні транзакції з гаманців жертв.

Технічні деталі

Проблема

Під час налаштування з транспортом SSE сервер:

  • Прив’язується до 0.0.0.0:8000, роблячи себе доступним з будь-якого хоста в мережі
  • Не надає жодного механізму автентифікації для точки доступу /sse
  • Довіряє будь-якому підключеному клієнту виконання привілейованих операцій, зокрема криптовалютних транзакцій

Сценарій атаки

Зловмисник може:

  1. Виявити відкриту точку доступу за адресою http://victim_ip:8000/sse
  2. Підключитися за допомогою стандартних інструментів MCP, таких як MCP Inspector
  3. Виконати несанкціоновані транзакції за допомогою інструмента send_transaction
  4. Перевести криптовалюту з гаманця жертви на власну адресу

Proof of Concept

Вразлива конфігурація

thirdweb-mcp \
  --transport sse \
  --secret-key=sk_... \
  --engine-url=railway_hosted_engine_url \
  --engine-auth-jwt=eyJ... \
  --engine-backend-wallet-address=0xVictimWallet

Виконання несанкціонованої транзакції

За допомогою MCP Inspector зловмисник може підключитися до http://victim_ip:8000/sse та виконати інструмент send_transaction із відповідними параметрами, щоб перевести криптовалюту з гаманця жертви на адресу, контрольовану зловмисником.

[Технічні деталі приховано до появи виправлення]

Це призводить до несанкціонованого переказу криптовалюти з гаманця жертви без будь-якої автентифікації чи згоди користувача.

Оцінка наслідків

Ця вразливість уможливлює:

  • Пряму крадіжку криптовалюти з гаманців жертв без згоди користувача
  • Відкриття в масштабах усієї мережі, що вражає кав’ярні, офіси, публічні мережі та будь-яку скомпрометовану приватну мережу

Чинники ризику

  • Мережеве відкриття: прив’язка за замовчуванням до 0.0.0.0 робить сервіс доступним у масштабах усієї мережі
  • Відсутність автентифікації: будь-який клієнт може підключитися та виконувати привілейовані операції
  • Ціль високої цінності: прямий доступ до криптовалютних транзакцій
  • Тиха робота: атаки можуть відбуватися без відома користувача

Рекомендовані пом’якшення

Для користувачів (негайно)

  • Уникайте використання --transport sse у середовищах зі спільними мережами
  • Використовуйте прив’язку до localhost, змінивши конфігурацію за замовчуванням
  • Впроваджуйте обмеження на мережевому рівні (фаєрволи, VPN)

Для розробників (у довгостроковій перспективі)

  • Змініть прив’язку за замовчуванням з 0.0.0.0 на 127.0.0.1
  • Впровадьте автентифікацію для всіх транспортних інтерфейсів
  • Додайте попередження про безпеку в документацію та вивід CLI
  • Розгляньте моделі безпеки, специфічні для транспорту

Про цю вразливість було повідомлено команді thirdweb згідно з практиками відповідального розкриття. Ми рекомендуємо користувачам оновитися до останньої версії, щойно виправлення стануть доступними.

Ширші наслідки

Ця знахідка підкреслює важливі міркування щодо безпеки для MCP-серверів:

  1. Механізми автентифікації є важливими для будь-якого MCP-сервісу, доступного через мережу
  2. Налаштування мережевої прив’язки за замовчуванням повинні надавати перевагу безпеці, а не зручності
  3. Безпеку на транспортному рівні слід використовувати для пом’якшення атак на основі http
  4. Документація з безпеки повинна окреслювати ризики розгортання

Хронологія розкриття

  • 2025-05-23: Вразливість виявлено та повідомлено команді thirdweb
  • 2025-07-18: Повторний лист із проханням підтвердити отримання розкриття
  • 2025-09-02: Остаточне звернення з підтвердженням, що звіт буде оприлюднено
  • 2025-09-03: Публічне розкриття та публікація бюлетеня

Висновок

Можливість несанкціонованих транзакцій у thirdweb MCP Server демонструє критичну важливість безпечних налаштувань за замовчуванням в інструментах розробки, що інтегрують блокчейн і ШІ.

Оскільки поширення MCP зростає, впровадження надійних заходів безпеки стає ще важливішим для захисту цифрових активів користувачів і збереження довіри до екосистеми.

Організаціям та окремим особам, які розгортають MCP-сервери, слід проводити ретельні перевірки безпеки, впроваджувати стратегії ешелонованого захисту та зберігати обізнаність про ризики мережевого відкриття.

Джерела