🐍 Как один запуск Python превращает библиотеку LiteLLM 1.107.0 в 🐎троянец-стилер и жи...
🐍 Как один запуск Python превращает библиотеку LiteLLM 1.107.0 в 🐎троянец-стилер и живучий бэкдор 21 октября 2026 года ИБ-исследователи из команды Upwind и автор проекта OpenSourceMalware Пол Маккарти раскрыли атаку на цепочку поставок через заражённый релиз LiteLLM 1.107.0 в PyPI (а по данным разработчиков проекта, компрометация затронула также образы в Docker Hub и GHCR). Во все семь wheel-пакетов злоумышленники встроили файлы cook.pth, cook.py и sitecustomize.py, которые перехватывают инициализацию интерпретатора и автоматически исполняют вредоносный код при штатном запуске Python в заражённом окружении даже без импорта самой библиотеки. Закодированные внутри варианты троянца-стилера privcollect собирают пароли и куки браузеров, ключи SSH, GPG и TLS, переменные окружения, облачные секреты, учётные данные из таблиц базы самой LiteLLM и конфигурации ИИ-инструментов (включая Claude, Cursor и Gemini), после чего шифруют данные алгоритмами AES-256-CBC и RSA-OAEP, упаковывают в архив и выгружают его по HTTP на домен-двойник hxxp://www[.]litellm[.]dev/healthcheck с предполагаемой панелью оператора на HTTPS-версии узла. Параллельно скрипт sitecustomize.py запускает в Unix-системах фоновый процесс, который каждый час запрашивает адрес сервера из файла domain.txt в репозитории на GitHub для скачивания и выполнения Python-кода второго этапа по пути /codepy. Согласно обновлённому вечером 21 октября (в 23:30 мск) отчёту разработчиков LiteLLM, атакующие похитили OAuth-токены GitHub CLI трёх сотрудников (предположительно попавшие в журналы доступного извне внутреннего экземпляра LiteLLM из ответов Claude Code), перенаправили конвейер сборки на подставной репозиторий Berri-AI/litellm и удалили часть логов GitHub Actions. Поскольку любой обычный запуск Python или pip заново активирует ВПО, для защиты необходимо удалить вредоносные файлы напрямую через оболочку ОС, завершить фоновый процесс, пересобрать среды с безопасной версией 1.106.2 и сменить все секреты, тогда как первоначальный способ проникновения во внутренний экземпляр LiteLLM и стоящая за атакой группировка пока остаются неизвестными. ✋ @Russian_OSINT