GhostCode крал коды устройств через формы Salesforce
В конце августа 2026 года злоумышленники использовали набор инструментов GhostCode в кампании, начатой через контактные формы Salesforce, для кражи кодов устройств. Они имитировали сотрудников отделов закупок, применяли защищённые паролем HTML-файлы и механизм Microsoft OAuth 2.0 Device Authorization Grant. После авторизации злоумышленники зарегистрировали три устройства, получили токены Azure AD и Microsoft Graph, а за 78 секунд выполнили девять вызовов API, включая сбор электронной почты.
Фишинг через формы контактов и защищённые файлы
Злоумышленники представлялись сотрудниками отделов закупок легитимных компаний и продолжали общение с приманкой в виде NDA. Затем они отправляли жертвам защищённый паролем HTML-файл, размещённый через WeTransfer.
Исследователи выявили более 30 доменов-двойников, имитировавших американских дистрибьюторов, производителей и логистические компании. По оценке источника, это указывало на более широкий охват поставщиков услуг.
HTML-вложение применяло несколько уровней обхода средств обнаружения. Видимый текст перемежался повторяющимися HTML-комментариями между отдельными символами. В браузере такой файл отображался нормально, однако извлечение текста в сыром виде и автоматическое обнаружение фишинга нарушались.
Встроенный URL перенаправления шифровался с помощью AES-256-GCM и отсутствовал в открытом виде. Ключ расшифровки формировался на стороне клиента с применением PBKDF2-HMAC-SHA256, пароля, введённого жертвой, и жёстко заданной соли. Перенаправление выполнялось только после ввода правильного пароля.
Расшифрованный URL вёл к ретранслятору. Он выполнял JavaScript-задачи для браузера, отслеживал пользователей и фильтровал ботов, а затем перенаправлял жертв на фишинговый сервер, размещённый на, вероятно, скомпрометированном легитимном веб-сайте.
GhostCode применял Cloudflare Turnstile, а также серверную фильтрацию по GeoIP и строке User-Agent. Она блокировала сканеры, ползунки, headless-браузеры и инструменты, в которых встречались строки bot, curl, python, selenium и wget. Наблюдаемые поддомены на скомпрометированных доменах имели имена, характерные для доступа к учётным записям.
Авторизация устройств Microsoft и закрепление
Фишинговый бэкенд инициировал запросы на авторизацию с использованием App ID приложения Microsoft Authentication Broker 29d9ed98-a469-4536-ade2-f981bc1d605e. Жертве показывался возвращённый код пользователя, а код устройства сохранялся для последующих опросов.
Затем жертвы вводили код на легитимной странице входа Microsoft и проходили MFA. Сервер атакующих опрашивал систему, проверяя успешность авторизации, и получал токены аутентификации. После этого жертве отображался поддельный документ NDA.
После аутентификации злоумышленники зарегистрировали три устройства и получили токены Azure AD и Microsoft Graph. В результате они создали несколько вариантов закрепления.
В течение 78 секунд злоумышленники успешно выполнили девять вызовов API, включая сбор электронной почты. Для соответствия географическому расположению жертвы они ротировали резидентные прокси.
Большая часть активности исходила из резидентных сетей Великобритании. Дополнительный трафик был связан с GHOSTnet в Германии. Такой маршрут помогал обходить средства условного доступа (Conditional Access), основанные на геолокации, и делал активность авторизации устройств Microsoft географически согласованной с местоположением жертвы.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



