Ad
Угрозы

Поддельная инструкция на Claude отдаёт Mac под контроль

Маша Даровская
By Маша Даровская , IT-редактор и автор
Поддельная инструкция на Claude отдаёт Mac под контроль
Обложка © Anonhaven

Исследователи разобрали расширенную версию MacSync — вредоносного набора для macOS, который сочетает кражу данных, постоянный удалённый доступ и подмену приложений криптокошельков. Заражение начинается с одной команды, которую пользователь самостоятельно вставляет в Терминал.

В исследованном инциденте владелец Mac искал в Google инструкцию по установке Claude Code. Он нажал на рекламный результат и оказался на настоящем домене claude.ai, где была опубликована общедоступная беседа, оформленная как руководство от Apple Support.

Страница предлагала открыть Терминал и вставить команду. Она загружала MacSync, который убеждал пользователя предоставить Терминалу полный доступ к диску, выманивал пароль от учётной записи, собирал браузерные данные и устанавливал троян удалённого доступа. При наличии Ledger Live, Ledger Wallet или Trezor Suite вредонос заменял часть файлов этих приложений и добавлял поддельную форму восстановления кошелька.

Жертва искала способ установить Claude Code на Mac и выбрала платное объявление, расположенное выше обычного результата Anthropic. Рекламная ссылка провела пользователя через систему учёта кликов Google и перенаправила на страницу вида claude.ai/share/<идентификатор>.

Такие ссылки предназначены для публикации бесед с Claude. Автор может выбрать отображаемое имя, которым в данном случае стало Apple Support. Интерфейс показывал сообщение о том, что перед пользователем копия беседы между Claude и Apple Support, хотя к Apple инструкция отношения не имела.

Материал назывался Running Claude Code on Mac и был написан в стиле документации. Он обещал быструю установку, сохранность личных файлов и отсутствие изменений без разрешения пользователя.

Первый этап не использовал поддельный домен, фальшивый сертификат или уязвимость браузера. Страница действительно находилась на claude.ai, соединение было защищено HTTPS, а вредоносный код запускал сам владелец компьютера.

Настоящий домен в этой схеме подтверждал лишь происхождение веб-страницы. Он не доказывал, что опубликованная на ней беседа создана Anthropic или Apple.

Команда из поддельной инструкции содержала адрес сервера в кодировке Base64. После декодирования она обращалась к agenticsora[.]com, получала сценарий и сразу передавала его оболочке zsh.

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

Второй этап запускался в фоновом режиме и получал с сервера AppleScript размером около 46 КБ. Этот сценарий выполнялся через osascript и не сохранялся на компьютере как обычный файл.

Собранные данные позднее помещались в /tmp/osalogging.zip. Загрузчик отправлял архив частями, повторяя неудачные запросы до восьми раз, а после успешной передачи удалял файл.

Полная цепочка состоит из:

  1. небольшого загрузчика zsh;

  2. распакованного фонового сценария, получаемого с сервера похитителя на AppleScript;

  3. постоянного трояна удалённого доступа в формате Mach-O;

  4. отдельного помощника для снимков экрана;

  5. модифицированных приложений Ledger и Trezor.

Смысл разделения в том, что основная логика похитителя остаётся на сервере преступников. Оператор может менять AppleScript, не выпуская новый локальный файл и не меняя первоначальную команду.

MacSync не способен самостоятельно включить Full Disk Access. Это разрешение контролирует система Transparency, Consent and Control, или TCC. В современных версиях macOS приложение либо пользователь должны явно изменить соответствующий параметр в разделе конфиденциальности.

При первом запуске AppleScript проверяет, может ли Терминал прочитать каталог ~/Library/Cookies/. Если доступ закрыт, вредонос показывает окно Full Disk Access required и открывает нужный раздел системных настроек.

Пользователь должен вручную разрешить Терминалу доступ ко всему накопителю. Первая попытка заражения на этом заканчивается: данные ещё не собираются.

Перед показом окна MacSync копирует файл ~/.zshrc и добавляет в рабочую версию команду повторной загрузки вредоноса. Этот файл выполняется при каждом запуске интерактивной оболочки zsh.

