Skip to content
KitploitKITPLOIT
ИнструментыБлог
Log in
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2026-1657 — Неаутентифицированная произвольная загрузка файлов в плагине EventPrime | Kitploit
Инструменты/GitHubGitHub/d3kc4rt1/cve-2026-1657
Анализ уязвимостейАнализ КодаЭксплуатацияВеб-безопасностьТестирование на ПроникновениеОбучение и Образование
GitHubd3kc4rt1/cve-2026-1657

CVE-2026-1657

Неаутентифицированная произвольная загрузка файлов в плагине EventPrime

Репозиторий
115 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2026-1657: Неаутентифицированная произвольная загрузка файлов в плагине EventPrime

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

Краткое описание

В плагине EventPrime для WordPress (версии <= 4.2.8.1) была обнаружена уязвимость неаутентифицированной произвольной загрузки файлов. Этот дефект позволяет любому неаутентифицированному посетителю загружать файлы непосредственно в каталог uploads WordPress и создавать записи вложений в медиабиблиотеке.

Уязвимость существует из-за того, что конкретная AJAX-конечная точка явно зарегистрирована с nopriv (общедоступна) и не имеет ни проверок авторизации, ни надлежащей проверки содержимого файлов. Злоумышленники могут злоупотреблять этой конечной точкой, чтобы вызвать исчерпание дискового пространства, засорить медиабиблиотеку или потенциально загрузить вредоносные полезные нагрузки, замаскированные под изображения.

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

  • Идентификатор CVE: CVE-2026-1657
  • Продукт: EventPrime (плагин WordPress)
  • Затронутые версии: <= 4.2.8.1
  • Тип уязвимости: Неограниченная загрузка файла опасного типа (CWE-434)
  • Требуемые привилегии: Отсутствуют (неаутентифицированный доступ)

Технический анализ и первопричина

Первопричина — сочетание небезопасной регистрации AJAX-хука и недостаточной проверки файлов.

1. Небезопасная регистрация AJAX-конечной точки: В includes/class-eventprime-event-calendar-management.php плагин регистрирует действие upload_file_media. Примерно в строке 557 он задает {upload_file_media: true} в своей карте действий, где true означает поддержку _nopriv. Следовательно, хук gwp_ajax_nopriv_ep_upload_file_media регистрируется, что делает конечную точку доступной для любого пользователя.

2. Отсутствие проверок авторизации и nonce: Функция-обработчик upload_file_media() (в includes/class-ep-ajax.php, строки 1659-1697) не использует current_user_can() для проверки привилегий на загрузку и не проверяет security nonce.

3. Ошибочная логика проверки: Обработчик проверяет только расширение файла (например, jpg/jpeg/png/gif) на основе имени файла, предоставленного клиентом (строки 1661-1664). Он не выполняет надежную серверную проверку содержимого (например, getimagesize() или wp_check_filetype_and_ext()). Это означает, что вредоносные скрипты или другие типы файлов, переименованные в harmless.jpg, будут записаны на диск до того, как WordPress попытается сгенерировать метаданные.

4. Сохранение файла: Файл сохраняется с помощью move_uploaded_file() непосредственно в wp_upload_dir()['path'], а вложение WordPress создается через wp_insert_attachment().

Влияние на бизнес

  • Исчерпание дискового пространства (DoS): Злоумышленник может автоматизировать загрузку больших файлов, потребляя всё доступное дисковое пространство сервера или квоту облачного хранилища, что потенциально может привести к падению веб-сайта.
  • Спам в медиабиблиотеке: Злоумышленник может заполнить медиабиблиотеку неуместными или бесполезными изображениями, сделав её непригодной для администраторов.
  • Потенциал для дальнейшей эксплуатации: В сочетании с другими уязвимостями (например, Local File Inclusion — LFI, или если сервер неправильно настроен на выполнение images) это может привести к удаленному выполнению кода (RCE).

Подтверждение концепции (PoC)

Шаги для воспроизведения

1. Подготовьте полезную нагрузку: Создайте образец файла изображения на вашей локальной машине с именем poc.jpg.

2. Выполните запрос: Отправьте POST-запрос multipart/form-data на публичную AJAX-конечную точку без каких-либо сессионных cookie:

curl -i \
  -F "[email protected];filename=poc.jpg" \
  "http://TARGET_SITE/wp-admin/admin-ajax.php?action=ep_upload_file_media"

3. Просмотрите ответ: Сервер ответит 200 OK и вернет JSON-объект, содержащий идентификатор только что созданного вложения:

{"success":true,"data":{"attachment_id":117}}

4. Проверка:

  • Файл теперь хранится в wp-content/uploads/<year>/<month>/poc.jpg.
  • Администратор, посетивший медиабиблиотеку WordPress, увидит загруженный файл.

Устранение уязвимости

Чтобы устранить эту уязвимость, разработчики должны:

  1. Ограничить доступ к конечной точке: Удалите объявление nopriv, если по замыслу загрузка предназначена только для аутентифицированных пользователей.
  2. Внедрить проверки прав: Используйте current_user_can('upload_files'), чтобы гарантировать, что загрузка доступна только авторизованным привилегированным пользователям.
  3. Проверять nonce: Реализуйте check_ajax_referer(), чтобы предотвратить CSRF-атаки.
  4. Строгая проверка файлов: Используйте стандартные функции WordPress для обработки изображений (например, wp_handle_upload()), которые выполняют более строгие проверки MIME-типов и содержимого.

Хронология

  • Дата (2026-01-29): Сообщено в Wordfence.
  • Дата (2026-02-17): Уязвимость устранена / Публичное раскрытие.

Ссылки и благодарности

  • База данных уязвимостей Wordfence
  • CVE-2026-1657 на NVD
  • Плагин EventPrime на WordPress.org
Скачать инструмент