Ничего слишком! (Солон).

Хакеры взломали конвейер релизов LiteLLM и распространили вредоносное ПО для кражи информации


Хакеры взломали конвейер релизов LiteLLM и распространили вредоносное ПО для кражи информации

Хакеры взломали пакет PyPI проекта LiteLLM и опубликовали вредоносные образы Docker с полезной нагрузкой, которая крадет учетные данные, секреты и переменные среды.

Атака на цепочку поставок затронула все установочные пакеты PyPI (.whl) для LiteLLM версии 1.107.0, что привело к сбоям в системах Windows, Linux и macOS.

LiteLLM — это открытый Python SDK и шлюз для искусственного интеллекта, который позволяет приложениям получать доступ к моделям искусственного интеллекта от разных поставщиков через общий API.

Это очень популярный проект с 61 800 звёздами на GitHub, 92 миллионами загрузок в месяц на PyPI. Его используют такие известные компании, как NVIDIA, Netflix, AT&T и Okta.

В проекте говорится, что конвейер релизов был скомпрометирован 21 октября, и злоумышленник загрузил версию 1.107.0 в реестр Docker и PyPI.

«Эта версия содержала скомпилированное вредоносное ПО, которое похищает учетные данные и загружает инструменты для удаленного выполнения кода», — сообщает разработчик, добавляя, что клиенты, использующие частное предприятие, не пострадали.

В отчете о вскрытии инцидента сопровождающий сообщает, что в результате атаки были затронуты следующие артефакты LiteLLM:

  • PyPI: litellm==1.107.0: все семь колес, прямой эфир с 11:39:51 по 13:23 UTC
  • Docker Hub: версия v1.107.0, последняя, основная версия и основная стабильность: указывает на скомпрометированный индекс изображения sha256: 1bbc 1443bc962e45f5aad53fe3d2c30600e0379715fb6c664cdd3ac126c339e с 11:46:56 по 14:20 UTC
  • GHCR: версия v1.107.0, последняя, main-последняя и main-стабильная: указывает на указанные ниже индексы скомпрометированных изображений с 11: 46:56 UTC до тех пор, пока они не стали недоступны к 13: 51 UTC
    • ghcr.io/berriai/litellm: sha256:1bbcb1443bc9…
    • ghcr.io/berriai/litellm-database: sha256:c00f9d92c427…
    • ghcr.io/berriai/litellm-non_root: sha256:7b00e91cd2fe…

 

Несколько компаний, занимающихся защитой приложений, обнаружили атаку в течение шести минут после публикации вредоносной версии LiteLLM и проанализировали полезную нагрузку.

По словам исследователей, злоумышленник не трогал код приложения LiteLLM, а изменил только установочный пакет, чтобы поместить три вредоносных файла (cook.pth, cook.py и sitecustomize.py) в каталог библиотек Python в среде.

«При обычном запуске Python обрабатывает исполняемые строки .pth, а затем пытается импортировать sitecustomize», — объясняют исследователи из Socket.

Endor Labs отмечает, что таким образом полезные нагрузки выполняются до запуска приложения каждый раз, когда в среде запускается Python. Запуск Python или pip для проверки зараженной установки также приводил к срабатыванию вредоносного ПО.

Вредоносное ПО нацелилось на следующие данные:

  • Учетные данные для облачных сервисов и развертывания: AWS, Azure, Google Cloud, Kubernetes, Docker и секреты управления инфраструктурой.
  • Учетные данные и настройки для ИИ: файлы аутентификации для инструментов разработки ИИ, а также сохраненные учетные данные провайдера LiteLLM и настройки модели.
  • Секреты разработчика и закрытые ключи: учетные данные Git, GitHub, npm, PyPI и CI/CD; файлы .env; ключи SSH, GPG и TLS.
  • Данные браузера: сохраненные данные для входа, файлы cookie, данные автозаполнения/оплаты и базы данных истории просмотров.
  • Данные хоста и среды выполнения: переменные среды, история работы с оболочкой и приложениями, а также системная и сетевая информация.

 

Украденные данные шифруются с помощью ключа AES-256-CBC, который, в свою очередь, шифруется с помощью ключа RSA-4096, а затем загружаются на сайт litellm[.]dev/healthcheck

Один из вредоносных файлов, sitecustomize.py, запускает автономный загрузчик, который каждый час проверяет указатель на GitHub и загружает Python с внешнего сервера для выполнения на хосте.

Вредоносные пакеты были удалены, но пользователям, которые могли пострадать от атаки, следует остановить затронутые развертывания и проверить среду, не запуская интерпретатор Python.

Зараженные системы следует изолировать и восстановить из чистых резервных копий, а все открытые секреты — немедленно заменить.

При удалении только каталога пакета LiteLLM могут остаться файлы запуска или активный загрузчик.

В настоящее время рекомендуется использовать LiteLLM 1.106.2 — последнюю чистую версию до атаки.

Ранее проект также пострадал от взлома в марте, когда хакерская группа TeamPCP опубликовала вредоносные версии LiteLLM на PyPI после взлома сканера уязвимостей Aqua Security Trivy, используемого в конвейере CI/CD LiteLLM.

Редактор: AndreyEx

Если статья понравилась, поделитесь ей в социальных сетях

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Это может быть вам интересно


Спасибо!

Теперь редакторы в курсе.

Прокрутить страницу до начала