Злоумышленники, стоящие за затяжной кампанией Contagious Interview, начали расширять арсенал своих методов, переходя от традиционных уловок социальной инженерии к использованию Microsoft Visual Studio Code (VS Code) в качестве механизма для исполнения кода и обеспечения постоянства присутствия в системе.
Согласно новым данным от Jamf Threat Labs, хакеры внедряют вредоносную логику непосредственно в конфигурационные файлы проектов VS Code. Это позволяет коду автоматически запускаться, как только жертва открывает репозиторий и предоставляет ему «доверие».
Вместо того чтобы полагаться на автономное вредоносное ПО или цепочки эксплойтов, кампания теперь задействует доверенные рабочие процессы разработчиков. Жертв заманивают клонировать Git-репозитории, часто под видом тестовых заданий для собеседований или общих проектов. После открытия в VS Code, скомпрометированные конфигурационные файлы автоматически активируют команды, которые загружают и выполняют вредоносные JavaScript-полезные нагрузки.
Вместо прямой атаки на операционные системы или браузеры, хакеры, связанные с КНДР, внедряют себя внутрь этого инструмента разработки, используемого программистами ежедневно. Цель — снизить сопротивление, избежать подозрений и добиться скрытности в доверенных средах.
Компрометация VS Code для создания постоянного бэкдора
Новая техника основана на злоупотреблении файлами tasks.json в Visual Studio Code, которые предназначены для автоматизации действий при разработке, таких как сборка проектов и выполнение скриптов. В атаках, зафиксированных Jamf, определения этих задач модифицируются таким образом, чтобы включать скрытые команды, которые запускаются автоматически, как только пользователь открывает репозиторий и доверяет ему.
Эти команды инициируют процессы оболочки, которые извлекают обфусцированный JavaScript с удаленной инфраструктуры и передают его напрямую в Node.js для исполнения. Исследователи Jamf отметили, что полезные нагрузки часто размещаются на легитимных платформах, таких как Vercel, что дополнительно снижает вероятность раннего обнаружения или блокировки. После запуска JavaScript устанавливает связь с удаленным сервером командно-контрольной структуры (C2) и включает удаленное выполнение кода (RCE).
Важно отметить, что бэкдор не зависит от того, остается ли VS Code открытым. После первоначального запуска вредоносный код может сохранять свою активность независимо, то есть закрытие IDE не прекращает его функционирование. Это превращает действие, выглядящее как одноразовая задача разработки, в долгосрочную точку опоры в системе жертвы.
Социальная инженерия и злоупотребление доверием разработчиков
Эффективность кампании зависит не столько от технической эксплуатации, сколько от социальной инженерии. Жертв обманом заставляют взаимодействовать с незнакомыми репозиториями в рамках правдоподобных проектов. После открытия репозитория ключевую роль играет встроенный запрос на доверие в VS Code, и его одобрение запускает цепочку выполнения вредоносной задачи без дополнительных предупреждений.
Исследователи Jamf также обнаружили в этом векторе атаки избыточность. В некоторых случаях злоумышленники включали резервные механизмы, например, словари, содержащие внедренный JavaScript, что гарантировало выполнение кода, даже если первичная доставка через задачи не удавалась. Дополнительные полезные нагрузки были замечены при загрузке через несколько минут после первоначального запуска, что указывает на многоуровневое закрепление и постоянный контроль.
Исследователи поделились индикаторами компрометации (IoC), связанными с кампанией, включая вредоносную инфраструктуру и артефакты, обнаруженные в ходе расследования, для содействия обнаружению. Кроме того, они рекомендовали проявлять осторожность при работе с незнакомыми репозиториями, особенно полученными через третьи стороны или в рамках собеседований. «Прежде чем помечать репозиторий как доверенный в Visual Studio Code, важно просмотреть его содержимое», — добавили они в записи в блоге. «Аналогичным образом, команду ‘npm install’ следует запускать только для проектов, прошедших проверку, уделяя особое внимание файлам package.json, установочным скриптам и файлам конфигурации задач, чтобы избежать непреднамеренного выполнения вредоносного кода».
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Shweta Sharma




