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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-11387-WooCommerce-SMS-OTP — Плагин SMS & OTP для WooCommerce, уведомления о заказах и восстановление брошенных корзин для WordPress; SMS Alert <3.9.6; Неаутентифицированное повышение привилегий (принудительный сброс пароля) | Kitploit
Инструменты/GitHubGitHub/abraxas/cve-2026-11387-woocommerce-sms-otp
Повышение привилегийАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийВеб-безопасностьТестирование на ПроникновениеАутентификация
GitHub

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
abraxas/cve-2026-11387-woocommerce-sms-otp

CVE-2026-11387-WooCommerce-SMS-OTP

Плагин SMS & OTP для WooCommerce, уведомления о заказах и восстановление брошенных корзин для WordPress; SMS Alert <3.9.6; Неаутентифицированное повышение привилегий (принудительный сброс пароля)

Репозиторий
43816 дней назадЕщё не проверено

Abraxas Labs

CVE-2026-11387

SMS Alert ≤ 3.9.5 — неаутентифицированное повышение привилегий через произвольный сброс пароля

Критическая уязвимость неправильной аутентификации в WordPress-плагине SMS Alert - SMS & OTP for WooCommerce, Order Notifications & Abandoned Cart Recovery. Когда для сброса пароля включена проверка OTP, неаутентифицированный злоумышленник может установить новый пароль для пользователя, у которого в профиле указан номер телефона, — включая администраторов — не подтверждая владение этим телефоном.

CVECVE-2026-11387
CWECWE-287: Improper Authentication
CVSS 3.19.8 Critical (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
VendorCozy Vision Technologies Pvt. Ltd.
ProductSMS Alert (sms-alert)
AffectedВсе версии вплоть до 3.9.5
Patched3.9.6 (27 июня 2026)
CNAWordfence

Этот репозиторий содержит proof-of-concept от Abraxas Labs, предназначенный только для авторизованного тестирования — раскрытия вендору, воспроизведения в лаборатории или хоста, на оценку которого у вас есть письменное разрешение.


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

SMS Alert перехватывает процесс восстановления пароля WooCommerce / WordPress таким образом, что новый пароль должен подтверждаться одноразовым кодом, отправленным по SMS. В уязвимых версиях обработчик, стоящий за option=smsalert-change-password-form, применяет smsalert_user_newpwd, не проверяя, что вызывающий прошёл проверку OTP или иным образом владеет учётной записью.

Официальная запись CVE также отмечает, что та же отсутствующая проверка личности может быть использована для изменения email-адреса жертвы и последующего захвата учётной записи через обычный сброс. Любой из этих путей — неаутентифицированный захват учётной записи.

Сайты уязвимы только тогда, когда оба условия истинны:

  1. В плагине включена проверка OTP для сброса пароля.
  2. У целевого пользователя сохранён номер телефона для OTP (часто billing_phone).

При этих условиях воздействие — полная компрометация выбранной учётной записи. Захват администратора — это полная компрометация сайта.


Воздействие

УсловиеРезультат
Неаутентифицированный сетевой доступУчётные данные WordPress не требуются
Цель — покупатель / подписчикЗахват учётной записи этого клиента
Цель — администраторПовышение привилегий до wp-admin, установка плагинов/тем, постоянное вредоносное ПО

Конфиденциальность, целостность и доступность — все на высоком уровне: злоумышленник может читать заказы и персональные данные, изменять содержимое сайта и пользователей, а также заблокировать доступ законному владельцу.


Технические заметки

Сброс пароля с SMS Alert примерно выглядит так:

lost-password request  →  OTP to the user’s phone  →  verified change-password POST

Сломан именно последний шаг. Плагин маршрутизирует по $_REQUEST['option'] == 'smsalert-change-password-form' (см. class-wpresetpassword.php в 3.9.5) и затем записывает отправленный пароль. Он не привязывает этот POST к предшествующей OTP-сессии, nonce или проверке прав, которые доказали бы, что вызывающий — это пользователь, указанный в сбросе.

Этот proof-of-concept остаётся на этом обработчике:

  1. Запуск сброса пароля — POST на WooCommerce /my-account/lost-password/ и /wp-login.php?action=lostpassword с установленным wc_reset_password, чтобы для имени жертвы был задействован путь сброса плагина.
  2. Неаутентифицированная установка пароля — POST option=smsalert-change-password-form вместе с smsalert_user_newpwd / smsalert_user_cnfpwd на /, /my-account/lost-password/ и действие lost-password в wp-login. Заголовок Location, содержащий password-reset=true, считается признаком успеха.
  3. Проверка входа — если перенаправление не подтвердило сброс, скрипт пробует wp-login.php с новым паролем, чтобы при запуске в лаборатории можно было отличить настоящий захват от промаха (опция OTP выключена или у пользователя нет телефона).

OTP не отправляется. В этом и заключается ошибка.


Proof of concept

CVE-2026-11387-WooCommerce-SMS-OTP-Abraxas-Labs.py — небольшой клиент на Python 3: цветной баннер, затем три шага выше. Он обращается только к URL, который вы передаёте в командной строке.

Требования

  • Python 3.9+
  • requests

В macOS с Homebrew Python (PEP 668) используйте venv вместо системного pip install:

python3 -m venv .venv
.venv/bin/pip install requests

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

CVE-2026-11387-WooCommerce-SMS-OTP-Abraxas-Labs.py <base_url> <victim_username> [new_password]
.venv/bin/python3 CVE-2026-11387-WooCommerce-SMS-OTP-Abraxas-Labs.py \
  https://shop.example \
  admin

Третий аргумент задаёт применяемый пароль; по умолчанию — abr4x4s#L4b5.

Без аргументов скрипт выводит баннер и справку по использованию, затем завершается с кодом 1. Это безопасный способ убедиться, что клиент запускается.

Предусловия лаборатории

Целевой сайт WordPress должен работать на SMS Alert ≤ 3.9.5, с включённым OTP при сбросе, и у имени жертвы уже должен быть номер телефона для OTP. Против исправленного сайта 3.9.6+ или пользователя без телефона проверка входа, как ожидается, завершится неудачей.

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


Меры противодействия

  • Патч: обновите SMS Alert до 3.9.6 или более поздней версии из каталога плагинов WordPress.org.
  • Временное обходное решение: отключите проверку OTP для сброса пароля, пока обновление не будет установлено. Это устраняет уязвимый путь кода.
  • После предполагаемого инцидента смените пароли для любой учётной записи, у которой был сохранён номер телефона (особенно администраторов), проверьте пользователей и плагины, а сессии wp-admin из соответствующего временного окна считайте недоверенными.

Ссылки

  • CVE-2026-11387
  • Wordfence advisory
  • NVD
  • GitHub Advisory GHSA-ggpj-jphc-wmc4
  • Исходный код плагина, 3.9.5: class-ultimatemember.php (Trac)

Отказ от ответственности

Только для исследований и образовательных целей. Не запускайте, не развёртывайте и не используйте этот материал против любого хоста, если у вас нет явного письменного разрешения как от стороны, размещающей этот репозиторий, так и от владельца целевых систем.

Abraxas Labs · abraxaslabs.tech · github.com/abraxas · @abraxas_null

Скачать инструмент