Зламано випуск LiteLLM
21 жовтня 2026 року скомпрометований конвеєр випуску LiteLLM, відкритого ШІ-шлюзу й бібліотеки Python, опублікував шкідливу версію 1.107.0: колеса на PyPI були доступні з 11:39 до 13:23 UTC, а чотири теги образів Docker були уражені до 14:20 UTC. За словами LiteLLM, пакет містив скомпільоване шкідливе ПЗ, що краде облікові дані й завантажує інструменти віддаленого виконання коду. Свій опис вторгнення проєкт переписав через два дні: перший допис звинувачував токени GitHub, що потрапили в логи сесій Claude Code, а остаточний виводить їх із ключа, який 27 травня потрапив у публічний репозиторій і не був відкликаний.
Чому це важливо
Пакет, що стоїть між застосунками й постачальниками моделей і тому тримає їхні ключі API, перетворили на викрадача облікових даних через власний процес випуску, а не через код. Важливо, як змінився опис: перший допис називав ваду в поводженні Claude Code з токенами, канонічний запис Claude Code не згадує зовсім, а називає витеклий ключ, токен власника без обмежень і послаблену на тиждень перевірку випуску. Висновок остаточного запису практичний: непрочитані ключі й токени без меж, а не ШІ-інструмент.
Випуск. За LiteLLM, шкідливий litellm==1.107.0 (сім коліс) завантажено на PyPI між 11:39:51 і 11:40:13 UTC і знято до 13:23; теги Docker Hub v1.107.0, latest, main-latest і main-stable вказували на скомпрометований образ з 11:46:56 до 14:20 UTC; теги GHCR були недоступні до 13:51. Офіційний тег джерела v1.107.0 на GitHub не містив шкідливих файлів: артефакти зібрано з репозиторію зловмисника, схожого за назвою, Berri-AI/litellm. Корпоративні клієнти приватного реєстру уражені не були. LiteLLM порадила закріпити версію 1.106.2 або ранішу. Публічне звернення на GitHub (#47826), відкрите стороннім о 12:06 UTC, описує викрадач облікових даних cook.pth і завантажувач sitecustomize. Два описи причини. Перший допис (21 жовтня, оновлено 20:30 UTC) каже, що Claude Code іноді вбудовує токен OAuth GitHub CLI користувача у тіло відповіді, а там, де тіла відповідей логуються, токени потрапляли в логи LiteLLM; він припускав, що зловмисник дістався внутрішнього розгортання LiteLLM. Банер від 23 жовтня каже, що частина припущень у ньому виявилась неточною чи неповною, і веде до канонічного запису. Цей запис (23 жовтня) каже: 27 травня 2026 року в публічний репозиторій потрапив файл налаштувань із головним ключем LiteLLM Agent Platform, внутрішнього альфа-сервісу; ключ визнали таким, що треба відкликати, але не відкликали; 10 жовтня зловмисник скористався ним, щоб прочитати API платформи, а той віддав токен GitHub CLI власника організації; цим токеном зловмисник викрав токени двох мейнтейнерів через одноразові робочі процеси CI (10 жовтня), а 21 жовтня вимкнув захист гілок, спрямував процес випуску на репозиторій-двійник, схвалив виробничу перевірку токеном другого мейнтейнера, видалив записи запусків третім і примусово очистив історію. Запис пише, що схвалення випусків було послаблено раніше цього тижня. Слів «Claude» і «Claude Code» у ньому немає. Чого запис не стверджує. Скільки установок запустило шкідливу версію, не сказано. Обидва описи — власні, LiteLLM. Команда Socket Threat Research у власному дописі від 23 жовтня, на який посилається остаточний опис, повідомляє про два робочі процеси, що крали секрети в репозиторії 10 і 12 жовтня, за одинадцять днів до випуску, і пише, що розслідування LiteLLM підтверджує активність 10 жовтня; допис Socket не описує сам випуск і не називає кількості установок.