Безопасность · PNG

TerminalFix: вредонос спрятан в PNG-изображениях через RGBA-стеганографию

Microsoft раскрыла кампанию TerminalFix, в которой злоумышленники прячут вредоносный код прямо в пикселях обычных PNG-файлов. Три PNG-изображения доставляют исполняемый файл и вредоносную DLL — антивирус видит картинки, а не малварь.

3 сентября 2026 Редакция Loadfile ~6 мин
Три PNG-файла с кодом в RGBA-каналах на тёмном цифровом фоне
Содержание
  1. Что такое TerminalFix
  2. Как PNG-стеганография скрывает вредонос
  3. Цепочка атаки пошагово
  4. Чем грозит и кто под ударом
  5. Как защититься
  6. Источники

Коротко: TerminalFix — вариант ClickFix, раскрытый Microsoft 28 августа 2026 года. Атака загружает три обычных PNG-файла и извлекает из их пикселей исполняемый файл и DLL, которые запускают скрытый Python-туннель в корпоративную сеть. Никакого CVE нет — используется только легитимная функциональность Windows.

Что такое TerminalFix

TerminalFix — это новый вариант атаки ClickFix, задокументированный командой Microsoft Security 28 августа 2026 года исследователями Сагаром Патилом, Сурияраджем Натараджаном и Парашараном Рагхаваном. В отличие от классического ClickFix, который направляет жертву в диалог «Выполнить» (Win+R), TerminalFix открывает Windows Terminal или PowerShell — это позволяет выполнять многострочные скрипты, которые в Run-диалоге были бы невозможны.

Точкой входа служит скомпрометированный сайт с фейковой Cloudflare CAPTCHA. Пользователь видит привычный «Я не робот» — нажимает кнопку, и в буфер обмена незаметно копируется вредоносная PowerShell-команда. Дальше пользователь сам вставляет её в терминал по инструкции на экране.

!
Важно

TerminalFix не эксплуатирует ни одной CVE-уязвимости. Атака полностью строится на легитимных компонентах Windows и социальной инженерии.

Как PNG-стеганография скрывает вредонос

PNG — это растровый формат с открытой спецификацией. Каждый пиксель хранит значения каналов: Red, Green, Blue и Alpha (прозрачность). Атакующие в TerminalFix воспользовались именно этим: вредоносный бинарный код закодирован в значениях RGBA-каналов пикселей трёх изображений.

Механизм извлечения описан в отчёте Microsoft: скрипт читает первые 8 байт изображения как 64-битное целое число — это длина полезной нагрузки. Следующие байты содержат сам файл. Так из трёх PNG собирается полный вредоносный комплект:

  • PNG №1 — содержит исполняемый файл (.exe).
  • PNG №2 — первая половина вредоносной DLL.
  • PNG №3 — вторая половина той же DLL.

После загрузки скрипт склеивает обе половины DLL, записывает компоненты на диск и удаляет PNG-файлы, чтобы уничтожить цифровые следы. Антивирус, сканирующий трафик по сигнатурам исполняемых файлов, видит лишь три корректных PNG-изображения — PE-сигнатуры нет ни в одном из файлов. Это не баг формата PNG, а намеренное использование его гибкости: любой произвольный байт допустим в значениях каналов.

Похожий приём с вложением кода в изображения ранее применялся с форматом SVG — подробнее об этом в материале «SVG-стеганография: вредонос в флагах и иконках». TerminalFix переносит тот же подход на растровый PNG.

Цепочка атаки пошагово

Атака состоит из восьми последовательных стадий. По данным Microsoft, каждая стадия использует только встроенные инструменты Windows или легитимно подписанные файлы:

  1. Фейковая CAPTCHA. Скомпрометированный сайт показывает оверлей с имитацией Cloudflare CAPTCHA. При нажатии кнопки в буфер обмена попадает PowerShell-команда.
  2. Запуск через Windows Terminal. Инструкция на сайте просит открыть терминал и нажать Ctrl+V. Первичный скрипт скачивает ZIP-архив и запускает файл 1.bat.
  3. DLL-подмена (sideloading). Легитимный подписанный исполняемый файл Windows — LockScreenContentServer.exe — загружает вредоносную dui70.dll, замаскированную под «Windows DirectUI Engine». Процесс выглядит доверенным для систем контроля.
  4. Загрузка трёх PNG-файлов. Второй PowerShell-скрипт скачивает три изображения с серверов атакующих.
  5. Извлечение полезной нагрузки. Из PNG-пикселей по RGBA-схеме достаются exe и две половины DLL; компоненты склеиваются и записываются на диск. Исходные PNG удаляются.
  6. Закрепление в системе. Создаются ключи реестра (HKCU\…\Run) и задачи планировщика с интервалом 60 минут для выживания после перезагрузки.
  7. Разведка в сети. Вредонос перебирает Active Directory, домены доверия и серверную инфраструктуру организации.
  8. Python-туннель. Запускается pythonw.exe (без видимого окна), устанавливает WebSocket-соединение с доменом gitnow[.]dev через порт 443 и открывает SOCKS-подобный прокси во внутреннюю сеть жертвы.

Чем грозит и кто под ударом

Microsoft описывает TerminalFix как «серьёзную угрозу для корпоративных сред». По данным компании, кампания затрагивает организации в нескольких отраслях без конкретики по числу заражений.

🔍

Обход антивируса

PNG-изображения не содержат PE-заголовков и не вызывают эвристических срабатываний при скачивании. Скрытый код появляется на диске только в момент выполнения и сразу удаляется.

🔗

Туннель сквозь файрвол

WebSocket-соединение на 443-м порту маскируется под обычный HTTPS-трафик. Без глубокой инспекции пакетов (DPI) туннель не обнаруживается стандартными средствами.

🏢

Опасность для корпораций

После подключения туннеля атакующий получает SOCKS-прокси во внутреннюю сеть: доступ к сетевым ресурсам, файлам на серверах, системам аутентификации.

👤

Социальная инженерия

Жертва сама запускает атаку, вставив команду в терминал. Никакой «уязвимости» нет — человек нажал кнопку, считая, что проходит CAPTCHA.

Любой пользователь Windows, работающий с браузером и имеющий доступ к терминалу, потенциально уязвим. Особенно рискуют сотрудники, регулярно скачивающие файлы из интернета или посещающие новые сайты без корпоративного прокси.

Как защититься

Поскольку TerminalFix не эксплуатирует уязвимости, патч здесь не поможет. Защита строится на предотвращении запуска команд из недоверенных источников и контроле исходящего трафика.

  1. Никогда не вставляйте команды из браузера в терминал. Ни одна легитимная CAPTCHA не требует открывать PowerShell или Windows Terminal. Это железное правило — исключений нет.
  2. Ограничьте выполнение PowerShell. Политики AppLocker или Windows Defender Application Control (WDAC) позволяют разрешить запуск только подписанных скриптов.
  3. Включите глубокую инспекцию HTTPS-трафика (DPI/TLS inspection). WebSocket-туннель на порту 443 виден только при анализе содержимого, а не заголовков.
  4. Контролируйте загрузку DLL. Microsoft Defender for Endpoint обнаруживает технику DLL sideloading — убедитесь, что защита активна.
  5. Мониторьте задачи планировщика и ключи Run-реестра. Новые записи с интервалом 60 минут от неизвестных процессов — признак заражения.

Для проверки форматов скачиваемых файлов и анализа их структуры используйте инструмент «Определить формат файла» — он анализирует байтовую сигнатуру файла прямо в браузере, без загрузки на сервер. Подробнее об опасных расширениях файлов — в разделе «Карта опасных расширений».

Источники