После предоставления разрешения жертва снова открывает Терминал. Вредонос запускается повторно, проверяет доступ, восстанавливает исходный .zshrc, закрывает окно Терминала и начинает сбор данных.

В коде очистки есть ошибка. Если пользователь несколько раз открыл Терминал до предоставления Full Disk Access, вредоносная строка может попасть в резервную копию и сохраниться после восстановления. Поэтому файл ~/.zshrc остаётся важным индикатором заражения.

Эта запись предназначена главным образом для повторного запуска после изменения разрешения. Долговременное закрепление появляется позднее через LaunchAgent.

После получения доступа к диску MacSync показывает окно с заголовком System Preferences. Оно сообщает, что настройки нужно обновить для запуска приложения, и просит ввести пароль.

Вредонос не принимает любую введённую строку. Каждый вариант передаётся команде:

dscl . authonly <имя пользователя> <пароль>

Служба каталогов macOS возвращает результат проверки без создания нового сеанса. Если пароль неправильный, окно появляется снова. Одна попытка может оставаться на экране до 150 секунд, после чего цикл продолжается.

В итоге оператор получает подтверждённый пароль от локальной учётной записи в открытом виде. Этот пароль сохраняется среди собираемых данных и передаётся установленному позднее трояну удалённого доступа.

Браузеры на основе Chromium используют записи Safe Storage из связки ключей macOS при защите сохранённых логинов, cookie и других данных профиля.

MacSync запускает отдельный сценарий и пытается получить такие записи для Chrome, Brave, Edge, Vivaldi, Opera, Yandex Browser, Arc, Chromium, тестовых версий Chrome и других браузеров.

Сценарий сначала обращается к конкретным записям через утилиту security find-generic-password. Полная разблокировка пользовательской связки ключей применяется как резервный способ, если отдельные запросы ничего не вернули. Для неё используется уже похищенный пароль.

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

Исследованный AppleScript обрабатывал 13 браузеров на основе Chromium и четыре браузера семейства Gecko: Firefox, Zen, LibreWolf и Waterfox.

MacSync копировал cookie, сохранённые логины, историю, веб-данные и локальные хранилища расширений. В конфигурации присутствовали отдельные списки обычных расширений и десятков расширений криптокошельков.

Среди настольных кошельков упоминались Exodus, Electrum, Atomic, Guarda, Coinomi, Sparrow, Wasabi, Bitcoin Core, Monero, Ledger Live, Ledger Wallet и Trezor Suite. Всего сценарий искал данные примерно 21 кошелька.

Дополнительно вредонос собирал:

  • каталог сеанса Telegram Desktop;

  • пользовательские связки ключей;

  • каталог ~/.ssh;

  • конфигурацию AWS;

  • настройки Kubernetes;

  • cookie и историю Safari;

  • базу Apple Notes;

  • файлы с расширениями seed, wallet, pem и kdbx;

  • документы из Desktop, Documents и Downloads;

  • данные об оборудовании, системе и мониторах.

Собранные файлы помещались во временный каталог, упаковывались штатной утилитой ditto и отправлялись на сервер. После передачи значительная часть временных следов удалялась.

Следующий этап загружает универсальный исполняемый файл Mach-O для процессоров Intel и Apple Silicon. Троян написан на C++ и содержит встроенные копии OpenSSL и Brotli.

Он сохраняется под именем вида:

~/.local/com.apple.<идентификатор>.hcpi

Рядом создаётся файл ~/.local/.mpwdс похищенным паролем.

Для постоянного запуска MacSync регистрирует пользовательский LaunchAgent с параметрами RunAtLoad и KeepAlive. Первый запускает процесс при входе в систему, второй заставляет launchd перезапускать его после завершения. Механизм LaunchAgent легитимен и используется обычными приложениями, но в данном случае служит для закрепления трояна.

Название агента не всегда начинается с com.apple. Установщик ищет на компьютере конфигурации Google Keystone, Adobe, Microsoft AutoUpdate, OneDrive, Dropbox, Spotify, Grammarly и JetBrains Toolbox. При обнаружении знакомого обновляющего компонента вредонос заимствует его обозначение.

Троян связывается с сервером 85.206.161[.]241:8443. Для связи используется WebSocket поверх TLS, а сообщения дополнительно шифруются AES-256-CBC и кодируются Base64.

