Кто подставил Mercor: история одного взлома
Вчерашняя новость взорвала тихий пруд AI-разработки. Стартап-единорог Mercor признал: утечка данных. Не просто какая-то, а компрометация API-ключей к OpenAI GPT-5, Claude 3.7, Gemini 2.0 и другим платным моделям. Виновник? Казалось бы, надежный инструмент - LiteLLM.
История банальна и страшна одновременно. Разработчики Mercor использовали LiteLLM версии 1.82.8 в качестве прокси-сервера для унификации запросов к разным AI. Удобно, элегантно. И смертельно опасно, как выяснилось. Уязвимость, о которой мы предупреждали еще в марте, превратилась в бомбу замедленного действия.
По предварительным данным, утекли не только ключи. В открытый доступ попали логи запросов, содержащие фрагменты промптов и ответов моделей. Это золотая жила для конкурентов и черный рынок данных для обучения.
Что сломалось в LiteLLM
Проблема была в коде, который логировал ошибки. При определенном стечении обстоятельств (неправильная конфигурация, специфичный тип запроса) система вместо того, чтобы записать в лог обезличенную ошибку, выгружала туда полный конфиг со всеми credentials. А дальше - дело техники. Логи могли уйти в мониторинговую систему, сохраниться в незащищенном облачном хранилище. Или быть подобраны через скомпрометированный пакет в PyPI.
Команда LiteLLM выпустила патч в версии 1.82.9 еще в марте. Но, как это часто бывает, многие проекты (включая Mercor) просто не успели или не посчитали критичным обновить dependency. На 10 апреля 2026 года актуальная версия - 1.90.3. Разрыв в восемь минорных версий. Это как ехать на машине с открученным колесом и надеяться, что пронесет.
Цена доверия к open-source
Тут начинается самое интересное. Mercor - не пет-проект в гараже. Это компания с оценкой под 2 миллиарда долларов. И они доверили управление своими самыми ценными активами (API-ключами, которые стоят десятки тысяч в месяц) стороннему open-source инструменту. Без должного аудита, без изоляции, без многоуровневой защиты.
В теории open-source - это прозрачность и безопасность. На практике? Это десятки зависимостей, за которыми нужно постоянно следить. Одна ошибка в чужом коде - и твой бизнес висит на волоске. После инцидента с Mercor венчурные фонды начали требовать от портфельных стартапов аудит всех AI-инфраструктурных зависимостей. И это правильно.
Пять правил, которые спасут ваши ключи
Хотите, чтобы ваши ключи не оказались в следующей утечке? Забудьте про "работает - не трогай". Вот что нужно делать прямо сейчас.
1 Никогда не храните ключи в коде или конфигах
Это базовое правило, которое все знают и все нарушают. Перестаньте хардкодить OPENAI_API_KEY="sk-..." в вашем .env файле. Этот файл рано или поздно попадет в git, а оттуда - в публичный репозиторий. Используйте секретные менеджеры. Серьезные инструменты вроде HashiCorp Vault или облачные решения от AWS Secrets Manager, Google Secret Manager. Они не только хранят, но и ротируют ключи, ведут аудит доступа.
2 Принцип минимальных привилегий для каждого ключа
Создаете ключ для бота, который только генерирует текст? Не давайте ему права на чтение счетов, управление моделями или доступ к fine-tuning. Все современные провайдеры (OpenAI, Anthropic, Google) позволяют тонко настраивать scope ключей. Потратьте 10 минут, чтобы ограничить ущерб в случае утечки.
3 Изолируйте зависимости в песочницах
LiteLLM, LlamaIndex, LangChain - эти библиотеки имеют огромную поверхность атаки. Запускайте их не на основном сервере приложения, а в изолированных контейнерах или serverless-функциях с ограниченным доступом к сети и секретам. Если инструмент скомпрометирован, злоумышленник не сможет добраться до вашей основной базы данных или других сервисов.
4 Мониторинг, мониторинг и еще раз мониторинг
Настройте алерты на аномальную активность API-ключей. Резкий скачок стоимости, запросы из неожиданных регионов, вызовы необычных эндпоинтов - все это красные флаги. Инструменты вроде GitGuardian сканируют ваши репозитории на случайно закоммиченные ключи. Платите за мониторинг сейчас или заплатите в миллион раз больше после утечки.
5 План Б: ротация ключей по расписанию
Даже если ключ утек, но вы меняете его каждую неделю - у злоумышленника просто не будет времени нанести серьезный ущерб. Автоматизируйте процесс ротации. Используйте Infrastructure as Code (Terraform, Pulumi) для управления ключами. Сделайте так, чтобы старый ключ умирал в ту же секунду, как создается новый.
Что теперь делать с LiteLLM?
Паника? Нет. Но и слепое доверие - тоже не вариант.
Первое - обновитесь до версии 1.90.3 прямо сейчас. Проверьте, нет ли в ваших логах подозрительных записей за последние несколько месяцев. Второе - проведите аудит своей конфигурации. Отключите детальное логирование в продакшене. Третье - рассмотрите альтернативы. Может быть, ваш use-case настолько прост, что можно обойтись прямыми вызовами API провайдеров? Или использовать более узкоспециализированные прокси? Мы собрали три проверенных варианта в отдельном материале.
Главный урок истории с Mercor не в том, что LiteLLM плохой. А в том, что экосистема AI развивается так быстро, что безопасность всегда отстает на два шага. Вы доверяете свои данные десяткам посредников: модели, фреймворку, облачному провайдеру, библиотеке, DevOps-инженеру. Каждое звено - потенциальная дыра.
Мой прогноз? К концу 2026 года мы увидим первый серьезный регуляторный акт, касающийся именно безопасности AI-инфраструктуры. Что-то вроде HIPAA для медицинских данных, но для промптов и эмбеддингов. А пока - проверьте свои зависимости. Прямо сейчас.