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

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

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

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

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

Категории

Все категории
Loading categories
By-Poloss..-.CVE-2026-89274 — Python PoC-эксплойт для CVE-2026-89274 — уязвимости неаутентифицированного выполнения произвольных шорткодов в WordPress WP Recipe Maker <= 10.8.1 через комментарии к рецептам. | Kitploit
Инструменты/GitHubGitHub/polosss/by-poloss..-.cve-2026-89274
Сканеры уязвимостейАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийВеб-безопасностьТестирование на Проникновение
GitHubpolosss/by-poloss..-.cve-2026-89274

By-Poloss..-.CVE-2026-89274

Python PoC-эксплойт для CVE-2026-89274 — уязвимости неаутентифицированного выполнения произвольных шорткодов в WordPress WP Recipe Maker <= 10.8.1 через комментарии к рецептам.

Репозиторий
6 ч 51 мин назадЕщё не проверено

Популярное

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

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

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

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

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

CVE-2026-89274 PoC

Poloss : @WPEF0

status python license

Proof-of-Concept эксплойт для CVE-2026-89274 — уязвимость Unauthenticated Arbitrary Shortcode Execution в плагине WordPress WP Recipe Maker версии ≤ 10.8.1.

⚠️ ПРАВОВОЕ И ЭТИЧЕСКОЕ ПРЕДУПРЕЖДЕНИЕ Этот скрипт предоставлен исключительно для исследований в области безопасности в локальной среде (localhost/lab) и не должен использоваться против систем, которые вам не принадлежат, или без письменного разрешения. Автор не несёт ответственности за неправомерное использование. Использование против систем третьих лиц без авторизации может нарушать уголовное законодательство.


📌 Краткое описание уязвимости

ПолеЗначение
CVE IDCVE-2026-89274
ЦельWP Recipe Maker (wp-recipe-maker) ≤ 10.8.1
КлассCode Injection (CWE-94) — Arbitrary Shortcode Execution
CVSS v3.19.1 Critical (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N)
ВекторСодержимое комментария к рецепту (unauthenticated)
Sinkdo_shortcode() в class-wprm-metadata.php
ВоздействиеВыполнение shortcode на стороне сервера → утечка данных через публичный JSON-LD
АвторPoloss

Root Cause (patch-diff 10.8.1 → 10.8.4)

includes/public/class-wprm-metadata.php :: sanitize_metadata()

Уязвимая версия (10.8.1):

root@kitploit:~
$sanitized = strip_shortcodes( wp_strip_all_tags( do_shortcode( $metadata ) ) );

do_shortcode() выполняет shortcode первым, а затем strip_shortcodes() лишь очищает его вывод — защиты нет вообще.

Исправленная версия (10.8.4):

root@kitploit:~
$sanitized = strip_shortcodes( wp_strip_all_tags(
    WPRM_Instacart::do_shortcode_safe( $metadata ) ) );

Поток данных

root@kitploit:~
comment_content (публичный комментарий к посту с рецептом)
   └─> reviewBody        (class-wprm-metadata.php:1017)
       └─> $metadata['review'][]   (line 1028)
           └─> sanitize_metadata( get_metadata( $recipe ) )  (line 374)
               └─> do_shortcode( $reviewBody )  ← SINK ВЫПОЛНЕНИЯ
                   └─> wp_json_encode() в <script type="application/ld+json">

Предварительные условия

  1. Комментарий содержит поле wprm-comment-rating (заполняется через форму комментария).
  2. Комментарий одобрен (авто-одобрение или вручную модератором).
  3. Аутентификация не требуется.

⚙️ Установка

root@kitploit:~
git clone <repo-url>
cd <repo>
python3 -m venv .venv
source .venv/bin/activate     # Windows: .venv\Scripts\activate
# Внешних зависимостей нет — только стандартная библиотека Python 3.

Требования: Python 3.8+.


🚀 Использование

Одиночная цель

root@kitploit:~
python3 CVE-2026-89274.py -u http://localhost:8080 -p 10 \
    --shortcode '[wprm-recipe-name id=11]' \
    --marker 'PoC Recipe'

Множество целей (файл)

Формат targets.txt (по одной на строку, url[,post_id]):

root@kitploit:~
http://lab1.local,10
http://lab2.local,25
# строки-комментарии игнорируются
http://lab3.local,7
root@kitploit:~
python3 CVE-2026-89274.py -f targets.txt -t 10 -o loot.json

Опции CLI

ФлагПо умолчаниюОписание
-u, --url—URL одиночной цели
-f, --file—Файл со списком целей (url[,post_id] на строку)
-p, --post10ID поста, содержащего рецепт
-t, --threads5Количество рабочих потоков
-o, --outputcve-2026-89274-loot.jsonФайл вывода JSON
--shortcode[wprm-recipe-name id=11]Выполняемый payload shortcode
--markerPoC RecipeПодстрока для подтверждения выполнения в reviewBody
--rating5Значение рейтинга WPRM
--timeout25Таймаут на запрос (секунды)

🔍 Как работает скрипт

  1. Baseline — GET страницы поста, извлечение блока <script type="application/ld+json">, сбор reviewBody.
  2. Отправка комментария — POST на /wp-comments-post.php с payload + поле wprm-comment-rating.
  3. Опрос — повторный GET страницы несколько раз для обнаружения авто-одобрения комментария.
  4. Проверка — Если --marker появляется в reviewBody → EXPLOITED. Если нет → PENDING_APPROVAL.
  5. Вывод — Сохранение результатов в JSON.

Статусы вывода

СтатусЗначение
EXPLOITEDShortcode выполнен, вывод утёк в публичный JSON-LD
PENDING_APPROVALКомментарий отправлен, ожидает одобрения модератора
FAILСтраница недоступна / комментарий отклонён / ошибка

📄 Пример вывода JSON

root@kitploit:~
[
  {
    "target": "http://localhost:8080",
    "post_id": 10,
    "shortcode": "[wprm-recipe-name id=11]",
    "marker": "PoC Recipe",
    "author": "poc1716000000",
    "review_bodies": ["PoC Recipe"],
    "status": "EXPLOITED",
    "evidence": "PoC Recipe",
    "note": "shortcode executed server-side; output leaked into public JSON-LD reviewBody",
    "elapsed": 9.12
  }
]

🛡️ Рекомендации по устранению

  • Обновите WP Recipe Maker до ≥ 10.8.4.
  • В качестве временной меры отключите комментарии к постам с рецептами или установите comment_moderation = 1 и строго проверяйте комментарии.
  • Примените правило WAF для блокировки синтаксиса shortcode ([...]) в полях комментариев.
  • Проверьте старые комментарии на наличие подозрительных payload shortcode.

📁 Структура репозитория

root@kitploit:~
.
├── CVE-2026-89274.py           # основной эксплойт
└── README.md                   # этот документ
Скачать инструмент