Встроенная реализация TLS позволяет программе обращаться напрямую к IP-адресу и принимать недоверенный сертификат без обычной системной проверки.

Функциональность RAT включает:

  • запуск отдельных команд;

  • интерактивную оболочку /bin/zsh;

  • загрузку и скачивание файлов;

  • передачу имени пользователя, имени компьютера и версии системы;

  • получение снимков экрана;

  • отправку похищенного пароля;

  • самостоятельное удаление по команде оператора;

  • повторный запуск через LaunchAgent.

Снимки экрана делает отдельное приложение. Сам RAT передаёт результат на сервер.

MacSync устанавливает приложение размером около 84 КБ с отображаемым названием Screen Recording. Оно работает без значка в Dock и маскирует идентификатор под com.apple.<идентификатор>.capture.

При вызове системного интерфейса macOS показывает настоящий запрос:

Screen Recording would like to record this computer’s screen.

Пользователь должен нажать Allow. Без такого подтверждения помощник не получает разрешение. Apple также указывает, что владелец Mac сам управляет списком приложений, которым разрешена запись экрана и системного звука.

Обман состоит в названии приложения. Фраза Screen Recording в системном диалоге может выглядеть как обозначение функции macOS, а не как имя недавно установленной программы.

После разрешения снимок создаётся штатной утилитой /usr/sbin/screencapture. Сам помощник не связывается с управляющим сервером: файл забирает основной RAT.

Главная особенность исследованной версии связана с приложениями аппаратных криптокошельков. MacSync ищет в /Applications три программы:

  • Ledger Wallet;

  • Ledger Live;

  • Trezor Suite.

Аппаратные устройства, их защищённые элементы и прошивки не взламываются. Вредонос изменяет приложения-компаньоны, установленные на заражённом Mac.

Сервер отправляет заранее подготовленные app.asar и Info.plist. Вредонос копирует весь пакет приложения во временный каталог, удаляет исходный экземпляр из /Applications, возвращает копию на место, заменяет два файла и повторно подписывает пакет собственной подписью без Team ID.

После этого модифицированное приложение продолжает запускаться, но его исходная подпись поставщика уже не действует.

Вредоносные варианты Ledger Wallet и Ledger Live содержат почти одинаковую нагрузку. Через пять секунд после обычного запуска основное окно переключается на внедрённую страницу восстановления.

Сначала пользователь видит сообщение об ошибке обновления. Затем интерфейс имитирует действия с физическим устройством и показывает форму из 24 полей для фразы восстановления.

Введённые слова отправляются на main.sdhomeinspectors[.]com. После успешного или неудачного запроса страница возвращает пользователя в настоящее приложение, поэтому заметного сообщения об ошибке может не появиться.

Ledger предупреждает, что служба поддержки и приложение не должны запрашивать все 24 слова. Фразу восстановления следует вводить только на самом аппаратном устройстве в предусмотренных производителем процедурах. Человек, получивший эти слова, может восстановить ключи на другом устройстве и распоряжаться средствами.

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

MacSync добавляет свой домен в список разрешённых источников и через десять секунд показывает имитацию подключения устройства, проверки фразы и восстановления кошелька.

Полученные слова уходят на main.southcarolinacounselor[.]com. После отправки пользователь также возвращается в настоящий интерфейс Trezor Suite.

Trezor рекомендует не вводить резервную фразу в компьютер по запросу неожиданного окна. Безопасная процедура восстановления должна быть инициирована и подтверждена самим устройством. Компания также не запрашивает фразу через службу поддержки.

Сбрасывать старый Ledger или Trezor после такой утечки недостаточно. Скомпрометированную фразу невозможно сделать секретной снова. Владельцу нужно создать новый кошелёк с новым набором слов и перевести туда активы с чистого устройства.

Доставка компонентов проходила через agenticsora[.]com. Во втором расследованном Huntress случае тот же набор распространялся с malwareaudit[.]com.

В AppleScript был записан адрес 103.216.221[.]95, который исследователи связывают с операторской инфраструктурой. Постоянный RAT использовал отдельный сервер 85.206.161[.]241:8443.

