WordPress, 6 сентября 2026: захват сайта в SEO Flow и хеши паролей в JetFormBuilder

5 и 6 сентября 2026 года в NVD появились пять high и critical карточек по плагинам WordPress. CNA везде WPScan, не Wordfence. Во всех пяти PR:N: логин на самом сайте не нужен. Это другая выборка, чем утренний дайджест 6 сентября с MemberDash и Frontend Admin.

Одна critical 9.8: SEO Flow by LupsOnline (slug lupsonline-link-netwerk), версии 3.0.0–3.0.2. API-запросы принимают некорректный credential и отдают сессию администратора, который плагин настроил. WPScan: патч 3.0.3. Каталог wordpress.org на 6 сентября 2026 уже отдаёт 3.0.3, около 200 активных установок. Рядом четыре HIGH. RegistrationMagic (slug custom-registration-form-builder-with-submission-manager): вход по Facebook access_token без проверки, какому приложению его выдали, плюс создание учётки при выключенной регистрации. Патч WPScan 6.0.9.9, в каталоге 6.0.9.9, около 8 000 установок. Music Store (slug music-store): SQL-инъекция без логина через обработчик paypal-data. Патч 1.4.5, каталог уже 1.4.6. JetFormBuilder (slug jetformbuilder): гость читает свойства и метаданные пользователей, записей и терминов, включая хеши паролей. Патч 3.6.5.2, около 80 000 установок. Kirki (slug kirki): stored XSS через декодирование HTML-сущностей в комментарии. Патч 6.3.0, около 500 000 установок. NIST своей оценки ни по одной из пяти записей на 6 сентября 2026 не выставил: статус Received, балл поставил CISA ADP как Secondary.

Коротко: пять карточек 5–6 сентября

  • CVE-2026-78362, SEO Flow by LupsOnline (slug lupsonline-link-netwerk), WPScan: 3.0.0–3.0.2. Некорректная проверка credential в API: гость получает сессию администратора, который плагин настроил. Нужна обычная конфигурация плагина, не «секретный» режим. CISA ADP: CVSS 3.1 9.8 CRITICAL, вектор AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. CWE-269. Патч WPScan: 3.0.3.
  • CVE-2026-77826, RegistrationMagic (slug custom-registration-form-builder-with-submission-manager), WPScan: 5.0.1.8–6.0.9.8. Facebook access_token принимается как личность без проверки, какому приложению его выдали. Гость входит как существующий пользователь или создаёт учётку, даже если регистрация на сайте выключена. CISA ADP: CVSS 3.1 8.8 HIGH, AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H. CWE-287. Патч WPScan: 6.0.9.9.
  • CVE-2026-82304, Music Store (slug music-store) до 1.4.5. SQL-инъекция без логина: пользовательский ввод уходит в SQL. Заголовок WPScan указывает обработчик paypal-data. CISA ADP: CVSS 3.1 8.6 HIGH, AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N. CWE-89. Патч WPScan: 1.4.5.
  • CVE-2026-19858, JetFormBuilder (slug jetformbuilder) до 3.6.5.2. Нет проверки прав при разборе данных запроса во время отрисовки страницы. Гость читает произвольные свойства и метаданные пользователя, записи и термина, включая хеши паролей, черновики и секреты, которые плагин сам кладёт в мета. WPScan называет канал Dynamic Preset. CISA ADP: CVSS 3.1 7.5 HIGH, AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N. CWE-200. Патч WPScan: 3.6.5.2.
  • CVE-2026-84219, Kirki (slug kirki), WPScan: 6.2.1–6.2.5. Плагин декодирует не все написания HTML-сущностей. Гость сохраняет JavaScript в комментарии, оно выполняется у того, кто открывает страницу, в том числе у администратора, и на каждой странице, если шапка или подвал показывают комментарии. CISA ADP: CVSS 3.1 7.5 HIGH, AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H. CWE-79. Патч WPScan: 6.3.0.

Почему это важно на практике

