В экосистеме Python вновь атака через supply chain — на этот раз через популярный пакет elementary-data / Elementary CLI, который используют инженеры данных в связке с dbt. Атака прошла через официальный релиз, без фейковых пакетов и подмен имён.

Злоумышленник внедрил вредоносный код в версию 0.23.3, которая попала в PyPI и Docker-образы через легитимный пайплайн сборки. Команда проекта подтвердила инцидент и выпустила чистую версию 0.23.4. Вредоносная версия прожила около 12 часов. Внутри пакета находился инфостилер, замаскированный под нормальную функциональность. Код был закодирован в base64 и запускался при старте CLI. Вредоносный пакет также скомпрометировал учетные записи сопровождающих проектов на GitHub.
Цепочка выглядела так:
-
атакующий отправил pull request
-
использовал уязвимость типа script injection в GitHub Actions
-
получил возможность подписать релиз через GITHUB_TOKEN
-
опубликовал заражённую версию как официальный релиз
В итоге вредоносный код попал в доверенный канал доставки — PyPI и контейнеры.
Это типичный инфостилер, но с фокусом на разработчиков, поэтому и интерес был к специфичным данным: SSH-ключам, токенам Git и API, облачным кредам (AWS, GCP и т.д.), данным из .env, криптокошелькам и системной информации.
Пакет используется в data-инфраструктуре и имеет более 1 млн загрузок в месяц. Это значит, что в зоне риска все, кто установил 0.23.3.
Разработчики проекта дали жёсткую рекомендацию: считать систему скомпрометированной, срочно ротировать все секреты, проверить доступы в облаках и удалить уязвимую версию
Такие атаки стали системными. В марте 2026 уже взломали LiteLLM — пакет, который проксирует API LLM, с потенциальным охватом до сотен тысяч систем. Отдельные кампании через PyPI регулярно воруют токены и ключи через фейковые или заражённые пакеты. Главная точка атаки сейчас — цепочка поставки и автоматизация сборки.
Есть новость? Станьте автором.
Мы сотрудничаем с независимыми исследователями и специалистами по кибербезопасности. Отправьте нам новость или предложите статью на рассмотрение редакции.