Бо́тнет Glassworm, который использовал доверенные инструменты разработчиков и обращался против сообщества открытого исходного кода, отравляя сотни репозиториев GitHub вредоносным кодом, был нейтрализован в результате скоординированной операции, проведенной компаниями CrowdStrike, Google и фондом Shadowserver Foundation. В ходе этой операции, проведенной днем 26 мая, были одновременно заблокированы все каналы командно-контрольные (C2) серверы Glassworm, что отрезало операторов от их армии ботов и остановило их способность доставлять новые вредоносные полезные нагрузки. «Эта нейтрализация имеет значение, выходящее за рамки самого ботнета», — заявила команда Counter Adversary Operations компании CrowdStrike в блоге, подробно описывающем операцию. «Glassworm ознаменовал собой значительный сдвиг в ландшафте угроз, который должен послужить тревожным звонком для каждой организации, выпускающей или потребляющей программное обеспечение. Злоумышленники нацеливаются не просто на продукты, они нацеливаются на разработчиков, которые их создают». На протяжении почти 18 месяцев операторы Glassworm систематически атаковали разработчиков, имеющих доступ к репозиториям исходного кода, облачным платформам, конвейерам непрерывной интеграции и развертывания/доставки (CI/DC) и реестрам пакетов. Такие лица являются «уникально ценными целями», — отметили в CrowdStrike, поскольку, скомпрометировав рабочую станцию одного разработчика открытого исходного кода, операторы Glassworm могли — при определенных обстоятельствах — организовать крупную компрометацию цепочки поставок, открыв доступ тысячам нижестоящих организаций-пользователей и подвергнув их риску компрометации, а также потенциальной кражи данных и вымогательства. Команда не связала с Glassworm какие-либо публично известные инциденты в цепочке поставок.
Масштабная кампания
Операторы ботнета вели обширную и многогранную кампанию, в рамках которой они публиковали в маркетплейсе OpenVSX троянизированные расширения VSCode, замаскированные под полезные инструменты, такие как трекеры времени или форматеры кода. Помимо редактора VSCode, эти расширения также были нацелены на такие инструменты, как Cursor, Positron, Windsurf и VSCodium. Они также использовали скомпрометированные пакеты npm и Python для внедрения вредоносного кода во время хуков после установки и сценариев настройки, а также — используя украденные учетные данные разработчиков, полученные в результате предыдущих заражений — смогли внедрить вредоносный код как минимум в 300 репозиториев GitHub. Операция была нацелена на среды Windows, Linux и MacOS, преследуя несколько конечных целей, включая кражу данных и учетных записей, а также доставку полнофункционального трояна удаленного доступа (RAT) на базе Node.js под названием GlasswormRAT. В своем посмертном анализе CrowdStrike подробно описала, как операторы Glassworm построили устойчивую четырехканальную архитектуру, разработанную для противодействия усилиям по нейтрализации. Они использовали блокчейн Solana для создания неизменяемого тайника с адресами C2-серверов, распределенную хеш-таблицу BitTorrent (DHT) для хранения конфигурационных данных по жестко закодированным публичным ключам, Google Calendar в качестве еще одного тайника для путей C2, закодированных в Base62, и традиционные C2-серверы, размещенные на коммерческих сервисах виртуальных частных серверов (VPS), для доставки полезной нагрузки. CrowdStrike заявила, что это сочетание блокчейна, одноранговых сетей и легитимных веб-сервисов в качестве разрешающих слоев позволило Glassworm представить динамический фасад для защиты своей инфраструктуры с помощью множества уровней защиты, и это означало, что сама нейтрализация должна была быть высокоточной и идеально выверенной по времени, поскольку вывод из строя всего одного канала позволил бы операторам быстро восстановиться.
Модель безопасности для открытого исходного кода
По мнению команды CrowdStrike, нейтрализация закладывает модель для подхода к угрозам цепочки поставок. Сложные, хорошо обеспеченные ресурсами и настойчивые операторы Glassworm постоянно развивали свои возможности и — оставшись без контроля — представляли постоянный риск для множества секторов. В заявлении говорится, что нейтрализация доказала возможность упреждающего сдерживания таких устойчивых злоумышленников с помощью точечных ударов, нацеленных на технические зависимости, которые они не могут легко заменить, а также ценность межсекторального сотрудничества. На момент написания все скомпрометированные машины Glassworm теперь отправляют сигналы на безвредный IP-адрес — 164.92.88[.]210 — который принадлежит CrowdStrike, что дает жертвам возможность обнаружить и устранить любую компрометацию путем проверки сетевых журналов и телеметрии конечных точек. Тем не менее, одного только обнаружения и устранения недостаточно. Поскольку в широком использовании находятся десятки экосистем пакетов, насчитывающих миллионы пакетов и ограниченные встроенные средства контроля безопасности, риск компрометации остается высоким. Вредоносные пакеты могут быть установлены практически мгновенно через обновления зависимостей, и трудно обнаружить, что что-то не так, пока ущерб уже нанесен. Более того, потенциальный радиус поражения инцидента огромен. Злоумышленники, такие как банда Glassworm, знают все это, и CrowdStrike заявила, что это доказывает, почему постоянные усилия по обеспечению безопасности цепочек поставок открытого исходного кода должны идти рука об руку с агрессивной позицией против тех, кто стремится проникнуть в них. «Пока среды разработчиков, конвейеры сборки и репозитории кода остаются недостаточно защищенными, каждая организация, потребляющая программное обеспечение, наследует риски всех, кто его производит», — написала команда. «Сообщество безопасности — поставщики, правоохранительные органы, операторы платформ и экосистема открытого исходного кода — должно реагировать с такой же решимостью. Нам нужно больше операций и скоординированных сдерживаний, подобных этому. CrowdStrike обязуется вести борьбу со злоумышленниками».”
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Alex Scroxton