Пять карточек, пять разных последствий. SEO Flow даёт захват сайта целиком: гость становится тем администратором, который подключил плагин к центральной платформе LupsOnline. RegistrationMagic бьёт в учётку через чужой Facebook-токен и умеет завести пользователя, даже когда users_can_register выключен. Music Store читает базу (в векторе C:H, I:N, A:N, Scope Changed). JetFormBuilder отдаёт хеши и чужие мета без логина. Kirki: stored XSS, не «сад XSS в админке», потому что комментарий пишет гость, а срабатывает он в сессии администратора и, при комментариях в шапке или подвале, на всём сайте.

Поверхность по каталогу wordpress.org на 6 сентября 2026. Kirki около 500 000 активных установок, текущая 6.3.0 (обновление 2 сентября 2026, 12:15 GMT). JetFormBuilder около 80 000, текущая 3.6.5.2 (2 сентября 2026, 12:46 GMT). RegistrationMagic около 8 000, текущая 6.0.9.9 (27 августа 2026, 07:50 GMT). SEO Flow и Music Store около 200 каждый: 3.0.3 от 31 августа 2026, 20:02 GMT и 1.4.6 от 31 августа 2026, 23:44 GMT. Малый slug не значит «можно не смотреть»: 9.8 в SEO Flow как раз про полный захват.

Оценки на 6 сентября 2026: балл везде CISA ADP, type Secondary. Статус NVD: Received, «NVD assessment not yet provided». Для обновления балл NIST не нужен: есть slug, диапазон WPScan и патч в каталоге. Публикация WPScan: 3 сентября 2026 (четыре карточки) и 4 сентября 2026 (Kirki). В NVD четыре записи появились 5 сентября 2026, около 07:17 UTC, Kirki 6 сентября 2026, около 07:16 UTC. Ссылок wordfence.com в references NVD нет, не выдумываю advisory Wordfence.

Приоритет простой. Сначала SEO Flow ниже 3.0.3, если slug вообще стоит: это critical без логина. Затем JetFormBuilder ниже 3.6.5.2: хеши паролей, 80 000 установок. Kirki ниже 6.3.0 закрывается тем же каталогом, но смотреть его стоит из-за полумиллиона копий, не из-за CVSS. RegistrationMagic ниже 6.0.9.9: карточка прямо пишет условие UI:R, нужен Facebook access_token. Music Store ниже 1.4.5: SQLi без логина, установок мало, патч в каталоге уже как 1.4.6.

CVE-2026-78362: SEO Flow, API без нормальной проверки ключа

Карточка NVD опубликована 5 сентября 2026, 07:17 UTC, источник WPScan, статус Received. Описание: плагин до 3.0.3 некорректно проверяет credential в API-запросах. Неаутентифицированный пользователь получает сессию администратора, который настроил SEO Flow. Условие эксплуатации: плагин должен быть сконфигурирован, и это его нормальное рабочее состояние, не экзотика. Заголовок WPScan: SEO Flow by LupsOnline 3.0.0–3.0.2, Unauthenticated Privilege Escalation via API Key Authentication. Тип PRIVESC, CWE-269. Исследователь и submitter: Naoki Kawahigashi. Публикация WPScan: 3 сентября 2026. В NVD одна ссылка: карточка WPScan. Оценки WPScan и CISA ADP совпадают: 9.8, тот же вектор с PR:N и UI:N.

Патч WPScan: Fixed in 3.0.3. В changelog wordpress.org у 3.0.3 дата 31 августа 2026 и строка «Fixed: Security fix (reported by Naoki Kawahigashi)». API каталога на 6 сентября 2026 отдаёт текущую 3.0.3, около 200 установок. Slug в каталоге lupsonline-link-netwerk, не seo-flow: плагин вырос из Link Netwerk, главный файл в теге 3.0.3 называется linknetwerk.php. Readme 3.0.3 описывает центральную платформу для ссылок и гостевых блогов. Не путать с другими SEO-плагинами: проверяйте slug, не название в меню. Если slug на сайте нет, эта CVE к нему не относится.

CVE-2026-77826: RegistrationMagic, Facebook-токен без аудитории

