ADEX отследил живое заражение macOS от одного странного процесса до более масштабной угрозы цепочки поставок, распространяющейся через инструменты разработчиков Apple. В центре дела оказался XCSSET —ADEX отследил живое заражение macOS от одного странного процесса до более масштабной угрозы цепочки поставок, распространяющейся через инструменты разработчиков Apple. В центре дела оказался XCSSET —

Что ADEX обнаружил внутри активной атаки XCSSET на инструменты разработчика Apple

2026/06/01 06:12
4м. чтение
Для обратной связи или замечаний по поводу данного контента, свяжитесь с нами по адресу crypto.news@mexc.com

ADEX отследил активное заражение macOS — от одного подозрительного процесса до масштабной угрозы цепочки поставок, распространяющейся через инструменты разработчиков Apple. В центре расследования оказался XCSSET — семейство вредоносных программ, скрывающихся внутри файлов проектов Xcode, а не в готовых приложениях: оно ждёт, пока разработчик соберёт проект и активирует полезную нагрузку.

Улика, с которой началось расследование

What ADEX Found Inside an Active XCSSET Attack on Apple Developer Tools

Первый признак был незначительным, но странным: повторная активность osascript, запускавшегося из /tmp/jl. AppleScript сам по себе — обычный инструмент macOS, однако местоположение имело значение. Каталог /tmp — это временное хранилище, а не место, откуда чистое программное обеспечение должно постоянно перезапускать короткоживущие скрипты с объёмными закодированными аргументами.

ADEX скопировал файл до его исчезновения. После захвата выяснилось, что /tmp/jl является скомпилированным AppleScript. Его содержимое было упаковано в несколько слоёв кодировки base64 — распространённый способ, которым вредоносные программы скрывают свои следующие действия от быстрого анализа.

После расшифровки образец раскрыл shell-скрипт, собирающий системные данные. Он собирал имя пользователя, языковые настройки, версию macOS, тип процессора, статус защиты целостности системы (System Integrity Protection), серийный номер Mac и данные, связанные с Chrome. Информация отправлялась на riggletoy.ru — домен управления и контроля, который, по данным ADEX, в то время не фигурировал в публичных фидах угроз. Второй домен, netcdndev.in — обнаруженный позднее в ходе изучения GitHub — также отсутствовал в каком-либо публичном списке индикаторов компрометации. 

Файл сборки стал точкой входа

Опасность XCSSET кроется в его укрытии. Проекты Xcode содержат файлы project.pbxproj, которые указывают среде разработки Apple, что выполнять в процессе сборки. Вредоносный скрипт, помещённый туда, может запускаться от имени собственной учётной записи разработчика при компиляции проекта.

Это делает атаку незаметной. Не требуется никаких странных установщиков. Не появляется никаких очевидных иконок приложений. Разработчик может склонировать проект с GitHub, открыть его в Xcode, нажать «Собрать» — и дать вредоносной программе тот момент, который ей нужен.

Затем заражение ищет другие проекты Xcode на машине. ADEX обнаружил более 20 изменённых проектов на заражённой рабочей станции — все они были изменены в течение одной минуты. Это указывало на автоматизированное сканирование, а не на ручное редактирование. Одна заражённая рабочая станция уже стала плацдармом для дальнейшего распространения.

Персистентность оказалась главной проблемой

Очистка одного проекта не решила бы проблему. ADEX обнаружил поддельный Launchpad.app, спрятанный в папке кэша пользователя, тогда как настоящий Launchpad находится в /System/Applications/Launchpad.app. Эта деталь соответствовала известному «методу dock», при котором вредоносная программа перенаправляет иконку в Dock, так что пользователь открывает и настоящее приложение, и скрытую полезную нагрузку, не замечая этого.

В отчёте описывались дополнительные механизмы персистентности, включая агенты запуска, изменения профиля оболочки и git-хуки. Вывод был очевиден: заражённые проекты были лишь симптомами. Сначала необходимо было устранить механизм, поддерживающий заражение.

Порядок очистки, установленный ADEX, был строгим. Удалить точки автозапуска, перезагрузиться, затем восстановить проекты Xcode из чистого состояния git. Нарушение этого порядка рискует позволить вредоносной программе снова перезаписать очищенные файлы.

GitHub показал более широкий след

Расследование перешло от одной машины к публичным репозиториям. ADEX сообщил о 24 репозиториях GitHub, содержащих цепочки полезных нагрузок XCSSET. Среди примеров — PrinceMittal1/DemoForAuthFlow, zzzznick/dummy-ios и dvillegastech/ReaxBD.

Один репозиторий, usamajaved357/Breezy, использовал riggletoy.ru — тот же домен, что был обнаружен в живом образце. Другой, xiaoyouPrince/XYDevTool, использовал netcdndev.In — домен, который ADEX охарактеризовал как отсутствующий в публичном списке индикаторов компрометации на момент проверки, что свидетельствует о том, что операторы меняют инфраструктуру быстрее, чем публичные фиды угроз успевают это отслеживать.  Двенадцать из 24 репозиториев получили коммиты в 2026 году, причём самый последний — всего за один день до проверки; несколько репозиториев имели активность в 2026 году, что свидетельствует о продолжении кампании через общий код.

Цифры важны, поскольку доверие разработчиков является частью вектора атаки. Файлы проектов Xcode часто воспринимаются как рутинная техническая составляющая, менее заметная, чем исходный код или зависимости. XCSSET эксплуатирует эту привычку.

Риск для разработчиков Apple

Непосредственная цель — не пользователь App Store. Цель — человек, создающий программное обеспечение, а также учётные данные, сессии браузера, репозитории и токены, хранящиеся на его машине.

XCSSET может извлекать данные из браузеров, Keychain и конфигурационных файлов — включая облачные ключи, AWS-токены, SSH-ключи и учётные данные Git — подменять скопированные адреса кошельков Bitcoin или Ethereum, а также изменять поведение браузера с помощью внедрённого JavaScript-кода. Для команды разработчиков это означает, что один скомпрометированный Mac может поставить под угрозу исходный код, учётные записи и последующие проекты.

Практическая защита начинается до нажатия кнопки сборки. Разработчики должны проверять незнакомые фазы сборки Xcode и хранить файлы project.pbxproj под контролем версий, следить за глобальными git-хуками, сохранять включённой защиту целостности системы и отслеживать неожиданный исходящий трафик. Группы безопасности должны рассматривать ноутбуки разработчиков как часть цепочки поставок, а не как обычные конечные точки.

Комментарии

SPACEX(PRE) Launchpad

SPACEX(PRE) LaunchpadSPACEX(PRE) Launchpad

Зарегистрируйтесь и получите шанс на розыгрыш

Отказ от ответственности: Статьи, размещенные на этом веб-сайте, взяты из общедоступных источников и предоставляются исключительно в информационных целях. Они не обязательно отражают точку зрения MEXC. Все права принадлежат первоисточникам. Если вы считаете, что какой-либо контент нарушает права третьих лиц, пожалуйста, обратитесь по адресу crypto.news@mexc.com для его удаления. MEXC не дает никаких гарантий в отношении точности, полноты или своевременности контента и не несет ответственности за любые действия, предпринятые на основе предоставленной информации. Контент не является финансовой, юридической или иной профессиональной консультацией и не должен рассматриваться как рекомендация или одобрение со стороны MEXC.

Вам также может быть интересно

Акции (Beta) уже доступны

Акции (Beta) уже доступныАкции (Beta) уже доступны

Торгуйте акциями США через лицензированного брокера