Как получили доступ
Атакующие действовали с украденными учётными данными разработчиков. Доступ распространялся и на чужие проекты, где у этих разработчиков были права записи. Это не доказательство взлома самой платформы GitHub. Aikido Security ↗
Через украденные доступы разработчиков в проекты внедряли похититель ключей. Тысячи репозиториев затронуты; последствия могут дойти до облачных сервисов и пользователей пакетов.
Больше всего репозиториев затронула вторая версия. Затем пришла новая волна — в том числе к уже пострадавшим.
Исправленные ошибки и дополнительные способы запуска: код попадал также в скрипты установки проектов.
репозиториев из первых волн атаковали повторно версией v5
Один репозиторий мог попасть в несколько столбцов. Числа не складываются. Тестовые версии v3 и v4 не показаны.
Endor Labs · срез 13.11, 00:35 МСК ↗Открыть график картинкой ↗Aikido насчитала 61 764 репозитория с проверочными запросами от скомпрометированных аккаунтов. Это цели атаки, а не число успешных заражений. В сводке Aikido указаны 1 835 запусков вредоносного кода, ниже в том же тексте — минимум 1 806. Расхождение источник не объясняет; используем осторожную нижнюю оценку. Данные Aikido ↗
Endor Labs отдельно перечисляет 8 926 репозиториев со следами внедрения кода: срез 12 ноября, 21:35 UTC — 13 ноября, 00:35 МСК. Внедрение не означает, что код выполнился. Эти показатели нельзя складывать или превращать в процент заражения. Перечень и время среза ↗
Украденный токен даёт права разработчика.
Изменение документации проверяет доступ к проекту.
Сборка запускает код с доступом к секретам.
Код откатывают, журнал запуска удаляют.
Атакующие действовали с украденными учётными данными разработчиков. Доступ распространялся и на чужие проекты, где у этих разработчиков были права записи. Это не доказательство взлома самой платформы GitHub. Aikido Security ↗
Целью были секреты автоматических сборок: ключи облаков, токены публикации пакетов и доступы к другим системам. Поэтому последствия могут выйти за пределы одного репозитория. Endor Labs ↗
В запросе на исправление WebdriverIO предложили немедленно остановить запущенные проверки и релизы и заменить доступы. Одной отмены вредоносного коммита недостаточно.
Обсуждение на GitHub ↗Участники подняли вопрос о версиях, опубликованных после появления чужого кода. Это запрос на проверку, а не доказательство заражения всех релизов.
Обсуждение на GitHub ↗Участник WebdriverIO сообщил о действиях владельца организации по локализации инцидентов. Этот ответ касается проекта, а не завершения всей кампании wfx.
Обсуждение на GitHub ↗11.11–13.11 · Проверено 13.11 · 20:56 МСК. Отдельные ответы разработчиков; общей оценки настроений по ним нет.
Атакующие использовали украденные доступы разработчиков, чтобы внедрять код для кражи секретов сборок и облачных ключей. Это кампания против аккаунтов и проектов, а не подтверждённый взлом самой платформы GitHub. Aikido сообщает о 61 764 репозиториях с проверочными запросами. Endor Labs перечисляет 8 926 репозиториев со следами внедрения кода на 13 ноября, 00:35 МСК. Минимум 1 806 запусков подтверждаются данными исследователей; в сводке Aikido также указано 1 835, без объяснения расхождения. Цели атаки, внедрение и выполнение — разные показатели. Изменения часто быстро откатывали, а журналы запусков удаляли. Полностью стереть следы не удалось: оставались коммиты и пропуски номеров запусков. Наличие автоматизации не доказывает участие ИИ. Для пострадавших проектов риск касается не только кода, но и доступов к связанным сервисам.
Aikido Security и StepSecurity раскрыли механизм кражи секретов сборок и сокрытия следов.
Исследователи датируют первые проверочные запросы 10 ноября. Атакующие использовали украденные доступы к аккаунтам разработчиков.
StepSecurity описывает быстрый откат вредоносного изменения и удаление запуска GitHub Actions вместе с журналом. Следы сохранялись в коммитах и пропусках номеров запусков. Были исключения: в Nextcloud изменение отменил разработчик через 27 минут. Разбор StepSecurity ↗
Отдельный способ запуска — скрипт, срабатывающий при установке проекта. В WebdriverIO участники обнаружили такие изменения и подготовили их отмену. Сам факт атаки на репозиторий ещё не доказывает заражение всех опубликованных версий пакета. Обсуждение исправления ↗
В проверенных разборах участие ИИ в организации этой атаки не установлено. Массовое выполнение одинаковых действий объясняется автоматизацией; приписывать его ИИ без доказательств нельзя.
Сегодня новых подтверждённых сведений пока нет.
Это кампания против аккаунтов и проектов на GitHub, а не подтверждённый взлом инфраструктуры GitHub. Числа относятся к разным стадиям атаки и срезам исследователей; общей доли пострадавших нет. Заявление о завершении кампании в использованных материалах не найдено. Публичное обсуждение WebdriverIO подтверждает конкретный случай, но не настроение всех разработчиков.