NVD: 5 сентября 2026, 07:17 UTC, WPScan, Received. Плагин до 6.0.9.9 не проверяет, какому приложению выдан Facebook access_token, и принимает его как доказательство личности. Гость входит как существующий пользователь, чей токен удалось добыть, либо создаёт новую учётку и входит в неё, даже когда регистрация пользователей выключена. Заголовок WPScan: RegistrationMagic 5.0.1.8–6.0.9.8, Unauthenticated Authentication Bypass via Missing Facebook Token Audience Validation. Тип AUTHBYPASS, CWE-287. Исследователь: Mutantgun. Публикация WPScan: 3 сентября 2026. В векторе UI:R: без токена сценарий не собирается. Это тот же класс ошибки, что в утренней карточке HivePress Authentication, только здесь отдельно написано про создание учётки при выключенной регистрации.

Патч WPScan: 6.0.9.9. Changelog wordpress.org у 6.0.9.9: 27 августа 2026, «Security improvements», в благодарностях есть Mutantgun вместе с Charles Vosburgh, Vũ Quang Huy и Sai Praneeth Koti. Каталог на 6 сентября 2026 отдаёт 6.0.9.9, около 8 000 установок, homepage registrationmagic.com, автор Metagauss. Slug длинный: custom-registration-form-builder-with-submission-manager. Команда wp plugin update registrationmagic этот пакет не найдёт. Карточка относится к сайту, если slug стоит и в плагине включён вход через Facebook. Точной строки «Facebook выключен» в advisory нет: смотрите опции плагина, не только галочку на странице Настройки → Обсуждение.

CVE-2026-82304: Music Store, SQLi в paypal-data

NVD: 5 сентября 2026, 07:17 UTC, WPScan, Received. Плагин до 1.4.5 не экранирует пользовательский ввод перед SQL. Инъекцию эксплуатирует неаутентифицированный пользователь. Заголовок WPScan: Music Store – WordPress eCommerce < 1.4.5, Unauthenticated SQLi via paypal-data Handler. Тип SQLI, CWE-89. В карточке WPScan исследователь указан как nobody, submitter Aleksandar. Публикация WPScan: 3 сентября 2026. Вектор CISA ADP 8.6 с Scope Changed и C:H: чтение данных, не обязательно запись в базу. Рабочий payload в статье не нужен: достаточно имени обработчика из заголовка WPScan и версии.

Патч WPScan: 1.4.5. Changelog wordpress.org у 1.4.5: «Increase the plugin security (special thanks to Erwan Le Rousseau and WPScan team)». Текущая в каталоге на 6 сентября 2026: 1.4.6 (31 августа 2026, 23:44 GMT), около 200 установок, автор codepeople. 1.4.6 в changelog чинит фильтрацию продаж по дате, это уже после security-релиза 1.4.5. Для этой CVE достаточно не ниже 1.4.5. Обновление из каталога подтянет 1.4.6. Не путать Music Store от CodePeople с другими магазинами музыки и с WooCommerce как таковым: смотрите slug music-store.

CVE-2026-19858: JetFormBuilder, мета и хеши через Dynamic Preset

NVD: 5 сентября 2026, 07:17 UTC, WPScan, Received. Плагин до 3.6.5.2 не проверяет права, когда во время отрисовки страницы разбирает данные из запроса. Гость читает произвольные свойства и метаданные пользователя, записи и термина. В описании NVD прямо: хеши паролей, приватный и черновой контент, секреты, которые JetFormBuilder сам хранит в мета. Заголовок WPScan: JetFormBuilder < 3.6.5.2, Unauthenticated Password Hash and Arbitrary Metadata Disclosure via Dynamic Preset. Тип SENSITIVE DATA DISCLOSURE, CWE-200. Исследователь: Jakub Herman. Публикация WPScan: 3 сентября 2026. Вектор 7.5, только конфиденциальность: I:N, A:N. Хеш из wp_users это не «сразу SSH», но это материал для офлайн-подбора и для смены сессии, если рядом слабый пароль.

Патч WPScan: 3.6.5.2. Changelog wordpress.org у 3.6.5.2 (2 сентября 2026) содержит строку «FIX: Harden preset access checks». В том же релизе вендор закрывает ещё несколько дыр (XSS в Media, инъекция заголовков письма, HTML в письме, слепая SQLi по payment token). Это не отдельные CVE из этой выборки, не приписываю им чужие идентификаторы. Каталог на 6 сентября 2026 отдаёт 3.6.5.2, около 80 000 установок, homepage jetformbuilder.com. Для этой карточки цель не ниже 3.6.5.2. Не путать с JetEngine и остальными JetPlugins: CVE про slug jetformbuilder.

