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

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

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

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

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

Категории

Все категории
Loading categories
POC-CVE-2026-18963 — Эксплойт для проверки концепции CVE-2026-18963 — обход аутентификации в процедуре восстановления пароля Keycloak, позволяющий сбросить пароль без надлежащей проверки. Включает неразрушающий режим проверки. | Kitploit
Инструменты/GitHubGitHub/t0w0t/poc-cve-2026-18963
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеАутентификация
GitHubt0w0t/poc-cve-2026-18963

POC-CVE-2026-18963

Эксплойт для проверки концепции CVE-2026-18963 — обход аутентификации в процедуре восстановления пароля Keycloak, позволяющий сбросить пароль без надлежащей проверки. Включает неразрушающий режим проверки.

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

Популярное

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

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

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

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

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

CVE-2026-18963 — PoC обхода аутентификации в процессе восстановления пароля Keycloak

Proof of Concept для CVE-2026-18963 — уязвимости в процессе «Забыли пароль» / выбора учётных данных в Keycloak, которая позволяет атакующему достичь шага UPDATE_PASSWORD и сбросить пароль целевой учётной записи без надлежащего завершения требуемой проверки личности (например, без действительного OTP/второго фактора).

Скрипт управляет процессом полностью через HTTP (браузер/Selenium не требуются):

  1. Загружает страницу входа в realm и находит ссылку «Забыли пароль».
  2. Открывает страницу сброса учётных данных и активирует tryAnotherWay.
  3. Отправляет имя пользователя в появившемся селекторе учётных данных.
  4. Извлекает и воспроизводит URL перезапуска startSessionPolling(), используемый интерфейсом Keycloak для поддержания активной сессии аутентификации.
  5. Повторяет исходный URL сброса, чтобы перейти ко второму селектору учётных данных.
  6. Снова отправляет имя пользователя, чтобы перейти сразу к UPDATE_PASSWORD.
  7. При необходимости отправляет новый пароль для целевой учётной записи.

⚠️ Предупреждение

Этот инструмент предоставляется только для авторизованного тестирования безопасности и исследований (пентестов, которые вы проводите по заданию, CTF, собственных лабораторных сред или скоординированного раскрытия уязвимостей). Использование его против систем, которыми вы не владеете или на тестирование которых у вас нет явного письменного разрешения, незаконно. Автор и участники не несут ответственности за неправомерное использование или ущерб, причинённый этим инструментом.

Используйте --stop-at-update-password, чтобы получить недеструктивное доказательство (достижение UPDATE_PASSWORD без отправки нового пароля), если этого достаточно для демонстрации проблемы.

Требования

  • Python 3.8+
  • requests
  • beautifulsoup4

Установка

root@kitploit:~
git clone <this-repo-url>
cd POC
python -m venv .venv
source .venv/bin/activate   # on Windows: .venv\Scripts\activate
pip install -r requirements.txt

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

root@kitploit:~
python poc_cve_2026_18963_terminal.py \
    --base-url http://localhost:8080 \
    --realm master \
    --client-id account \
    --username admin \
    --new-password "NewPassword123!"

Параметры

FlagDefaultDescription
--base-urlhttp://localhost:8080Базовый URL целевого экземпляра Keycloak
--realmmasterЦелевой realm
--client-idaccountOIDC client ID, используемый для запуска процесса входа
--usernameadminЦелевое имя пользователя
--new-password(required)Пароль для установки для целевой учётной записи
--stop-at-update-passwordoffОстановиться при достижении UPDATE_PASSWORD, не отправляя новый пароль (доказательство без эксплуатации)
--timeout10.0Тайм-аут HTTP-запроса в секундах
--output-dirdebug_httpКаталог, в который сохраняется каждый промежуточный HTML-ответ для отладки
--insecureoffОтключить проверку TLS-сертификатов

Недеструктивное доказательство

root@kitploit:~
python poc_cve_2026_18963_terminal.py \
    --base-url https://target.example.com \
    --realm myrealm \
    --username victim \
    --new-password unused \
    --stop-at-update-password

Вывод

Каждый промежуточный HTTP-ответ сохраняется в каталог --output-dir (по умолчанию debug_http) как 01_login.html, 02_reset.html, ... для автономного просмотра. Скрипт завершается с кодом 0 при успехе и 1 при ошибке, выводя сообщения о ходе выполнения и диагностические сообщения в stdout.

Автор

Aurélien LOIE

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