Уязвимость в плагине CMP Wordpress
Уязвимость в плагине CMP Wordpress
Категория: Программы Теги: учет заявок Опубликовано: 14 апреля 2025

Уязвимость CVE-2025-32118 в плагине Coming Soon & Maintenance Wordpress

В плагине CMP – Coming Soon & Maintenance для WordPress (версии до 4.1.13 включительно) обнаружена критическая уязвимость (CVE-2025-32118), позволяющая аутентифицированному пользователю с правами администратора загружать ZIP-архивы с опасным содержимым. Из-за отсутствия проверки типов файлов злоумышленник может внедрить PHP-шелл, что приводит к полному компрометированию сайта и сервера. Оценка CVSS 3.1 составляет 9.1 (CRITICAL), так как атака возможна удаленно, требует низкой сложности эксплуатации и приводит к потере конфиденциальности, целостности и доступности данных.

Для успешной эксплуатации CVE-2025-32118 требуется доступ к учетной записи администратора WordPress.

Уровень опасности: 9.1 КРИТИЧЕСКИЙ
Вектор атаки: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H

  • Вектор атаки (AV): Сетевой (N) — уязвимость доступна для эксплуатации через сеть.

  • Сложность атаки (AC): Низкая (L) — эксплуатация уязвимости не требует сложных условий или специфических навыков.

  • Необходимые привилегии (PR): Высокие (H) — злоумышленнику требуются значительные права доступа к системе (например, административные).

  • Вовлечение пользователя (UI): Не требуется (N) — эксплуатация уязвимости не требует действий пользователя.

  • Влияние на другие системы (S): Оказывает (C) — уязвимость может повлиять на ресурсы за пределами защищаемого компонента.

  • Влияние на конфиденциальность (C): Высокий (H) — полная компрометация конфиденциальности данных.

  • Влияние на целостность (I): Высокий (H) — полная компрометация целостности данных или системы.

  • Влияние на доступность (A): Высокий (H) — полная компрометация доступности системы или данных.

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

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

  1. Создание вредоносного ZIP-архива
    Эксплойт генерирует архив, содержащий:

    • style.css — валидный файл темы WordPress для обхода базовых проверок.

    • nxploitedshell.php — PHP-скрипт с функцией выполнения системных команд через параметр cmd.

    Архив имитирует тему для плагина CMP, что позволяет использовать легальный путь загрузки (cmp-premium-themes).

  2. Аутентификация и загрузка

    • Злоумышленник авторизуется в админ-панели WordPress, используя украденные или скомпрометированные учетные данные.

    • Извлекает CSRF-токен (nonce) со страницы загрузки тем (/wp-admin/admin.php?page=cmp-upload-theme).

    • Отправляет POST-запрос с архивом на эндпоинт /wp-admin/admin.php?page=cmp-settings, где плагин некорректно обрабатывает загруженные файлы.

  3. Выполнение произвольного кода
    После успешной загрузки PHP-шелл сохраняется по пути:
    /wp-content/plugins/cmp-premium-themes/nxploitedshell/nxploitedshell.php.
    Злоумышленник выполняет команды через GET-параметр cmd, например:
    http://target-site[.]com/.../nxploitedshell.php?cmd=id

Факторы риска

  • Требуется аутентификация администратора: Уязвимость актуальна для сайтов, где злоумышленник получил доступ к учетным данным админа (например, через фишинг, brute force или утечки).

  • Отсутствие валидации файлов: Плагин не проверяет расширения файлов внутри архива и не ограничивает загрузку исполняемых скриптов.

  • Высокие привилегии плагина: CMP имеет доступ к системным директориям WordPress, что упрощает внедрение шелла.

Возможные последствия

  • Полный контроль над сайтом: модификация контента, кража данных пользователей, установка бэкдоров.

  • Компрометация сервера: выполнение команд на уровне ОС, атаки на соседние сервисы, криптоджекинг.

  • Репутационные и финансовые потери для владельца ресурса.

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

  1. Обновление плагина
    Установите версию CMP, выпущенную после 4.1.13. Разработчики должны добавить проверку типов файлов и ограничить загрузку только безопасными расширениями (CSS, изображения).

  2. Контроль доступа

    • Используйте двухфакторную аутентификацию для администраторов.

    • Регулярно аудитируйте учетные записи и отзывайте неиспользуемые.

  3. Система защиты веб-приложений (WAF)
    Настройте WAF для блокировки подозрительных запросов, например, содержащих параметры типа cmd в URL.

  4. Мониторинг файловой системы
    Внедрите инструменты для отслеживания изменений в директориях плагинов (например, Tripwire или OSSEC).

  5. Принцип минимальных привилегий
    Запускайте WordPress под отдельным пользователем с ограниченными правами, чтобы снизить ущерб от RCE.

  6. Ручная проверка
    Если обновление невозможно, отключите плагин и проверьте директорию /cmp-premium-themes/ на наличие несанкционированных файлов.

Алексей Черемных Алексей Черемных
127

Похожие материалы: