// Безопасность / Веб

Критическая уязвимость WordPress-плагина Sneeit Framework

wordpress уязвимость

Критическая уязвимость WordPress-плагина Sneeit Framework

Критическая уязвимость удалённого выполнения кода (CVE-2025-6389) в плагине Sneeit Framework для WordPress активно эксплуатируется злоумышленниками по всему миру.
С максимальной оценкой CVSS 9.8 эта уязвимость неаутентифицированного RCE позволяет атакующим выполнять произвольный PHP-код на уязвимых установках WordPress, что приводит к полной компрометации сайта.

С момента публичного раскрытия уязвимости 24 ноября 2025 года зафиксировано более 131 000 попыток эксплуатации, направленных примерно на 1 700 активных установок.


Обзор уязвимости

Техническая классификация

ПараметрДетали
CVE IDCVE-2025-6389
Оценка CVSS9.8 (Critical)
Тип уязвимостиУдалённое выполнение кода без авторизации (Unauthenticated RCE)
Затронутый плагинSneeit Framework
Уязвимые версии8.3 и ниже
Исправленная версия8.4+
Активных установок~1 700 сайтов на WordPress
Нужна аутентификация?Нет
Дата обнаружения10 июня 2025
Дата выхода патча5 августа 2025
Публичное раскрытие24 ноября 2025
Начало эксплуатации24 ноября 2025 (в тот же день)

Хронология событий

ДатаСобытие
10 июня 2025Уязвимость обнаружена исследователем безопасности Tonn
23 июня 2025Пользователи Wordfence Premium получают защиту фаервола
23 июля 2025Пользователи бесплатного Wordfence получают защиту
5 августа 2025Вендор выпускает исправленную версию 8.4
24 ноября 2025Публичное раскрытие информации об уязвимости
24 ноября 2025Начало активных кампаний по эксплуатации
Декабрь 2025Зафиксировано более 131 000 заблокированных попыток эксплуатации

Технический разбор

Первопричина

Уязвимость вызвана недостаточной проверкой входных данных в функции sneeitarticlespaginationcallback.
Плагин передаёт параметры, полученные от пользователя, в PHP-функцию call_user_func без должной санитизации и ограничений, открывая прямой путь к выполнению произвольного кода.

Уязвимый шаблон поведения:

  • Функция sneeitarticlespaginationcallback:
    • принимает параметр callback (контролируется пользователем),
    • принимает параметр args (контролируется пользователем),
    • передаёт их напрямую в call_user_func без валидации,
    • при этом нет проверок аутентификации.

Итог: любой внешний пользователь может вызвать произвольную PHP-функцию с произвольными аргументами.

Детали вектора атаки

Злоумышленники эксплуатируют уязвимость, отправляя специально сформированные AJAX POST-запросы к административной точке входа WordPress:

  • Целевой endpoint: wp-admin/admin-ajax.php

Ключевые параметры эксплуатации:

  • action: sneeitarticlespaginationcallback
  • callback: имя произвольной PHP-функции
  • args: вредоносные параметры/код

Методика атаки

ФазаДействие злоумышленникаЦель
1. РазведкаВызов функции phpinfo()Сбор информации о конфигурации сервера
2. ЗакреплениеСоздание учётных записей администраторов через wp_insert_userПолучение устойчивого доступа
3. БэкдорыЗагрузка вредоносных PHP-файловРазвёртывание web-shell’ов и тулзов
4. Повышение привилегий / обход ограниченийМодификация .htaccessОбход ограничений на загрузку и выполнение
5. Латеральное движениеДеплой дополнительных payload’овРасширение контроля, эксфильтрация данных

Известные вредоносные файлы и IoC

Сигнатуры вредоносов

Имя файлаТипНазначение
xL.phpWeb ShellУдалённое выполнение команд, управление файлами
Canonical.phpБэкдорСканирование директорий, изменение прав доступа
upsf.phpDownloaderЗагрузка дополнительных payload’ов с C2-сервера
tijtewmg.phpWeb ShellЗагрузка/выгрузка файлов, распаковка ZIP-архивов
finderdata.txtData fileХранение собранной информации о системе/сайте
goodfinderdata.txtData fileИнвентаризация скомпрометированных сайтов

Инфраструктура управления (C2)

Тип индикатораЗначениеНазначение
Доменracoonlab.topРаспространение вредоносов и C2
Основной IP185.125.50.59>74 000 заблокированных запросов
Вторичный IP182.8.226.51>24 200 заблокированных запросов
Третий IP89.187.175.80>4 600 заблокированных запросов

Индикаторы компрометации (IoC)

Администраторам сайтов следует проверить:

1. Аномалии в учётных записях

  • Новые учётные записи администраторов с подозрительными логинами
  • Создание админ-аккаунтов в нерабочее время
  • Несколько админ-учёток, созданных с одного IP-адреса

2. Изменения в файловой системе

  • Неизвестные PHP-файлы в директориях WordPress
  • Изменённые .htaccess в каталогах загрузок
  • Новые директории с случайными буквенно-цифровыми названиями
  • Файлы с правами на выполнение в папках загрузок (wp-content/uploads и др.)

3. Следы в логах

  • POST-запросы к admin-ajax.php с параметрами callback / args
  • Запросы с известных вредоносных IP (см. таблицу выше)
  • Выполнение phpinfo() в access-логах
  • Вызовы wp_insert_user из подозрительных источников

4. Сетевые индикаторы

  • Исходящие соединения к домену racoonlab.top
  • Нетипично частые запросы к admin-ajax.php
  • Много неуспешных попыток логина, за которыми следует успешное создание админа

Оценка влияния

Матрица критичности рисков

Категория влиянияКритичностьОписание
КонфиденциальностьCriticalПолный доступ к базе данных, кража учётных данных
ЦелостностьCriticalПодмена контента, дефейс, инъекция вредоносного кода
ДоступностьHighПростой сайта, ресурсные атаки на сервер
Финансовые рискиHighРасходы на ликвидацию последствий, штрафы, потери выручки
РепутацияHighSEO-спам, распространение вредоносного ПО через сайт
Юридические рискиMedium–HighНарушение законов о защите данных, проблемы с PCI DSS

Последствия атаки

Непосредственные угрозы:

  • Полная компрометация установки WordPress
  • Несанкционированный административный доступ
  • Развёртывание вредоносного ПО и web-shell’ов
  • Манипуляции с базой данных, эксфильтрация данных
  • Инъекция SEO-спама и скрытых ссылок
  • Настройка вредоносных редиректов для пользователей

Долгосрочные риски:

  • Долгоживущие бэкдоры и скрытые точки доступа
  • Использование сайта как платформы для фишинговых кампаний
  • Превращение сайта в узел распространения вредоносов
  • Блокировка сайта поисковыми системами (blacklist)
  • Утечки данных клиентов и пользователей
  • Риски несоответствия требованиям регуляторов и стандартов

Митигирование и устранение

Немедленные действия

Приоритет 1: Обновить плагин (Critical)

  1. Сделать резервную копию сайта и базы данных
  2. Срочно обновить Sneeit Framework до версии 8.4 или выше
  3. Если плагин больше не нужен — деактивировать и удалить его
  4. Проверить установленную версию плагина, например:
wp plugin list --format=table

Приоритет 2: Аудит безопасности (Urgent)

Проверить признаки компрометации:

# Поиск известных вредоносных файлов
find /path/to/wordpress -name "xL.php" -o -name "Canonical.php" -o -name "upsf.php" -o -name "tijtewmg.php"

# Проверка администраторов
wp user list --role=administrator --format=table

# Просмотр недавно изменённых файлов (за 7 дней)
find /path/to/wordpress -type f -mtime -7 -ls

# Поиск типичных признаков бэкдоров (base64, eval)
grep -r "base64_decode" /path/to/wordpress/wp-content/plugins/
grep -r "eval(" /path/to/wordpress/wp-content/plugins/

Приоритет 3: Проверка доступа (High)

  1. Проверить все админ-аккаунты на предмет несанкционированных добавлений
  2. Принудительно сбросить пароли всех администраторов
  3. Включить двухфакторную аутентификацию (2FA) для админов
  4. Проанализировать историю входов (время, IP, страна)
  5. Проверить cron-задания на наличие вредоносных задач

Процедура очистки при подтверждённой компрометации

Шаг 1: Изоляция сайта

  • Перевести сайт в режим обслуживания или временно отключить внешний доступ
  • Заблокировать подозрительные IP на уровне фаервола
  • Временно ограничить или отключить обработку AJAX-запросов

Шаг 2: Удаление вредоносных файлов

  • Удалить все файлы из списка IoC
  • Просканировать код на наличие eval(), base64_decode(), system(), shell_exec() и др. опасных функций
  • Удалить несанкционированные изменения в .htaccess
  • Очистить подозрительные .txt-файлы в директориях загрузок, если они используются злоумышленниками

Шаг 3: Очистка базы данных

  • Удалить неавторизованные учётные записи администраторов
  • Проверить таблицу wp_options на наличие внедрённого кода
  • Проверить wp_posts на SEO-спам, скрытые редиректы и ссылки
  • Убедиться в целостности таблицы wp_users

Шаг 4: Восстановление целостности

  • Переустановить ядро WordPress из оригинального дистрибутива
  • Обновить все темы и плагины до последних версий
  • По возможности — восстановить сайт из чистой резервной копии
  • Сменить все пароли (админы, FTP/SFTP, SSH, база данных, панели управления, API-ключи)

