Тихий взрыв в ядре AI-инфраструктуры
24 марта 2026 года. Вчера вечером, пока вы обновляли зависимости для своего нового AI-агента, кто-то уже выкачивал ваши ключи API. Не через взломанный GitHub. Не через фишинг. Через обычную команду pip install litellm.
Официальные репозитории PyPI содержали поддельные версии популярной библиотеки LiteLLM - инструмента, который используют тысячи проектов для унификации доступа к Claude-4, GPT-5, Llama-4 Scout и другим моделям. Вредоносные пакеты с именами, отличающимися одной буквой, загружали скрытые payload'ы, которые искали конфиденциальные данные.
На момент публикации (24.03.2026) команда LiteLLM выпустила официальное заявление: скомпрометированы пакеты litellm-fork, litellm-utils, lite-llm и litellm-client. Официальный пакет litellm версии 2.0.8 и выше не затронут, но все, кто устанавливал зависимости через requirements.txt без strict pinning, могли получить троян.
Как это работает? Механика тихой кражи
Атака на цепочку поставок (supply chain attack) - это когда злоумышленник лезет не в ваш код, а в инструменты, которые вы доверчиво качаете. В этом случае - в Python-пакеты.
Поддельные версии LiteLLM делали три вещи:
- При импорте библиотеки запускали скрытый скрипт, который сканировал переменные окружения на предмет
OPENAI_API_KEY,ANTHROPIC_API_KEY,GOOGLE_API_KEY - Перехватывали конфигурационные файлы в форматах YAML и JSON, искавшиеся в стандартных путях (
~/.litellm/config.yaml,./configs/) - Отправляли найденные данные на внешние серверы через зашифрованные каналы, маскируя трафик под легитимные запросы к CDN
pip list | grep -i litellmСамое мерзкое? Эти пакеты жили в PyPI неделю. Их скачали больше 15 000 раз по данным на 24.03.2026. Авторы использовали технику typosquatting - названия, похожие на оригинал, но с опечаткой, на которую не обратит внимание уставший разработчик.
"Но я же проверяю зависимости!" - говорите вы. А вот и нет
В теории вы читаете каждый строчки кода в каждой библиотеке. На практике - ставите pip install litellm[openai,anthropic] и бежите тестировать промпты. Особенно когда дедлайн.
Эти поддельные пакеты искусно избегали detection:
- Их
setup.pyвыглядел легитимно, с правильными metadata - Они проходили базовые проверки типов и линтеры
- Основной функционал LiteLLM работал - можно было делать запросы к моделям, всё выглядело нормально
- Малая часть кода исполнялась только при определенных условиях (например, при наличии файла конфигурации)
Звучит знакомо? Такая же тактика использовалась в недавней атаке на llama.cpp, где уязвимость позволяла выполнять удаленный код. И в целой серии инцидентов с AI-агентами в начале 2026 года.
Если вы используете LiteLLM в продакшне - немедленно отзовите все API-ключи, которые могли быть в среде выполнения. Особенно если ваше приложение работает с чувствительными данными через Claude Code или Llama-4 Scout. Не ждите уведомлений от провайдеров - действуйте сейчас.
Что делать? Инструкция для паникующих
1Диагностика заражения
Первое - проверьте, что у вас установлен официальный пакет. Запустите в терминале:
pip show litellm | grep -E "Name|Version"
Name должен быть точно litellm, а версия - 2.0.8 или выше (на 24.03.2026 это последняя стабильная). Если видите litellm-fork, lite-llm или что-то подобное - у вас проблема.
2Аудит зависимостей
Проверьте весь стек. Эта атака могла прийти не напрямую, а через другую библиотеку, которая зависит от LiteLLM. Используйте pipdeptree или встроенный pip check. Особое внимание - если вы используете сложные цепочки вызовов моделей через LiteLLM.
3Обновление и блокировка
Установите официальную версию явно: pip install litellm==2.0.8. В requirements.txt добавьте strict version pinning. И подумайте о переходе на pip-tools или poetry для управления зависимостями.
4Мониторинг утечек
Проверьте логи своих провайдеров AI-сервисов на предмет необычной активности. Установите alerts на нестандартное использование API-ключей. И помните: безопасность AI-систем начинается с базовой гигиены зависимостей.
Почему это только начало
LiteLLM - идеальная мишень. Библиотека-оркестратор, которая по умолчанию имеет доступ ко всем вашим API-ключам. Её устанавливают в продакшен, в CI/CD, в облачные функции. Она становится единой точкой входа для атак на цепочку поставок в AI.
В 2026 году мы увидим больше таких атак. Не только в Python, но и в npm-пакетах для JS-библиотек AI, в Docker-образах с предустановленными моделями. ИИ-рансом уже реальность, а цепочки поставок - их любимый вектор.
Иронично: мы боимся психозов в LLM и prompt injection, но самые болезненные удары приходят со стороны доверенных инструментов.
Ваш следующий шаг (если еще не сделали)
Откройте терминал. Прямо сейчас. Проверьте свои проекты. Не откладывайте на "после митинга". Каждая минута с компрометированными зависимостями - это потенциальная утечка.
И перестаньте доверять pip install вслепую. В 2026 году это все равно что пить из случайной лужи в темном переулке. Используйте приватные репозитории пакетов, подписывайте зависимости, внедряйте SBOM (Software Bill of Materials).
AI-революцию построили на открытых библиотеках. Теперь пришло время научиться их защищать. Иначе следующая новость будет о вашем проекте.