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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-89079 — Python PoC для CVE-2026-89079: определяет наличие Theme My Login <=7.2.1 в WordPress multisite, затем эксплуатирует неаутентифицированную перезапись пароля через функцию восстановления пароля и проверяет вход. | Kitploit
Инструменты/GitHubGitHub/murrez/cve-2026-89079
Повышение привилегийСканеры уязвимостейАтаки на ПаролиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийВеб-безопасностьТестирование на Проникновение
GitHubmurrez/cve-2026-89079

CVE-2026-89079

Python PoC для CVE-2026-89079: определяет наличие Theme My Login <=7.2.1 в WordPress multisite, затем эксплуатирует неаутентифицированную перезапись пароля через функцию восстановления пароля и проверяет вход.

82219 дней назадЕщё не проверено

Популярное

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

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

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

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

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

CVE-2026-89079 — Theme My Login (WordPress multisite)

PoCbit

Инструменты для исследования безопасности CVE-2026-89079: захват учётной записи без аутентификации в WordPress multisite, когда в Theme My Login ≤ 7.2.1 включена сетев��я опция tml_user_passwords.

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

ПлагинTheme My Login
Затронуто≤ 7.2.1
Исправлено7.2.2+ (06b7623)
CWECWE-269 Improper Privilege Management
CVSS 3.19.8 (Critical)

Почему сканирование версии ≠ уязвимость

Все три условия должны выполняться:

  1. is_multisite() — ms-hooks.php загружается только в настоящем WordPress multisite (а не в TML /register/ на одиночном сайте).
  2. get_site_option( 'tml_user_passwords' ) — сетевая опция «пароли регистрации, выбираемые пользователем».
  3. Theme My Login ≤ 7.2.1 — tml_ms_filter_pre_insert_user_data() применяет $_POST['user_pass1'] при retrieve_password() → wp_update_user().

Ответ checkemail=confirm после POST-запроса восстановления пароля не доказывает, что пароль был изменён; это стандартное поведение WordPress, когда уязвимый фильтр неактивен.

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

CVE-2026-89079/
├── poc.py              # CLI: mass check / exploit / verify-only
├── tml_core.py         # Detection, HTTP/form diagnostics, tests import
├── requirements.txt
├── targets.example.txt
├── tests/
│   └── test_tml_core.py
└── lab/
    └── README.md       # Disposable WP multisite lab notes

Установка

git clone https://github.com/YOUR_ORG/CVE-2026-89079.git
cd CVE-2026-89079
pip install -r requirements.txt

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

Проверка (отпечаток)

python poc.py --check https://target.example.com

# Bulk
python poc.py -f targets.txt --mode check -j 30 -q

# Optional: REST / ?author= hints → 3rd column in vuln list
python poc.py -f targets.txt --mode check --enum-users -j 30 -q

Выходные файлы (по умолчанию):

ФайлСодержимое
cve_2026_89079_results.jsonlВсе цели + finding_status, подсказки о multisite / user_pass1
cve_2026_89079_vuln.txtTML ≤ 7.2.1 (столбцы: URL, версия, опционально best_login)
cve_2026_89079_eligible.txtБолее строгая эвристика: сетевая регистрация + user_pass1 при регистрации (не гарантия)

Значения finding_status включают: NOT_DETECTED, PATCHED, POTENTIALLY_VULNERABLE, PRECONDITIONS_UNKNOWN, VERIFICATION_INCONCLUSIVE, NETWORK_ERROR.

Эксплойт (восстановление пароля + проверка входа)

# Single target (default user: auto — enumerate admin-first when REST/?author= allows)
python poc.py https://target.example.com --mode exploit

python poc.py https://target.example.com -u admin --mode exploit
python poc.py https://target.example.com --version-hint 6.8.2 --login-hint admin --mode exploit

# Bulk from vuln list
python poc.py -f cve_2026_89079_vuln.txt --mode exploit -j 15 -q

Полезные флаги:

ФлагНазначение
--no-require-multisiteПытаться, даже если эвристика мультисайта не срабатывает (много однсайтовых TML-сайтов)
--require-user-passwordsПропускать, если на страницах регистрации отсутствует user_pass1
--only-eligibleЭксплуатировать только строки с exploit_eligible из предыдущего --check-jsonl
--verify-onlyБез POST пароля / без входа — только диагностика формы и эндпоинта
--skip-version-checkПринудительная попытка, если readme заблокирован
-qБолее тихое массовое логирование

Выходные файлы: cve_2026_89079_exploit.jsonl, cve_2026_89079_pwned.txt (успешные входы).

Тесты

python -m unittest discover -s tests -v

Технические примечания

  • Обработка потерянного пароля: tml_lost_password_handler() → ядро retrieve_password().
  • Исправление в 7.2.2: фильтр wp_pre_insert_user_data игнорирует обновления во время восстановления пароля ($update).
  • Определение мультисайта игнорирует перенаправления wp-signup.php → /register/ (частое ложное срабатывание для односайтового TML).
  • Формы разбираются с помощью html.parser; поддерживается AJAX-восстановление пароля TML при соответствующей настройке.

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

  • Обновите Theme My Login до 7.2.2+ в сети.
  • Отключите tml_user_passwords или сам плагин до установки исправления.
  • Блокируйте или оповещайте о неаутентифицированных POST-запросах к URL восстановления пароля, содержащим user_pass1.

Ссылки

  • CVE-2026-89079
  • WordPress.org changeset 3696081
  • Patchstack advisory
  • PoCbit page

Правовая информация

Этот проект предназначен для исследований в области защитной безопасности, проверки исправлений и авторизованного тестирования на проникновение. Неправомерное использование запрещено. Авторы не несут ответственности за несанкционированное использование.

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