Шаг 5: Включить мониторинг

  • Включить и настроить журналирование безопасности в WordPress
  • Настроить контроль целостности файлов
  • Включить уведомления о создании новых админ-аккаунтов
  • Отслеживать признаки активности по IoC (файлы, домены, IP, запросы)

Рекомендации по предотвращению

Мера защитыРеализацияПриоритет
Регулярные обновленияАвтообновление плагинов, тем и ядраCritical
Web Application FirewallWAF (Wordfence, Sucuri, Cloudflare и др.)Critical
Мониторинг целостностиAIDE, Tripwire или аналогиHigh
Ужесточение конфигурацииЗапрет редактирования файлов, ограничение типов файлов загрузкиHigh
Контроль доступаПринцип минимально необходимых привилегийHigh
2FAОбязательная двухфакторная авторизация для админовHigh
Регулярные сканыПлановые сканирования на уязвимостиMedium
Резервное копированиеЕжедневные автоматические бэкапы с хранением вне сервераCritical
Мониторинг логовЦентрализованные логи, интеграция с SIEMMedium
План реагированияДокументированные процедуры при инцидентахMedium

Рекомендации по безопасности

Чек-лист по усилению защиты WordPress

Безопасность конфигурации:

  • Отключить XML-RPC, если он не используется
  • Ограничить количество попыток входа (например, 3–5 неудачных)
  • Изменить стандартный префикс БД wp_
  • Отключить листинг директорий на веб-сервере
  • Убрать отображение версии WordPress с публичных страниц
  • Запретить редактирование файлов через админку:
define('DISALLOW_FILE_EDIT', true);

Управление плагинами:

  • Проводить аудит установленных плагинов не реже одного раза в квартал
  • Удалять неиспользуемые и заброшенные плагины
  • Устанавливать плагины только из официального репозитория WordPress
  • Перед установкой проверять дату последнего обновления и репутацию разработчика
  • Анализировать, какие права и доступы запрашивает плагин

Защита на уровне сервера:

  • Обновлённая версия PHP (8.0+)
  • Правильные права доступа к файлам (обычно 644 для файлов, 755 для директорий)
  • Отключение опасных PHP-функций (exec, shell_exec, system и т.п.)
  • Использование ModSecurity и специализированных правил для Apache/Nginx
  • Включённый антивирус/анти-malware на уровне сервера

Мониторинг и детектирование

Ключевые метрики, за которыми нужно следить:

МетрикаНормальный уровеньПодозрительная активность
Запросы к admin-ajax.php< 100 в час> 500 в час
Неудачные попытки входа< 10 в день> 50 в день
Новые админ-аккаунтыПо известному плануВне графика, без одобрения
Модификации файловВ рамках обновленийСлучайные изменения вне релизов
Исходящие соединенияИзвестные сервисыНа неизвестные домены/IP
Нагрузка CPU/памяти< 70% в среднемДлительная работа > 90%

Требования комплаенса

Если организация попадает под действие регуляторных требований:

GDPR:

  • При возможной утечке персональных данных — уведомить регулятора в течение 72 часов
  • Документировать действия по реагированию
  • Оценить масштаб и влияние инцидента

PCI DSS:

  • Проводить ежеквартальные сканы уязвимостей
  • Не реже раза в год — пентест
  • Поддерживать безопасную конфигурацию системы
  • Внедрить процедуру управления изменениями (change management)

Дополнительные ресурсы


Заключение

Уязвимость CVE-2025-6389 в плагине Sneeit Framework представляет собой критическую угрозу для безопасности WordPress-сайтов и уже активно используется в массовых автоматизированных атаках.

Ключевой фактор опасности:

  • эксплуатация возможна без аутентификации,
  • достаточно одного RCE-запроса, чтобы получить полный контроль над сайтом,
  • масштаб атак уже измеряется сотнями тысяч попыток.

Администраторам сайтов необходимо рассматривать эту ситуацию как инцидент высокого приоритета, требующий немедленных действий: обновление, аудит, очистка и внедрение дополнительных мер защиты.

Организации, использующие Sneeit Framework, должны:

  • внедрить постоянный мониторинг безопасности,
  • выстроить процесс регулярного обслуживания и обновления плагинов,
  • иметь рабочую стратегию резервного копирования и восстановления.

Ключевые выводы:

  • Немедленно обновите Sneeit Framework до версии 8.4+
  • Проведите аудит на предмет компрометации и IoC
  • Включите WAF и мониторинг целостности файлов
  • Настройте регулярное обслуживание и обновление WordPress-стека
  • Держите офлайн-бэкапы для быстрого восстановления после инцидента

Будьте внимательны к безопасности и не откладывайте установку критических обновлений — окно между публичным раскрытием и массовой эксплуатацией сегодня измеряется часами, а не неделями.

Профильные услуги SecurityLab: тестирование на проникновение · пентест веб-приложений · Пентест CMS.

← назад в блог