Критическая уязвимость CVE-2026-26980 (CVSS 9.4) в платформе Ghost CMS активно эксплуатируется злоумышленниками для массового внедрения вредоносного JavaScript-кода в публикации на скомпрометированных сайтах. По данным исследователей QiAnXin XLab, кампания, обнаруженная 7 мая 2026 года, затронула более 700 веб-сайтов в секторах образования, блокчейна, искусственного интеллекта, SaaS, медиа и финансовых технологий. Конечная цель — доставка вредоносных программ через атаки типа ClickFix с поддельными CAPTCHA-страницами. Уязвимость была устранена в версии 6.19.1 ещё в феврале 2026 года — администраторам Ghost CMS необходимо немедленно обновиться и провести аудит своих инсталляций.
Техническая суть уязвимости
CVE-2026-26980 представляет собой уязвимость SQL-инъекции в Content API платформы Ghost. Согласно официальному бюллетеню безопасности, уязвимость позволяет неаутентифицированному атакующему читать произвольные данные из базы данных. Оценка CVSS 9.4 отражает критический уровень опасности.
Особую тяжесть уязвимости придаёт то, что через неё атакующий может извлечь ключ Admin API сайта без какой-либо авторизации. Этот ключ предоставляет полный доступ к административному API Ghost, включая возможность программного изменения опубликованных статей. Именно этот вектор используется в текущей кампании: злоумышленники массово модифицируют контент, внедряя вредоносные JavaScript-загрузчики в конец страниц.
Примечательно, что уязвимость была обнаружена компанией Anthropic с использованием ИИ-модели Claude. Исправление выпущено в версии Ghost 6.19.1 в феврале 2026 года.
Механика атаки: от инъекции до полного контроля
По данным отчёта QiAnXin XLab, атака реализуется через многоступенчатую цепочку доставки:
Этап 1 — Компрометация CMS. Атакующий эксплуатирует CVE-2026-26980 для извлечения ключа Admin API из базы данных. Затем через Admin API массово модифицирует статьи, добавляя в конец каждой страницы вредоносный JavaScript-загрузчик.
Этап 2 — Двухступенчатый загрузчик. Внедрённый JavaScript работает как загрузчик первого уровня, который обращается к внешнему серверу для получения основной полезной нагрузки во время выполнения. Такая архитектура позволяет атакующим гибко менять доставляемый контент, сохраняя загрузчик неизменным на сотнях скомпрометированных сайтов.
Этап 3 — Маскировка через Adspect. Как сообщается, серверный PHP-скрипт использует коммерческий сервис маскировки Adspect. Скрипт собирает цифровые отпечатки браузера посетителя, передаёт их на сервер управления и выполняет действия на основе полученных инструкций — перенаправления, всплывающие окна, загрузки. Скрипт, предположительно, поддерживает 19 различных команд для выполнения произвольного JavaScript и удалённого управления браузером жертвы. Сканеры безопасности и поисковые роботы при этом видят только безобидную страницу.
Этап 4 — ClickFix-атака. Целевым посетителям отображается поддельная CAPTCHA-страница внутри элемента iframe. Жертве предлагается «подтвердить, что она человек», скопировав и вставив закодированную в Base64 команду в диалог Windows Run. Эта команда запускает цепочку доставки: загрузку ZIP-архива, извлечение и выполнение пакетного скрипта Windows, который через PowerShell загружает DLL-файл с удалённого сервера и запускает его через rundll32.exe. Параллельно открывается отвлекающая веб-страница.
Эволюция полезной нагрузки
Исследователи зафиксировали, что в более поздних итерациях кампании DLL-файл был заменён на JavaScript-полезную нагрузку. Независимо от типа доставки, конечная цель — установка исполняемого файла Windows:
- В варианте с DLL — доставляется клиент PuTTY с действительным сертификатом подписи кода
- В варианте с JavaScript — устанавливается Inno Setup-инсталлятор Electron-приложения
Electron-приложение, как сообщается, представляет собой модифицированную версию открытого настольного клиента Grape. Модификация обеспечивает закрепление в системе и опрос командного сервера каждые 30 секунд для получения инструкций, включая выполнение JavaScript-кода или исполняемых файлов.
Индикаторы компрометации
На основе данных исследования выявлены следующие индикаторы:
- Домены:
clo4shara[.]xyz,web-telegram[.]ug
Масштаб и оценка воздействия
По оценке QiAnXin XLab, кампания затронула более 700 веб-сайтов. Среди скомпрометированных ресурсов — сайты университетов, компаний в сферах блокчейна, ИИ, SaaS, информационной безопасности, медиа и финансовых технологий. Использование легитимных, доверенных сайтов в качестве площадок для атаки существенно повышает вероятность успеха ClickFix-атак: посетители таких ресурсов не ожидают столкнуться с вредоносным контентом.
Следует отметить, что оценка масштаба кампании основана на данных одного исследовательского источника и пока не подтверждена независимо вендором Ghost или государственными органами кибербезопасности. Тем не менее, критичность самой уязвимости (CVSS 9.4) и простота эксплуатации — без аутентификации, через публичный Content API — делают массовую эксплуатацию вполне реалистичным сценарием.
В некоторых случаях, по данным исследователей, вредоносный код внедрялся на сайты в течение одного дня, что свидетельствует о высокой степени автоматизации атаки.
Рекомендации по реагированию
Администраторам Ghost CMS следует незамедлительно выполнить следующие действия:
- Обновить Ghost до версии 6.19.1 или выше — уязвимость устранена именно в этом релизе
- Ротировать все учётные данные, включая ключи Admin API и Content API, пароли базы данных и учётные записи администраторов
- Провести аудит контента — проверить все опубликованные статьи на наличие посторонних JavaScript-вставок, особенно в конце страниц
- Проверить журналы доступа на предмет подозрительных запросов к Content API и Admin API, особенно массовых операций редактирования
- Заблокировать выявленные индикаторы компрометации на уровне сетевого оборудования и WAF
- Уведомить пользователей, которые могли посещать сайт в период компрометации, о потенциальном риске
Учитывая, что эксплуатация не требует аутентификации и позволяет полностью контролировать публикуемый контент через Admin API, приоритет обновления — максимальный. Каждый необновлённый экземпляр Ghost CMS с доступным из интернета Content API является потенциальной целью. Если обновление невозможно немедленно, следует как минимум ограничить внешний доступ к API через сетевые правила и проверить текущее содержимое сайта на наличие несанкционированных изменений.