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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-29000-Python-PoC-pac4j-JWT-AuthenticationBypass-Poc — Python proof-of-concept, демонстрирующий обход аутентификации в pac4j JWT путём создания JWE-токена с неподписанным внутренним JWT, что позволяет повысить привилегии без закрытого ключа. | Kitploit
Инструменты/GitHubGitHub/alihussainzada/cve-2026-29000-python-poc-pac4j-jwt-authenticationbypass-poc
Аутентификация и авторизацияГенерация полезной нагрузкиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийОбучение и Образование
GitHubalihussainzada/cve-2026-29000-python-poc-pac4j-jwt-authenticationbypass-poc

CVE-2026-29000-Python-PoC-pac4j-JWT-AuthenticationBypass-Poc

Популярное

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

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

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

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

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

Python proof-of-concept, демонстрирующий обход аутентификации в pac4j JWT путём создания JWE-токена с неподписанным внутренним JWT, что позволяет повысить привилегии без закрытого ключа.

Репозиторий
296 месяцев назадЕщё не проверено

CVE-2026-29000 – Обход аутентификации pac4j JWT (PoC на Python)

Python-доказательство концепции для CVE-2026-29000, критического обхода аутентификации, затрагивающего приложения, использующие модуль pac4j JWT.

Уязвимость позволяет злоумышленникам аутентифицироваться в качестве произвольных пользователей, отправляя вредоносный токен JWE, содержащий неподписанный PlainJWT (alg: none).


🧠 Обзор уязвимости

Приложения pac4j могут использовать следующий поток токенов:

  1. Пользователь проходит аутентификацию через /api/auth/login
  2. Сервер возвращает зашифрованный JWT (JWE)
  3. Клиент отправляет токен как Bearer-токен
  4. Сервер расшифровывает JWE и проверяет подпись внутреннего JWT

Из-за некорректной обработки логики парсинга JWT, когда внутренний токен является PlainJWT (неподписанным токеном):

  • toSignedJWT() возвращает null
  • Проверка подписи пропускается
  • Утверждения принимаются как доверенные

Это позволяет злоумышленнику:

  • подделывать произвольные утверждения
  • повышать привилегии
  • аутентифицироваться как admin

⚠️ Воздействие

Злоумышленник может:

  • Аутентифицироваться как любой пользователь
  • Назначать произвольные роли
  • Получать доступ к защищённым конечным точкам
  • Достичь полного повышения привилегий

Закрытый ключ не требуется — достаточно открытого ключа, раскрытого через JWKS.


🧪 Доказательство концепции

Этот репозиторий предоставляет PoC на Python, который:

  • Получает открытый ключ из конечной точки JWKS
  • Создаёт неподписанный JWT
  • Оборачивает его в токен JWE
  • Генерирует вредоносный Bearer-токен

📦 Требования

Python 3.x

Установите зависимости:

root@kitploit:~
pip install jwcrypto requests

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

root@kitploit:~
python3 poc.py \
--jwks http://target:8080/api/auth/jwks \
--user admin \
--role ROLE_ADMIN

Пример вывода:

root@kitploit:~
=== Malicious JWE Token ===

eyJhbGciOiJSU0EtT0FFUC0yNTYiLCJlbmMiOiJBMTI4R0NNIiwiY3R5IjoiSldUIn0...

Используйте его как:

root@kitploit:~
Authorization: Bearer <TOKEN>

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

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


👨‍💻 Автор

Ali Hussainzada Исследователь безопасности приложений | Охотник за багами

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