Что случилось
9 июня 2026 года на VirusTotal загрузили безобидный на вид shell-скрипт. Ни один антивирус на него не сработал — ноль детектов. Специалисты Group-IB разобрали файл и обнаружили новый модульный стилер для macOS, который они назвали ClickLock: от ClickFix (техника доставки) и от locker (то, что он делает с вашим компьютером, если вы отказываетесь сотрудничать).
К моменту публикации отчёта кампания работала около двух месяцев, с мая 2026 года, и затронула не меньше 100 жертв в 33 странах. Больше половины — Европа, затем Северная Америка, Ближний Восток и Африка. География понятная: там, где выше доходы и больше владельцев Mac с криптокошельками.
Отдельно стоит сказать о том, чего в этой атаке нет. Нет эксплойтов. Нет обхода Gatekeeper или System Integrity Protection. Нет запроса прав администратора на старте. Вся цепочка держится на одном действии пользователя — человек сам копирует команду с веб-страницы и вставляет её в Терминал.
Как человека приводят к Терминалу
Техника называется ClickFix и за последний год стала основным способом заражать Mac. Логика простая: жертве показывают страницу, которая выглядит как техническая процедура, и просят выполнить «безобидный» шаг. Проверка Cloudflare «подтвердите, что вы не робот». Утилита очистки диска. Инструкция из документации.
Последнее особенно неприятно для тех, кто работает с ИИ-инструментами. В мае 2026 года Microsoft описала кампанию ClickFix, где приманка притворялась документацией Claude — домен вида claudecodedoc.squarespace[.]com. Человек ищет, как поставить или настроить инструмент, находит «официальную» страницу, там команда для Терминала. Ровно то, что он и ожидал увидеть. Разработчики и энтузиасты ИИ копируют команды в консоль каждый день, и именно эта привычка здесь работает против них.
Group-IB саму страницу-приманку для ClickLock не зафиксировала, но по устройству скрипта видно, под что он писался. Первое, что делает файл после запуска, — рисует в Терминале баннер «CLOUDFLARE CAPTCHA ACCESS CONTROL» и анимированный прогресс-бар с надписями вроде «Verifying you are not a bot» и «Collecting browser signals». Двенадцать сообщений, десять секунд. Никакой функции эта анимация не несёт — она только успокаивает человека, который секунду назад вставил в консоль непонятную строку.
Что происходит дальше
Пока крутится фальшивый прогресс-бар, скрипт отключает прерывание по Ctrl+C и прячет курсор — остановить выполнение уже не получится. В фоне он тянет четыре модуля с двух взломанных сайтов. Оба легитимные, с чистой репутацией: один — обычный WordPress, где файлы сложили прямо в папку темы twentytwenty, второй — интернет-магазин. Расширения у файлов подобраны так, чтобы не привлекать внимания: .txt, .jpg, .css. Внутри — shell-скрипты.
Ещё одна деталь: запускается фоновый цикл, который примерно шесть часов убивает NotificationCenter. Все системные предупреждения о безопасности, которые macOS попыталась бы показать, просто не появятся.
Дальше скрипт показывает окно запроса пароля, собранное через osascript. В нём стоит ваше настоящее имя пользователя и иконка Apple, скачанная со взломанного сайта. От настоящего системного диалога отличить его на глаз нельзя.
Введённый пароль проверяется локально, через службу каталогов — атакующему не нужен мусор, ему нужен рабочий пароль. Если пароль неверный, вы увидите нативно выглядящее «Incorrect password», и диалог повторится.
Если нажать «Отмена»
Вот здесь начинается та часть, из-за которой малварь и получила своё название.
Отказ ничего не отменяет. Скрипт устанавливает два LaunchAgent — стандартный механизм автозапуска macOS — и тихо выходит. При следующем входе в систему запускается модуль, который каждые 210 миллисекунд закрывает всё, чем вы могли бы воспользоваться: Finder, Dock, Терминал, «Мониторинг системы», Консоль, «Системные настройки», Spotlight, все браузеры. На экране остаётся один интерактивный элемент — запрос пароля. Цикл рассчитан примерно на 83 часа.
Параллельно работает второй модуль с тем же приёмом, но он добивается не пароля, а разрешения на доступ к Связке ключей. Ему нужен AES-ключ Chrome Safe Storage — тот, которым Chrome шифрует сохранённые пароли и cookie. С этим ключом базы браузера расшифровываются позже, спокойно, на машине атакующего. Этот цикл настроен на срок до 34 дней.
«Мониторинг системы» и Терминал закрываются намеренно и в первую очередь: чтобы вы не смогли посмотреть, что происходит, и остановить процесс.
Что забирают
Третий модуль в это время сканирует систему целиком. По итогам статического анализа Group-IB список выглядит так: пароль от macOS, Связка ключей, ключ шифрования Chrome, данные восьми браузеров (Chrome, Brave, Edge, Opera, Vivaldi, Arc, Chromium, Firefox), 31 расширение-криптокошелёк, 7 расширений менеджеров паролей — включая Bitwarden, 1Password, LastPass, Dashlane, Keeper, NordPass, — 8 десктопных кошельков, адреса в шести блокчейнах, история shell и сохранённые доступы FileZilla.
Всё это упаковывается в архив и уходит через Telegram Bot API. Никакого собственного сервера управления у атакующих нет — только Telegram и взломанные чужие сайты. Архивы больше 40 МБ автоматически бьются на части.
Ещё модуль просит вас выдать Терминалу полный доступ к диску и сам открывает нужную панель в «Системных настройках» с пошаговой инструкцией. Формально — чтобы «завершить проверку». Фактически — чтобы получить доступ к защищённым TCC каталогам, включая базу Связки ключей.
Что остаётся после
Закончив работу, модули подделывают время изменения файлов (копируют его из папки ~/Movies, чтобы сбить хронологию для криминалистов), удаляют свои LaunchAgent и стирают себя. На экране появляется бодрое «Access granted. Verification complete. You can now go back to your browser and reload». Система работает как обычно.
Кроме одного. Четвёртый компонент — бэкдор на основе открытого инструмента GSocket, примерно 80% кода взято из публичного установочного скрипта без изменений. Он не удаляется. Обратный шелл маскируется под iCloud в ~/Library/Application Support/iCloudsync, процесс притворяется системным SystemUIServerl, а закрепляется он сразу тремя способами: через crontab, через файлы конфигурации shell и через LaunchAgent.
То есть даже после того, как стилер убрал за собой, доступ к машине у атакующего остаётся. Вернуться можно в любой момент — поставить что-то новое, забрать данные ещё раз или пройти дальше по корпоративной сети, используя ваши VPN и SSH.
Признаки, по которым это видно
Заметить атаку в процессе трудно, но не невозможно. На что смотреть:
- Все приложения начали закрываться сами, буквально каждые несколько кадров, и на экране остался только запрос пароля.
- Запрос пароля появился без вашего действия — вы ничего не устанавливали и не меняли настройки.
- Не открываются Терминал и «Мониторинг системы»: запускаются и сразу пропадают.
- После входа в систему всё повторяется, даже если вы перезагрузились.
Постфактум остаются два конкретных следа. Незнакомые файлы .plist в ~/Library/LaunchAgents/ — в описанной кампании это com.authirity.plist и com.chromer.plist, но имена в других версиях будут другими. И скрытая папка ~/.cacheb/. Наличие любого из этого подтверждает заражение.
Что делать
Главное правило одно, и оно проще, чем всё написанное выше. Ни один нормальный сайт никогда не попросит вас вставить команду в Терминал. Cloudflare, Google, Apple и любой другой сервис делают проверку внутри браузера. Страница, которая предлагает открыть консоль, — попытка вас взломать, независимо от того, насколько солидно она выглядит и чей логотип на ней стоит.
Практические следствия:
- Не копируйте команды с веб-страниц. Если инструмент действительно требует установки через консоль — берите команду из официальной документации, куда вы пришли по прямому адресу, а не из поиска и не по рекламной ссылке.
- Не доверяйте рекламным блокам в результатах поиска. Их покупает кто угодно, и выглядят они как официальный сайт.
- Прежде чем вставлять что-то в Терминал, прочитайте, что вы вставляете. Строка с
curl, которая куда-то обращается и передаёт результат вbash, — это запуск чужого кода без возможности его увидеть. - Обновите macOS. Начиная с Tahoe 26.4 система сама предупреждает о попытках ClickFix-атаки.
- Если приложения начали закрываться, а на экране висит запрос пароля — не вводите его. Зажмите кнопку питания до выключения, затем загрузитесь в безопасном режиме, удерживая Shift, и разбирайтесь оттуда.
Если команда уже вставлена
Исходить надо из того, что скомпрометировано всё: пароли из браузера, cookie, содержимое менеджеров паролей, ключи кошельков. Порядок действий важен.
Сначала отключите машину от сети. Затем — с другого, чистого устройства — отзывайте сессии, а не пароли. Везде, где есть кнопка «выйти со всех устройств», нажмите её. Отзовите выданные OAuth-разрешения, API-токены, ключи облачных сервисов и репозиториев. Украденные cookie продолжают работать после смены пароля, поэтому смена пароля первым шагом почти ничего не даёт. Пароли меняйте после того, как закрыли сессии, и обязательно перевыпустите двухфакторную аутентификацию там, где она привязана к сессии.
Криптокошельки, чьи расширения стояли в браузере, считайте потерянными. Средства нужно переводить на новый кошелёк с новой seed-фразой, сгенерированной на другом устройстве. Зашифрованные хранилища атакующий забрал целиком и может подбирать к ним пароль офлайн, без ограничений по времени и попыткам.
Проверьте ~/Library/LaunchAgents/ и ~/.cacheb/. Но учитывая, что бэкдор закрепляется в трёх местах и маскируется под системный процесс, надёжный вариант при подтверждённом заражении — полная переустановка системы, а не выборочная чистка.
Почему это важно за пределами macOS
ClickLock интересен не техникой, а тем, что она не нужна. Скрипт не обходит защиту macOS — он обходит человека. У файла был ноль детектов на VirusTotal, полезная нагрузка лежала на взломанных легитимных сайтах с нормальной репутацией, а после работы все компоненты, кроме бэкдора, удалили себя сами. Антивирус в этой схеме почти не участвует.
Атака через вставку в консоль обходит и обучение сотрудников: людей годами учили не открывать вложения и не кликать по ссылкам, а тут нужно совершить действие, которое выглядит технически осмысленным. Пока приманки притворяются документацией ИИ-инструментов, самая уязвимая группа — не те, кто плохо разбирается в компьютерах, а те, кто разбирается достаточно хорошо, чтобы копировать команды в терминал не задумываясь.
Источники
Первоисточник — отчёт Group-IB Threat Intelligence «ClickLock Stealer: Paste Once, Lose Everything» от 16 июля 2026 года, с полным техническим разбором модулей, индикаторами компрометации и матрицей MITRE ATT&CK. Разбор для широкой аудитории — Malwarebytes, где малварь детектируется как MacOS.Stealer.ClickLock. Кампании ClickFix с приманками под документацию Claude и фальшивые утилиты обслуживания macOS описаны в блоге Microsoft Security от 6 мая 2026 года.

