В середине марта 2026 года специалисты по информационной безопасности зафиксировали полную цепочку атаки, построенную на технике ClickFix. Этот метод социальной инженерии, как следует из названия, заставляет жертву самостоятельно скопировать и выполнить вредоносную команду, обходя традиционные средства защиты. Кампания привлекла внимание тем, что злоумышленники мастерски имитируют интерфейс известного сервиса бронирования Booking, используя поддельный тест CAPTCHA в качестве приманки. Первые образцы вредоносного кода были публично раскрыты участником платформы MalwareBazaar, что позволило исследователям провести детальный анализ механизма атаки.
Описание
Всё начинается с перехода жертвы на мошеннический веб-сайт, управляемый злоумышленниками. Пользователь попадает туда через фишинговое письмо или вредоносную рекламу. Внешне страница выглядит как настоящий сервис Booking.com: используется узнаваемый логотип и стиль оформления. Посетителю предлагается пройти проверку "Я не робот" - стандартный элемент многих сайтов. Однако на самом деле за безобидной картинкой скрывается вредоносный код на JavaScript. Адресная строка браузера при этом, конечно, не соответствует домену Booking.com, но многие пользователи не обращают на это внимания.
Код JavaScript, как выяснили аналитики, не обфусцирован и легко читается. Структура кода аккуратная, присутствует обработка ошибок с запасными механизмами. Всё это свидетельствует о том, что злоумышленники использовали готовый набор инструментов, возможно, продаваемый в даркнете. Сценарий атаки состоит из нескольких последовательных шагов.
При загрузке страницы скрипт сразу же отправляет асинхронный запрос на сервер, с которого получена сама веб-страница. В ответ приходит JSON-объект, содержащий команду для PowerShell. Интересно, что команда загружается динамически - это позволяет злоумышленникам менять её без обновления клиентского кода. Кроме того, статический анализ веб-страницы не обнаруживает команду, что затрудняет работу автоматических сканеров. Полученная команда сохраняется в глобальной переменной и ждёт своего часа.
Пока идёт загрузка команды, скрипт постепенно отображает элементы фальшивой CAPTCHA с помощью цепочки задержек. Это создаёт иллюзию настоящей проверки - пользователь видит анимацию загрузки, визуальные переходы. Ключевой момент - флажок "Я не робот". Когда жертва кликает на него, срабатывает обработчик, который копирует сохранённую ранее команду в буфер обмена. При этом используются стандартные методы API браузера, а также перехватываются любые другие попытки копирования со страницы - чтобы жертва случайно не скопировала что-то иное. Злоумышленники даже предусмотрели совместимость с Internet Explorer, что говорит о тщательной проработке.
Сразу после копирования команды на сервер отправляется POST-запрос с телеметрией: уникальный идентификатор сессии, домен страницы, URL источника перехода (referer) и строка user-agent браузера. Эта информация, вероятно, используется для отслеживания эффективности кампании в реальном времени - подробности передаются через Telegram-бота. Наличие в коде множества отладочных сообщений console.log (вероятно, забытых разработчиками) позволило экспертам шаг за шагом восстановить логику скрипта.
После того как команда попала в буфер обмена, жертве показываются инструкции: открыть окно "Выполнить" (Win+R), вставить команду (Ctrl+V) и нажать Enter. Таким образом, именно пользователь запускает выполнение. Команда PowerShell использует так называемую "бесфайловую" технику: она загружает PowerShell-скрипт с удалённого сервера wiosyrondaty[.]com и выполняет его прямо в памяти, не записывая ничего на диск. Параметры запуска: -ExecutionPolicy Bypass (обход политик выполнения), -WindowStyle Hidden (без видимого окна), а также Invoke-Expression (iex) и Invoke-RestMethod (irm) для загрузки и исполнения кода.
В отчёте исследователей детально разбирается второй этап атаки - сам PowerShell-скрипт, который оказался обфусцированным, в отличие от первого JavaScript. Этот скрипт представляет собой классический дроппер (программа-загрузчик). Он выполняет разведку системы, загружает дополнительную полезную нагрузку, развёртывает её, пытается закрепиться в системе и запускает финальный исполняемый файл.
На этапе разведки скрипт собирает подробную информацию о машине жертвы: имя пользователя, имя компьютера, версию операционной системы, модель и производителя устройства (через WMI-запросы), версию PowerShell, права учётной записи (администратор или нет), данные о процессоре, объём оперативной памяти, сведения об установленном антивирусе (через корневой объект root/SecurityCenter2), членство в домене Active Directory, разрядность ОС и часовой пояс. Все эти данные упаковываются и отправляются на C2-сервер (сервер управления злоумышленников) через GET-запрос со множеством параметров.
После сбора информации дроппер переходит к загрузке основного архива. Архив формата ZIP скачивается по адресу https://hailmeinc[.]com/bkmsiqop[.]zip. Используется клиент HttpClient с ограничением по времени и повторными попытками (до четырёх раз). В случае неудачи применяется резервный метод через Invoke-WebRequest. Если размер загружаемого файла меньше 10 КБ или архив повреждён, происходит удаление временных файлов, а C2 получает сообщение об ошибке - в этом случае заражение прерывается.
После успешной загрузки дроппер пытается распаковать архив в одну из возможных папок пользователя: локальные данные приложений (LOCALAPPDATA), данные приложений (APPDATA), временная папка (TEMP), профиль пользователя. Все эти директории доступны для записи без прав администратора. Извлечённые файлы получают атрибут "скрытый". Затем скрипт ищет среди них первый исполняемый файл (.exe или .bat) и предпринимает попытку закрепления в системе (persistence).
Для закрепления используется запись в раздел реестра HKCU\Software\Microsoft\Windows\CurrentVersion\Run - таким образом полезная нагрузка будет запускаться при каждом входе пользователя. Если этот метод не срабатывает (например, из-за ограничений антивируса), применяется резервный: создание запланированной задачи с помощью schtasks /create. Задача выполняется при входе в систему. Если и это не удаётся, скрипт не предпринимает других попыток, и после перезагрузки системы вредоносная программа не запустится автоматически.
Наконец, дропнер запускает найденный исполняемый файл в фоновом режиме без окна через Start-Process -WindowStyle Hidden. Что именно представляет собой финальная полезная нагрузка, авторы отчёта обещают раскрыть в следующей части анализа.
Эта атака демонстрирует, насколько изощрённой может быть социальная инженерия. Злоумышленники не взламывают систему технически - они просто убеждают пользователя сделать всю работу самостоятельно. Поддельная CAPTCHA, имитация известного бренда, принудительное копирование в буфер обмена и подробные инструкции - каждый шаг направлен на максимальное доверие жертвы. Комбинированный метод ClickFix в сочетании с многоэтапным PowerShell-дроппером позволяет обойти многие системы мониторинга и антивирусной защиты. Организациям стоит усилить обучение сотрудников распознаванию подобных приёмов, а также внедрить политики, ограничивающие выполнение кода из буфера обмена через PowerShell.
Индикаторы компрометации
Domains
- accountpulsecentre.help
- hailmeinc.com
- wiosyrondaty.com
URLs
- https://accountpulsecentre.help/ern‑ZIoCCeHgBJpt2g33q1ZHZmrC2jCoRE1hGJ5O38s
- https://accountpulsecentre.help/ern-ZIoCCeHgBJpt2g33q1ZHZmrC2jCoRE1hGJ5O38s?get_command=1
- https://hailmeinc.com/bkmsiqop.zip
- https://wiosyrondaty.com/0I7IRN3o4o8GefoYto39mLjnEmdxcEEK73hReyAT6-A
SHA256
- 84dffd306e8bbdf1c1eaf39526dba36c8c442c673348c63445e848aec737e0ba
- d67c7cddbe74beb6b7ca9dac2d4795a2bba539cc49497161149e61f07ddc753e