GitHub підтвердив факт атаки на ланцюг постачання, унаслідок якої було скомпрометовано приблизно 3800 внутрішніх репозиторіїв компанії. Вектором проникнення стало шкідливе розширення для Visual Studio Code, встановлене на робочу станцію одного із співробітників. Згідно з офіційною заявою компанії, наразі ознак компрометації користувацьких даних поза межами уражених репозиторіїв не виявлено, однак інцидент порушує серйозні питання щодо безпеки екосистеми розширень для редакторів коду, якими щодня користуються мільйони розробників у всьому світі.
Хронологія та механізм атаки
Атаку було розпочато з встановлення шкідливого розширення з маркетплейсу VS Code на пристрій розробника GitHub. Назву розширення компанія не розкриває, однак відомо, що його вже видалено з маркетплейсу. Скомпрометований пристрій було ізольовано в рамках реагування на інцидент.
Ключовий технічний аспект цієї атаки — рівень привілеїв, якими володіють розширення VS Code. Як зазначають дослідники з компанії Aikido, розширення отримують практично повний доступ до даних на машині розробника, зокрема до:
- SSH-ключів та токенів доступу до хмарних сервісів
- Облікових даних для систем контролю версій
- Змінних оточення та конфігураційних файлів
- Інших секретів, що зберігаються локально
Саме такий широкий доступ дозволив зловмисникам через єдину скомпрометовану робочу станцію дістатися приблизно до 3800 внутрішніх репозиторіїв GitHub. Компанія підтвердила, що ця кількість «загалом відповідає» результатам внутрішнього розслідування.
Дії зловмисників і заяви про продаж даних
За даними BleepingComputer, на форумі Breached з’явилися заяви про крадіжку вихідного коду GitHub та близько 4000 приватних репозиторіїв. Зловмисники, імовірно, виставили дані на продаж з мінімальною ціною 50 000 доларів у криптовалюті, пригрозивши безплатною публікацією дампа в разі відсутності покупця. Варто наголосити, що ці заяви надходять безпосередньо від імовірних атакувальників і не отримали незалежного підтвердження.
Контекст загрози
Робочі станції розробників, на думку дослідників Aikido, перетворилися на одну з пріоритетних цілей для атак на ланцюги постачання. Це логічно: на таких машинах зосереджено ключі доступу до інфраструктури, репозиторіїв, хмарних середовищ і систем розгортання. Компрометація одного розробника з достатніми привілеями може відкрити доступ до значної частини внутрішньої інфраструктури організації — що й сталося в цьому випадку.
Імовірно, атаки із використанням черва Shai-Hulud, якого пов’язують із цією ж групою, раніше зачіпали співробітників OpenAI, хоча ця інформація ґрунтується на даних дослідницького блогу й потребує додаткового підтвердження.
Заходи реагування GitHub
GitHub повідомив про такі дії з локалізації інциденту:
- Видалення шкідливого розширення з маркетплейсу VS Code
- Ізоляція скомпрометованого пристрою розробника
- Ротація критично важливих секретів та облікових даних, починаючи з найбільш пріоритетних
- Проведення внутрішнього розслідування для визначення повного масштабу компрометації
Компанія заявляє, що доступ зловмисників було обмежено внутрішніми репозиторіями і він не зачепив користувацькі дані, що зберігаються поза ними. Втім, ця оцінка відображає поточний статус розслідування й може змінитися у разі виявлення нових свідчень.
Рекомендації для організацій
Цей інцидент демонструє конкретний і відтворюваний вектор атаки, від якого необхідно захищатися:
- Аудит розширень VS Code: проведіть інвентаризацію встановлених розширень на робочих станціях розробників. Упровадьте політику білих списків дозволених розширень через налаштування організації
- Обмеження привілеїв: мінімізуйте набір секретів, доступних на робочих станціях. Використовуйте короткострокові токени замість довготривалих ключів доступу
- Ротація секретів: якщо ваші проєкти залежать від внутрішніх пакетів або репозиторіїв GitHub — проведіть превентивну ротацію токенів доступу та SSH-ключів
- Сегментація доступу: переконайтеся, що компрометація однієї робочої станції не надає доступу до тисяч репозиторіїв. Застосовуйте принцип найменших привілеїв до облікових записів розробників
- Моніторинг: налаштуйте сповіщення про нетипові патерни доступу до репозиторіїв — масове клонування, доступ із незвичних локацій, використання раніше неактивних токенів
Інцидент з GitHub — практична демонстрація того, що екосистема розширень для редакторів коду є повноцінним вектором атаки на ланцюг постачання. Організаціям, які використовують VS Code у корпоративному середовищі, слід негайно провести аудит встановлених розширень, запровадити політику їх контрольованого встановлення та переглянути обсяг секретів, доступних на робочих станціях розробників, — саме надмірний доступ з одного пристрою перетворив одиничну компрометацію на інцидент масштабу 3800 репозиторіїв.