CVE-2026-84219: Kirki, XSS через HTML-сущности в комментарии

NVD: 6 сентября 2026, 07:16 UTC, WPScan, Received. Плагин до 6.3.0 при отрисовке декодирует не все написания HTML-сущностей. Гость сохраняет JavaScript в комментарии. Скрипт выполняется у любого, кто открывает страницу с этим комментарием, включая администратора. Если шапка или подвал собираются так, чтобы показывать комментарии, код идёт на каждую страницу сайта. Заголовок WPScan: Kirki 6.2.1–6.2.5, Unauthenticated Stored XSS via HTML Entity Decoding. Тип XSS, CWE-79. Исследователь: Jakub Herman. Публикация WPScan: 4 сентября 2026. Вектор 7.5 с AC:H и UI:R: нужна и укладка комментария, и просмотр жертвой. NVD пишет «plugin before 6.3.0», WPScan сужает линейку до 6.2.1–6.2.5. Патч в обоих случаях 6.3.0. Не утверждаю, что 6.2.0 и ниже безопасны: ориентир обновления 6.3.0, не «у меня 6.1, в заголовке WPScan меня нет».

Патч WPScan: 6.3.0. Changelog wordpress.org у 6.3.0 (2 сентября 2026) среди прочего: «Fix: Addressed all known security vulnerabilities». Каталог на 6 сентября 2026 отдаёт 6.3.0, около 500 000 установок, homepage kirki.com, автор Themeum. Slug kirki. Плагин давно вышел за рамки Customizer-фреймворка, в каталоге он уже Freeform Page Builder. Комментарии WordPress, если открыты гостям, это как раз канал «сохранить JS без учётки». После 6.3.0 имеет смысл пройти модерацию комментариев, не только версию.

Что проверить WP-CLI

Команды для сервера, где есть WP-CLI, из каталога сайта или с --path=. Перед обновлением: копия файлов и базы. Все пять slug есть в каталоге wordpress.org, wp plugin update их подтянет.

Есть ли эти slug и какие версии:

wp plugin list --fields=name,title,status,version | grep -Ei 'lupsonline-link-netwerk|custom-registration-form-builder-with-submission-manager|music-store|jetformbuilder|^kirki|seo flow|registrationmagic'

Ориентиры по источникам, не по догадке:

  • lupsonline-link-netwerk: WPScan 3.0.0–3.0.2, цель 3.0.3 (в каталоге 6.09.2026 уже 3.0.3);
  • custom-registration-form-builder-with-submission-manager: WPScan 5.0.1.8–6.0.9.8, цель 6.0.9.9;
  • music-store: всё ниже 1.4.5 уязвимо, цель WPScan 1.4.5 (в каталоге уже 1.4.6);
  • jetformbuilder: всё ниже 3.6.5.2 уязвимо, цель 3.6.5.2;
  • kirki: WPScan 6.2.1–6.2.5, NVD до 6.3.0, цель 6.3.0.

Пакеты, которые каталог уже отдаёт с патчем. Команда меняет файлы плагинов. Сначала копия. Подставляйте только те slug, которые реально стоят: обновление отсутствующего пакета из каталога может поставить его с нуля.

wp plugin update lupsonline-link-netwerk custom-registration-form-builder-with-submission-manager music-store jetformbuilder kirki

Версии после обновления:

wp plugin get lupsonline-link-netwerk --field=version
wp plugin get custom-registration-form-builder-with-submission-manager --field=version
wp plugin get music-store --field=version
wp plugin get jetformbuilder --field=version
wp plugin get kirki --field=version

Ожидаемый результат: SEO Flow не ниже 3.0.3, RegistrationMagic не ниже 6.0.9.9, Music Store не ниже 1.4.5, JetFormBuilder не ниже 3.6.5.2, Kirki не ниже 6.3.0. Если wp plugin get отвечает, что плагина нет, эта CVE к сайту не относится. Пустой grep по пяти slug: вся пятёрка к сайту тоже не относится.

Пользователи и uploads

