
Reproducer для CVE-2026-46455 — Apache Camel camel-keycloak отсутствует проверка TokenVerifier.IS_ACTIVE (принимаются просроченные токены доступа)
| Среда выполнения | Каталог | Стек |
|---|
| Camel Spring Boot | camel-spring-boot/ | Spring Boot 3.2.0 + camel-keycloak 4.18.2 |
| Camel Quarkus | camel-quarkus/ | Quarkus 3.36.0 + Camel Quarkus 3.36.0 (включает Camel 4.20.0) |
Обе версии затронуты уязвимостью (исправлено в 4.18.3 / 4.21.0), и обе демонстрируют один и тот же дефект:
KeycloakSecurityHelper.parseAndVerifyAccessToken проверяет подпись токена, субъект и издателя, но пропускает
проверку TokenVerifier.IS_ACTIVE в Keycloak — поэтому exp / nbf никогда не применяются, и просроченный
токен принимается. Любой утёкший или перехваченный токен остаётся пригодным для использования бессрочно (CWE-613 + CWE-287).
Каждый PoC создаёт корректно подписанный токен доступа, чей exp находится на 30 минут в прошлом, и прогоняет его как через
уязвимый хелпер, так и через верификатор с добавленным IS_ACTIVE (что и делает исправление), доказывая, что хелпер принимает то,
что IS_ACTIVE отклоняет. Сервер Keycloak не требуется — токен подписывается RSA-ключом, сгенерированным в процессе выполнения.
Каждый подкаталог — это автономный проект с собственным Dockerfile, docker-compose.yml и README. В
кратце, для любого из них:
cd camel-spring-boot # или: cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down
| Свойство | Значение |
|---|---|
| Компонент | camel-keycloak |
| Затронутый класс | org.apache.camel.component.keycloak.security.KeycloakSecurityHelper#parseAndVerifyAccessToken |
| CWE | CWE-613 (Недостаточный срок действия сеанса) + CWE-287 (Некорректная аутентификация) |
| Воздействие | Принимаются просроченные / ещё не действительные токены доступа → запросы аутентифицируются вне срока действия токена |
| Затронутые версии | С 4.18.0 до 4.18.3, с 4.19.0 до 4.21.0 (хелпер появился в 4.18.0; 4.14.x LTS не затронута) |
| Исправленные версии | 4.18.3, 4.21.0 |
| JIRA | CAMEL-23504 |
Консультативное заключение: https://camel.apache.org/security/CVE-2026-46455.html
Эти воспроизведения предоставлены только для исследований в области безопасности и авторизованного тестирования, для публично раскрытой и исправленной уязвимости. Не используйте их против систем без явного разрешения.