Безопасность · 25 октября 2026 г.
Злоумышленники взломали конвейер выпуска LiteLLM для распространения вредоносного программного обеспечения
Злоумышленники скомпрометировали конвейер выпуска проекта LiteLLM и распространили вредоносные образы контейнеров Docker, а также пакеты PyPI, содержащие полезную нагрузку, которая похищает учетные данные, секреты и переменные окружения. Инцидент затронул все установочные пакеты версии 1.107.0 для операционных систем Windows, Linux и macOS.
Проект LiteLLM представляет собой набор инструментов с открытым исходным кодом на языке Python, который выступает в роли шлюза для искусственного интеллекта и позволяет приложениям получать доступ к моделям различных провайдеров через единый интерфейс программирования приложений. Репозиторий проекта имеет более шестидесяти одной тысячи звезд на платформе GitHub, а ежемесячное количество загрузок его пакетов достигает девяноста двух миллионов. Среди пользователей решения числятся такие крупные организации, как NVIDIA, Netflix, AT&T и Okta.
Разработчики подтвердили, что компрометация конвейера выпуска произошла двадцать первого октября, после чего злоумышленник разместил вредоносную версию в реестре Docker и хранилище PyPI. Эта версия содержала скомпилированное вредоносное программное обеспечение, предназначенное для кражи учетных данных и загрузки инструментов удаленного выполнения кода. При этом клиенты, использующие частную корпоративную версию продукта, не пострадали от данной атаки.
Исследователи безопасности установили, что нападавшие не вносили изменений в исходный код самого приложения LiteLLM. Вместо этого они модифицировали установочный пакет, чтобы разместить три вредоносных файла в директории библиотеки языка Python в среде выполнения. Эти файлы активируются при каждом запуске интерпретатора Python, что означает, что даже попытка исследовать зараженную установку с помощью стандартных утилит приводит к выполнению вредоносной полезной нагрузки.
Похищенные данные шифруются с использованием ключа алгоритма симметричного шифрования, а затем дополнительно защищаются ключом алгоритма асимметричного шифрования перед отправкой на удаленный сервер. Один из внедренных файлов запускает загрузчик, который ежечасно проверяет указатель на стороннем ресурсе и загружает новый код Python для выполнения на зараженном узле. Несколько компаний, специализирующихся на безопасности приложений, обнаружили атаку в течение шести минут после публикации вредоносной версии.
Вредоносные пакеты были удалены из репозиториев, однако пользователям рекомендуется немедленно остановить затронутые развертывания и провести инспекцию сред без запуска интерпретатора Python. Зараженные системы следует изолировать и восстановить из чистых резервных копий, а все скомпрометированные секреты необходимо заменить. Удаление только директории пакета может оказаться недостаточным, так как файлы автозагрузки или активный загрузчик могут остаться в системе. Рекомендуемой версией для восстановления является релиз, предшествующий атаке.
Ранее проект уже сталкивался с нарушением безопасности в марте, когда группа злоумышленников опубликовала вредоносные версии после компрометации сканера уязвимостей, используемого в конвейере непрерывной интеграции и доставки. Статистические данные указывают на то, что использование действительных учетных данных значительно снижает эффективность систем предотвращения угроз.