База даних загроз Шкідливе програмне забезпечення Шкідливе програмне забезпечення GlassWorm

Шкідливе програмне забезпечення GlassWorm

Нова хвиля кампанії шкідливого програмного забезпечення GlassWorm активно націлена на ланцюги поставок програмного забезпечення, використовуючи викрадені токени GitHub для впровадження шкідливого коду в сотні репозиторіїв. Ця операція в основному зосереджена на проектах на базі Python, включаючи додатки Django, дослідницький код машинного навчання, панелі інструментів Streamlit та пакети PyPI.

Вектор атаки оманливо простий, але дуже ефективний: завуальоване шкідливе програмне забезпечення додається до часто виконуваних файлів, таких як setup.py, main.py та app.py. Будь-який розробник, який встановлює залежності через pip install або виконує клонований код зі скомпрометованого репозиторію, несвідомо активує шкідливе корисне навантаження.

Тихі захоплення репозиторію: техніка ForceMemo

Ця еволюція кампанії, яка тепер називається ForceMemo, запроваджує прихований метод компрометації репозиторіїв. Зловмисники отримують доступ до облікових записів розробників та маніпулюють репозиторіями, не залишаючи звичайних слідів.

Перебазуючи легітимні коміти зі шкідливим кодом та примусово переміщуючи їх до гілки за замовчуванням, зловмисники зберігають оригінальні метадані коміта, включаючи повідомлення, автора та позначку часу, ефективно маскуючи вторгнення. Такий підхід усуває видимі індикатори, такі як запити на зняття даних або підозрілі історії комітів, що значно ускладнює виявлення.

Ланцюг виконання атаки: від крадіжки облікових даних до доставки корисного навантаження

Кампанія ForceMemo дотримується структурованого та багатоетапного процесу вторгнення:

  • Середовища розробників спочатку піддаються компрометації через шкідливі розширення Visual Studio Code та Cursor, що містять компоненти GlassWorm, призначені для збору конфіденційних облікових даних, включаючи токени GitHub.
  • Викрадені облікові дані потім використовуються для вставки обфускованих корисних навантажень у кодуванні Base64 у файли Python у всіх репозиторіях, пов'язаних зі скомпрометованим обліковим записом.
  • Вбудоване шкідливе програмне забезпечення виконує перевірки середовища, зокрема уникаючи виконання на системах, налаштованих з російською локалізацією. Потім воно запитує блокчейн-гаманець Solana для динамічного отримання URL-адреси доставки корисного навантаження.
  • Завантажуються додаткові корисні навантаження, включаючи зашифрований JavaScript, призначений для крадіжки криптовалюти та витоку даних.

Командування та управління на основі блокчейну: стійка інфраструктура

Визначальною характеристикою цієї кампанії є її залежність від блокчейну Solana як механізму командування та управління (C2). Замість традиційних серверів зловмисники зберігають URL-адреси корисного навантаження в полях транзакційних меморандумів, прив'язаних до певних адрес гаманців.

Аналіз показує, що активність, пов'язана з основним гаманцем, розпочалася ще 27 листопада 2025 року, за кілька місяців до того, як було виявлено компрометацію репозиторію. Гаманець обробив десятки транзакцій, а місцезнаходження корисного навантаження оновлювалося часто, іноді кілька разів на день. Такий децентралізований підхід підвищує стійкість та ускладнює зусилля з видалення.

Розширення поверхні атаки: npm та міжекосистемні інфекції

Кампанія поширилася за межі екосистем Python на ланцюги поставок JavaScript. Два npm-пакети React Native, react-native-international-phone-number (версія 0.11.8) та react-native-country-select (версія 0.3.91), були тимчасово скомпрометовані та розповсюджені разом із вбудованим шкідливим програмним забезпеченням.

Ці шкідливі версії впроваджували передвстановлення, виконуючи обфускований JavaScript, який ініціює аналогічний ланцюг зараження. Шкідливе програмне забезпечення знову уникає російських систем, отримує інструкції корисного навантаження через гаманець Solana та розгортає загрози, специфічні для платформи.

Виконання відбувається повністю в пам'яті за допомогою методів середовища виконання, таких як eval() або «пісочниця» Node.js, залишаючи мінімальні артефакти судово-медичної експертизи. Крім того, механізм збереження запобігає повторному зараженню протягом 48-годинного вікна, зберігаючи позначку часу локально.

Розширена тактика ухилення та розподілу

Нещодавні версії GlassWorm демонструють підвищену складність у доставці та приховуванні. Використовуючи механізми extensionPack та extensionDependencies, зловмисники транзитивно поширюють шкідливі корисні навантаження через довірені екосистеми розширень.

Попередні кампанії, пов'язані з тим самим зловмисником, скомпрометували понад 151 репозиторій GitHub, використовуючи невидимі символи Unicode для приховування шкідливого коду. Незважаючи на різні стратегії обфускації та доставки, всі кампанії послідовно покладаються на одну й ту саму інфраструктуру на базі Solana, що підтверджує єдину операційну структуру.

Шкідливі розширення IDE: націлені на середовища розробників

Кампанія також проникла в інструменти розробки через шахрайське розширення під назвою reditorsupporter.r-vscode-2.8.8-universal, спрямоване на Windsurf IDE. Замасковане під плагін підтримки мови R, воно розгортає програму для крадіжки інформації на основі Node.js.

Після встановлення розширення отримує зашифровані корисні навантаження з транзакцій блокчейну, виконує їх у пам'яті та розгортає скомпільовані компоненти для вилучення конфіденційних даних з браузерів на базі Chromium. Збереження досягається за допомогою запланованих завдань та модифікацій реєстру Windows, що забезпечує виконання під час запуску системи.

Шкідливе програмне забезпечення цілеспрямовано націлене на середовища розробників, виключаючи російські системи, що відображає поведінку, що спостерігається в інших варіантах GlassWorm.

Показники масштабу та впливу

Аналіз безпеки показує, що кампанія скомпрометувала значну частину екосистеми відкритого коду, вплинувши на понад 433 проекти на різних платформах. До них належать репозиторії GitHub (Python та JavaScript), розширення VS Code та бібліотеки npm.

Усі шляхи зараження зрештою сходяться до розгортання програми-викрадача інформації на основі JavaScript, що підкреслює послідовну кінцеву мету збору облікових даних та викрадання даних.

  • Понад 433 підтверджених скомпрометованих проектів та пакетів
  • Різні вектори доставки, включаючи розширення GitHub, npm та IDE
  • Послідовне використання інфраструктури блокчейну Solana для доставки корисного навантаження.
  • Неодноразове виключення російських систем у всіх варіантах

Стратегічна оцінка: нова ера атак на ланцюги поставок

Кампанія ForceMemo являє собою значну ескалацію загроз для ланцюга постачання програмного забезпечення. Її поєднання прихованого маніпулювання історією Git, інфраструктури C2 на основі блокчейну та кросплатформних векторів зараження демонструє високий рівень операційної зрілості.

Повторне використання інфраструктури поряд із механізмами доставки, що розвиваються, вказує на адаптивного противника, здатного масштабувати атаки, зберігаючи при цьому стійкість та ухилення. Цей перехід від ізольованих компрометацій до скоординованих вторгнень у багато екосистем підкреслює зростаючий ризик, з яким стикаються сучасні середовища розробки та спільноти відкритого коду.

В тренді

Найбільше переглянуті

Завантаження...