Смотреть пользователей стоит из-за SEO Flow и RegistrationMagic: первая карточка отдаёт сессию администратора, вторая входит как существующий пользователь или заводит учётку при выключенной регистрации. Команды только читают списки:

wp option get users_can_register
wp user list --role=administrator --fields=ID,user_login,user_email,user_registered,roles
wp user list --fields=ID,user_login,user_email,user_registered,roles --orderby=registered --order=DESC --format=table

Ищите почту «мимо» организации, дату регистрации после включения уязвимой версии, лишнюю роль administrator, смену email у старого ID. Пароли через WP-CLI не печатайте. Если стоял SEO Flow ниже 3.0.3, после 3.0.3 сменить пароли администраторов и сессии: advisory как раз про выдачу администраторской сессии. Если стоял RegistrationMagic ниже 6.0.9.9 с Facebook-входом, смотреть новые учётки и привязки, не полагаться на выключенную регистрацию WordPress. Если стоял JetFormBuilder ниже 3.6.5.2, хеши могли уйти наружу: смена паролей администраторов здесь уже про последствия утечки, не про «плагин сам меняет пароль».

Прямого file upload в этой пятёрке нет. После захвата администратора в SEO Flow PHP в wp-content/uploads появляется уже как следующий шаг, не как вектор CVE. У Music Store и JetFormBuilder вектор про чтение данных. У Kirki: комментарии, не загрузка файла. Имеет смысл пройтись по PHP в uploads, если стоял SEO Flow или RegistrationMagic ниже патча, либо если список пользователей уже подозрительный. Команды ничего не удаляют. Запускайте из корня сайта.

find wp-content/uploads -type f \( -iname '*.php' -o -iname '*.phtml' -o -iname '*.phar' \) 2>/dev/null | head

Непустой PHP в uploads это повод смотреть дату, владельца и access-лог, а не сразу rm без копии. Маркеры в access-логе nginx (путь к логу свой). Это не доказательство взлома, а способ понять, стучались ли. Рабочий payload в лог не нужен: достаточно slug, paypal-data, wp-comments-post.php и префиксов из заголовков WPScan.

sudo grep -Ei 'lupsonline-link-netwerk|linknetwerk|seo.?flow|registrationmagic|custom-registration-form-builder-with-submission-manager|music-store|paypal-data|jetformbuilder|kirki|wp-comments-post.php|wp-login.php|facebook' /var/log/nginx/access.log | tail -n 200

Где обычно ломается реакция

  • Ищут SEO Flow по slug seo-flow и решают, что плагина нет. В каталоге и на диске slug lupsonline-link-netwerk.
  • Путают RegistrationMagic с коротким именем registrationmagic. Обновление идёт по custom-registration-form-builder-with-submission-manager.
  • Считают RegistrationMagic закрытым, потому что в Настройках WordPress регистрация выключена. Advisory отдельно пишет, что новую учётку можно создать и в этом случае.
  • Игнорируют Kirki как «просто XSS» при 500 000 установок. Карточка про гостевой комментарий и сессию администратора, не про поле в Customizer.
  • Оставляют JetFormBuilder на 3.6.5.1, потому что «формы только для своих». Advisory описывает разбор данных запроса при отрисовке страницы без логина.
  • Ждут оценку NIST. Для обновления её не нужно: CNA WPScan, slug и патч в каталоге уже есть.

Вывод

5–6 сентября 2026 NVD разложил пять плагинных CVE от WPScan: одну critical 9.8 и четыре high. Во всех PR:N. Самая жёсткая по смыслу: захват сайта в SEO Flow, патч 3.0.3, slug lupsonline-link-netwerk. Самая широкая по каталогу: Kirki 6.3.0 и JetFormBuilder 3.6.5.2. RegistrationMagic закрывается 6.0.9.9, но без Facebook-токена карточка вход администратора не обещает. Music Store: SQLi без логина, патч 1.4.5, в каталоге уже 1.4.6.

Рабочий минимум: сверить пять slug, обновить стоящие пакеты из wordpress.org. Затем администраторы, новые учётки, комментарии Kirki, PHP в uploads как следствие захвата, не как вектор. Эксплойт в статье не нужен: версия, чужой administrator и PHP в uploads говорят достаточно.

Источники


Комментарии загружаются…