← Все новости

Атака на цепочку поставок LiteLLM: вредоносная версия 1.107.0 попала в PyPI и DockerLiteLLM supply-chain attack: malicious 1.107.0 published to PyPI and Docker

Через утёкший ещё в мае мастер-ключ злоумышленники захватили релизный пайплайн популярного AI-шлюза LiteLLM и выпустили версию с инфостилером и бэкдором. Нагрузка срабатывает при любом запуске Python, даже если LiteLLM не импортируется.Using a master key leaked back in May, attackers hijacked the release pipeline of the popular LiteLLM AI gateway and shipped a version with an infostealer and backdoor. The payload runs on every Python start, even if LiteLLM is never imported.

История началась 27 мая, когда мастер-ключ попал в публичный репозиторий LiteLLM-Labs/lite-harness и так и не был отозван. 10 октября атакующий использовал его, чтобы получить OAuth-токен владельца организации на GitHub, а 21 октября обошёл защиту веток и перенаправил релизы на похожий репозиторий «Berri-AI/litellm».

Что было опубликовано

  • PyPI: litellm 1.107.0 — опубликован около 11:39 UTC 21 октября, помещён в карантин в 13:23 UTC.
  • Docker Hub и GHCR: теги v1.107.0, latest, main-latest, main-stable с 11:46 UTC. Позже их удалили или перенаправили.

Нагрузка крадёт учётные данные облаков, SSH- и Git-ключи, данные браузеров и токены реестров пакетов, а на Unix-системах ставит бэкдор, который раз в час подтягивает новый код. Данные уходят на litellm[.]dev. Инцидент раскрыт 24 октября; CVE не присвоен.

Что делать

  • Проверить lock-файлы, образы и кэши на наличие 1.107.0 и указанных тегов, скачанных 21 октября.
  • Если версия ставилась — считать хост скомпрометированным: удалить не только пакет, но и компоненты автозапуска.
  • Ротировать все секреты, доступные с этого хоста: облачные ключи, SSH, токены GitHub и реестров.
  • На будущее — закреплять версии и digest образов, а не тянуть latest.

It began on May 27, when a master key was committed to the public LiteLLM-Labs/lite-harness repo and never revoked. On Oct 10 the attacker used it to obtain an org-owner GitHub OAuth token, and on Oct 21 bypassed branch protection and pointed releases at a lookalike repo, “Berri-AI/litellm”.

What was published

  • PyPI: litellm 1.107.0 — published around 11:39 UTC on Oct 21, quarantined at 13:23 UTC.
  • Docker Hub and GHCR: tags v1.107.0, latest, main-latest, main-stable from 11:46 UTC. These were later removed or repointed.

The payload steals cloud credentials, SSH and Git keys, browser data and package-registry tokens, and installs a Unix backdoor that fetches new code hourly. Data is sent to litellm[.]dev. The incident was disclosed on Oct 24; no CVE was assigned.

What to do

  • Check lock files, images and caches for 1.107.0 and the listed tags pulled on Oct 21.
  • If it was installed, treat the host as compromised: remove not just the package but also the startup components.
  • Rotate every secret reachable from that host: cloud keys, SSH, GitHub and registry tokens.
  • Going forward, pin versions and image digests instead of pulling latest.

Источники