Специалисты по кибербезопасности из компании Socket обнаружили масштабную атаку северокорейских хакеров на экосистему npm. Злоумышленники разместили 67 вредоносных пакетов, которые в общей сложности были загружены более 17 000 раз. Основным инструментом атаки стал новый загрузчик малвари под названием XORIndex, предназначенный для компрометации систем разработчиков программного обеспечения.
Кампания Contagious Interview: долгосрочная стратегия атак на разработчиков
Обнаруженная активность является частью продолжающейся вредоносной кампании Contagious Interview, которая активна с декабря 2022 года. Данная операция представляет собой изощренную схему социальной инженерии, где хакеры выдают себя за рекрутеров и предлагают разработчикам фальшивые вакансии. В процессе «собеседования» жертвы получают задания, которые требуют установки вредоносных пакетов.
Текущая волна атак стала продолжением вредоносной активности, наблюдаемой с апреля 2024 года. В предыдущем месяце те же злоумышленники уже внедрили в npm 35 пакетов, заражавших устройства разработчиков инфостилерами и бэкдорами.
Технические особенности загрузчика XORIndex
Вредоносные пакеты мимикрировали под названия легитимных проектов и библиотек, что значительно усложняло их обнаружение. После установки любого из этих пакетов автоматически запускался скрипт postinstall, который активировал XORIndex — новый инструмент, используемый параллельно с ранее известным загрузчиком HexEval Loader.
Принцип работы XORIndex включает несколько этапов:
Сбор информации о жертве
Загрузчик собирает подробные данные о хост-системе для составления профиля жертвы. Эта информация включает технические характеристики устройства, операционную систему, установленное программное обеспечение и другие параметры, которые могут быть полезны для дальнейших атак.
Связь с командным сервером
Собранные данные передаются на жестко закодированный адрес управляющего сервера, размещенный в инфраструктуре компании Vercel. Использование легитимного облачного провайдера позволяет злоумышленникам маскировать свою активность и избегать блокировки со стороны систем безопасности.
Полезные нагрузки и конечные цели атак
В ответ на переданную информацию сервер предоставляет одну или несколько полезных нагрузок JavaScript, которые выполняются на системе жертвы с помощью функции eval(). Обычно эти нагрузки представляют собой бэкдоры BeaverTail и InvisibleFerret, которые давно ассоциируются с северокорейскими хакерскими группировками.
Установленная малварь предоставляет операторам широкие возможности:
• Удаленный доступ к взломанным машинам
• Эксфильтрацию конфиденциальных данных
• Доставку дополнительных вредоносных компонентов
• Кражу криптовалютных активов
• Получение информации для атак на компании-работодатели
Адаптивная тактика и уклонение от обнаружения
Исследователи отмечают, что северокорейские хакеры демонстрируют высокую адаптивность, используя как проверенные, так и новые инструменты с тонкими модификациями. Каждый раз, когда npm удаляет обнаруженные вредоносные пакеты, злоумышленники возвращаются с новыми учетными записями и именами пакетов.
Такой подход позволяет им поддерживать непрерывность атак и постоянно обходить системы обнаружения. Эксперты предупреждают, что «защитникам следует ожидать появления новых итераций этих загрузчиков в свежих пакетах, часто с небольшими изменениями, которые позволяют обойти обнаружение».
Данный инцидент подчеркивает критическую важность проверки безопасности пакетов перед их установкой и необходимость постоянного мониторинга экосистемы npm. Разработчикам рекомендуется использовать инструменты сканирования зависимостей, регулярно обновлять системы безопасности и проявлять особую осторожность при получении предложений о работе от неизвестных источников. Только комплексный подход к безопасности может обеспечить эффективную защиту от подобных изощренных атак.