Сайт, выдававший себя за страницу загрузки среды разработки Xcode, склонял владельцев компьютеров Apple к запуску вредоносного кода. Вместо установки программы человек получал похититель данных Atomic macOS Stealer, известный под сокращением AMOS. Обман строился не на уязвимости, а на доверии к привычной процедуре установки. Целью кампании стали разработчики - люди, для которых работа в системной консоли давно стала обычным делом.
Описание
Приманка выглядела убедительно. Страница повторяла оформление официального ресурса: значок Xcode, знакомые описания продукта, снимки интерфейса, заметная синяя кнопка загрузки. Работал ресурс на неофициальном домене. В самом низу мелким шрифтом стояла оговорка: страница не официальная. Однако остальной текст и весь интерфейс подталкивали к привычному сценарию установки. Ничто на первом экране не выдавало подвоха.
По данным Menlo Labs, решающий момент наступает после нажатия кнопки загрузки. Вместо перехода в магазин приложений Apple сайт открывает новое окно с инструкцией. Пользователю предлагают открыть системную консоль, скопировать предложенную строку, вставить её и нажать Enter. Так выполнение кода перемещается из браузера в операционную систему, где у команды уже есть права пользователя. Приём известен как ClickFix: он строится на том, что жертва сама доставляет команду на свою машину. В каталоге MITRE ATT&CK - базе знаний о приёмах атакующих - такой приём описан как запуск вредоносного кода самим пользователем через копирование и вставку.
Для разработчиков такая просьба не выглядит странной. Команды в консоли, установка инструментов через пакетные менеджеры, тонкая настройка окружения - привычные действия на машинах с macOS. Этим и пользуются злоумышленники. Вставленная строка скрывает адрес управляющего сервера, получает оттуда сценарий оболочки и сразу передаёт его на исполнение. Никакой Xcode при этом не скачивается. Пользователь остаётся уверен, что просто завершает установку.
Браузеру в этой схеме не нужно ломать защиту. Готовая команда выглядит как обычный шаг установки, поэтому жертва выполняет её добровольно. Разница между подделкой и настоящей инструкцией заметна лишь специалисту. Достаточно одного нажатия клавиши, чтобы вредоносный код получил те же права, что и сам пользователь.
Полученный сценарий старательно имитирует служебную логику обновления. Он считает файлы диагностических отчётов, создаёт папку в кэше пользователя и записывает туда отметку времени. Авторы называют это "ротацией журналов", хотя ничего не удаляют и не перемещают. Авторы выбрали имена внутренних настроек так, чтобы они напоминали обычные параметры сборки. Настоящая полезная нагрузка лежит глубже. Слоёв сокрытия несколько: сначала снимается кодирование, затем идёт расшифровка, потом распаковка. Каждый шаг восстанавливает лишь следующий фрагмент, поэтому разобрать сценарий целиком непросто. Среди возвращённых к жизни утилит - стандартные средства macOS, что дополнительно снижает подозрительность.
Дальше следует разведка окружения. Сценарий узнаёт объём оперативной памяти, идентификатор пользователя и его имя. Затем на сервер злоумышленников уходит сигнал о том, что команда вставлена и выполнена. Отдельного внимания заслуживает формулировка этого сигнала: она прямо указывает на этап вставки, что подтверждает привязку кампании к технике ClickFix. Доступ к содержимому буфера обмена сценарий при этом не получает, поэтому речь идёт о подтверждении запуска, а не о краже скопированных данных.
Следом приходит отдельный исполняемый файл. Он оседает в скрытой временной папке. Дальше загрузчик очищает служебные атрибуты, выдаёт файлу права на запуск и стартует его. Снятие атрибутов важно: macOS помечает загруженные из интернета файлы специальным признаком, а его удаление упрощает запуск. Именно этот файл оказался AMOS.
Показательный момент - расхождение с репутацией. На момент разбора у домена не было ни одного срабатывания в VirusTotal. Нулевой результат не означает, что ресурс безопасен. Системы репутации знают лишь то, что успели увидеть, а новые и малозаметные площадки почти не имеют истории. Зато сама страница давала поводов для сомнений. Бренд Apple на неофициальном домене, имитация магазина приложений, готовая команда для копирования, прямое указание перейти в консоль. Автоматическая оценка ресурса опиралась на совокупность этих признаков. По мнению системы, такая комбинация ведёт к загрузке программ из ненадёжного источника, а значит - к риску несанкционированного доступа к системе и кражи данных. Защитный механизм Menlo HEAT Shield заблокировал страницу как мошенническую, хотя внешние базы молчали.
Последствия для компаний шире, чем одна заражённая машина. На ноутбуке разработчика лежат доступы к репозиториям, облачным средам и внутренним сервисам. Через них злоумышленник способен добраться до исходного кода и инфраструктуры. Для атакующих это делает разработчиков особенно привлекательной целью. Именно поэтому ставка на правдоподобную приманку вокруг инструмента разработки даёт результат.
Защита на уровне браузера разрывает цепочку целиком. Если браузер блокирует страницу до того, как пользователь дошёл до окна с инструкцией, сценарий на машину не попадает, и заражения не происходит. Программное обеспечение стоит брать с официальных ресурсов, а предложения вставить незнакомую команду в консоль - игнорировать. Пакеты разработчика лучше устанавливать через доверенные менеджеры зависимостей. Регулярные обновления системы и встроенные механизмы защиты macOS снижают риск, но не отменяют осторожности.