Зловредный код с использованием невидимых символов Unicode атаковал 151 репозиторий GitHub и VS Code

Исследователи из компании Aikido Security сообщили в пятницу, что обнаружили как минимум 151 репозиторий на GitHub, скомпрометированный угрозой, отслеживаемой как Glassworm. Злоумышленники скрывают вредоносную нагрузку в символах Юникода, невидимых для человеческого глаза. Согласно блогу Aikido Security, заражение репозиториев произошло в период с 3 по 9 марта, а затем кампания распространилась на npm и маркетплейс расширений для VS Code.

Техника использует символы из области частного использования Юникода (диапазоны 0xFE00–0xFE0F и 0xE0100–0xE01EF), которые отображаются как пробелы нулевой ширины практически в любом редакторе кода и терминале. Для разработчика, проверяющего pull request, они выглядят как пустое место. Тем временем небольшой декодер извлекает скрытые байты и передаёт их функции eval(), запуская полную вредоносную нагрузку.

В предыдущих инцидентах с Glassworm эта нагрузка загружала и выполняла скрипт второй стадии, который использовал блокчейн Solana в качестве канала управления и контроля, способного красть токены, учётные данные и секреты.

Aikido предполагает, что обнаруженные 151 репозиторий — лишь часть от общего числа, поскольку многие уже были удалены до публикации исследования. Среди заметных целей — репозитории Wasmer, Reworm и anomalyco, организации, стоящей за OpenCode и SST. Тот же шаблон декодера также появился как минимум в двух пакетах npm и одном расширении для VS Code, загруженном 12 марта.

К сожалению, последняя кампания Glassworm сложнее для противодействия, чем предыдущие, из-за изощрённости внедрений. Вместо подозрительных коммитов они маскируются под обновления версий и небольшие рефакторинги, которые «стилистически соответствуют целевому проекту». В Aikido подозревают, что злоумышленники используют большие языковые модели для генерации этого прикрытия, поскольку вручную создавать 151 уникальное изменение кода в разных кодовых базах было бы нереально.

Glassworm активен как минимум с марта 2025 года, когда Aikido впервые обнаружила технику с невидимыми символами Юникода в вредоносных пакетах npm. К октябрю тот же актор переместился в реестр расширений Open VSX и репозитории GitHub. Более раннее расследование Koi Security показало, что группа использовала украденные учётные данные npm, GitHub и Git для дальнейшего распространения червя, а декодированные нагрузки развёртывали скрытые VNC-серверы и SOCKS-прокси для удалённого доступа. Инфраструктура на базе Solana затрудняет ликвидацию угрозы, поскольку транзакции в блокчейне нельзя изменить или удалить.

Aikido рекомендует тщательно проверять имена пакетов и зависимости перед их включением в проекты, а также использовать автоматизированные инструменты, специально сканирующие на наличие невидимых символов Юникода, поскольку визуальная проверка кода не защищает от этого типа атак.

Интересный факт: Техника использования невидимых символов для сокрытия данных известна как стеганография и существует уже много веков. В цифровую эпоху она эволюционировала от скрытия текста в изображениях до внедрения кода в, казалось бы, пустые строки программ. Подобные атаки подчёркивают важность не только визуального, но и автоматизированного анализа кода, особенно в эпоху повсеместного использования открытых репозиториев и зависимостей.

Подписаться на обновления Новости / Технологии
Зарегистрируйтесь на сайте, чтобы отключить рекламу

ℹ️ Помощь от ИИ

В статье есть ошибки или у вас есть вопрос? Попробуйте спросить нашего ИИ-помощника в комментариях и он постарается помочь!

⚠️ Важно:

• AI Rutab читает ваши комментарии и готов вам помочь.
• Просто задайте вопрос 👍
• ИИ может давать неточные ответы!
• ИИ не скажет «Я не знаю», но вместо этого может дать ошибочный ответ.
• Всегда проверяйте информацию и не полагайтесь на него как на единственный источник.
• К ИИ-помощнику можно обратиться по имени Rutab или Рутаб.


0 комментариев

Оставить комментарий


Все комментарии - Технологии