Фразы восстановления уходили на два других домена: sdhomeinspectors[.]com и southcarolinacounselor[.]com. Такая схема разделяет первоначальную загрузку, интерактивное управление и приём криптографических секретов.

Сами адреса являются индикаторами конкретной исследованной кампании. Оператор может заменить их, поэтому отсутствие соединения с одним доменом ещё не исключает заражение другой сборкой.

Исследователи нашли в AppleScript и подменённых приложениях русские комментарии. В коде Ledger осталась фраза «ВСТАВЬТЕ СЮДА», а в других участках — рабочие заметки разработчика.

MacSync также называет себя MacSync Stealer версии 1.1.2_release. Устройство похитителя, список собираемых данных и способ доставки напоминают AMOS, известный также как Atomic Stealer.

Эти признаки показывают техническое родство, но не позволяют определить страну, гражданство или конкретную группировку. Авторы разбора прямо называют связь с AMOS семейным сходством, а не атрибуцией оператору.

Загрузчики получают индивидуальные токены, случайные имена переменных и разные идентификаторы. Даже при одинаковой логике каждая сборка может иметь новую контрольную сумму.

Более устойчивые признаки связаны с поведением:

  • URL в Base64, передаваемый через curl в zsh;

  • запрос /dynamic, результат которого запускается через osascript;

  • изменение ~/.zshrc;

  • файл вида ~/.local/com.apple.<8 символов>.hcpi;

  • файл ~/.local/.mpwd;

  • неизвестный LaunchAgent, запускающий файл из ~/.local;

  • приложение com.apple.<идентификатор>.capture.app;

  • запуск screencapture процессом не от Apple;

  • собственная подпись без Team ID у Ledger Live или Trezor Suite;

  • файлы recovery-step-* внутри приложений кошельков;

  • отправка поля seedwords по пути /modules/wallets.

Huntress рекомендует ориентироваться на сетевое и процессное поведение, а не на одну контрольную сумму.

Вопросы и ответы

Что такое MacSync?

MacSync — вредоносный набор для macOS, объединяющий похититель данных, троян удалённого доступа, модуль снимков экрана и компоненты подмены приложений криптокошельков.

Это новый вредонос?

MacSync наблюдался и раньше. Новый разбор Huntress раскрывает конкретную расширенную шестиступенчатую цепочку, восстановленную с серверов атакующего после инцидента в июле 2026 года.

Как начинается заражение?

Пользователь нажимает на рекламный результат, открывает общедоступную беседу на настоящем claude.ai и вставляет предложенную команду в Терминал.

Использует ли MacSync уязвимость macOS?

В исследованном случае эксплойт не требовался. Начальную команду запускал пользователь, а Full Disk Access и Screen Recording выдавались через социальную инженерию.

Получает ли MacSync запись экрана без подтверждения?

Нет. Помощник вызывает настоящий запрос TCC, и пользователь должен разрешить запись экрана. Обман строится на названии приложения Screen Recording.

Что именно крадёт вредонос?

В список входят браузерные логины и cookie, ключи Safe Storage, пароль локальной учётной записи, Telegram, SSH, AWS, Kubernetes, Apple Notes, документы и данные криптокошельков.

Получает ли злоумышленник постоянный доступ?

Да. MacSync устанавливает Mach-O RAT и регистрирует LaunchAgent с автоматическим запуском и перезапуском.

Взламывает ли он Ledger или Trezor?

Нет. Аппаратные устройства не атакуются. MacSync изменяет приложения на заражённом Mac и показывает поддельную форму для ввода фразы восстановления.

Можно ли удалить только подозрительный LaunchAgent?

Этого недостаточно. Пароли и токены могли быть похищены, приложения кошельков — изменены, а дополнительные компоненты — сохранены в других каталогах.

Достаточно ли переустановить macOS?

Простая переустановка сохраняет пользовательские файлы и настройки. При подтверждённой компрометации безопаснее стереть накопитель и выполнить чистую установку.

Что делать после ввода фразы восстановления?

Нужно создать новый кошелёк с новой фразой на чистом устройстве и перевести туда активы. Старую фразу следует считать навсегда раскрытой.

Есть новость? Станьте автором.

Мы сотрудничаем с независимыми исследователями и специалистами по кибербезопасности. Отправьте нам новость или предложите статью на рассмотрение редакции.