CRITICAL🇬🇧 English

CVE-2026-46455

Apache Camel Keycloak: brak weryfikacji wygaśnięcia tokenu dostępu

CVSS 9.8v3.1pub. 2026-07-06upd. 2026-07-08

Komponent camel-keycloak w Apache Camel nie weryfikuje daty wygaśnięcia (exp) ani klauzuli not-before (nbf) tokenów dostępu Keycloak, co powoduje akceptowanie tokenów poza ich prawidłowym oknem ważności. Jest to krytyczna podatność klasy Insufficient Session Expiration, która umożliwia atakującemu uwierzytelnienie się przy użyciu przeterminowanego lub jeszcze nieważnego tokenu.

Pokaż oryginał (EN)

Insufficient Session Expiration vulnerability in Apache Camel Keycloak Component. The camel-keycloak security helper KeycloakSecurityHelper.parseAndVerifyAccessToken builds a Keycloak TokenVerifier using withChecks(...) with only the subject-exists check and the realm-URL (issuer) check. Keycloak's TokenVerifier.withChecks(...) appends to an initially empty check list - the upstream default checks are installed only when withDefaultChecks() is called - so the built-in IS_ACTIVE predicate, which validates the token's exp (expiration) and nbf (not-before) claims, is never applied. As a result the helper verifies the token signature, subject and issuer but does not enforce the token's validity window: an access token that is expired, or not yet valid, is accepted as valid. Routes that rely on this helper to authenticate inbound requests therefore accept access tokens that are outside their intended lifetime. This issue affects Apache Camel: from 4.18.0 before 4.18.3, from 4.19.0 before 4.21.0. Users are recommended to upgrade to version 4.21.0, which fixes the issue. If users are on the 4.18.x releases stream, then they are suggested to upgrade to 4.18.3. The fix makes KeycloakSecurityHelper.parseAndVerifyAccessToken include the TokenVerifier.IS_ACTIVE check so that expired or not-yet-valid access tokens are rejected, aligning the helper with Keycloak's default check set. For deployments that cannot upgrade immediately, enforce token expiration outside the helper - for example validate the access token's exp/nbf claims in the route before trusting it, keep Keycloak access-token lifetimes short, and ensure any upstream gateway or resource server also validates the token validity window.

🤖 Analiza AI
Jak działa

Metoda KeycloakSecurityHelper.parseAndVerifyAccessToken buduje obiekt TokenVerifier przy użyciu withChecks(...), dodając jedynie sprawdzenie istnienia podmiotu (subject-exists) oraz weryfikację wystawcy (issuer/realm-URL). Ponieważ Keycloak's TokenVerifier.withChecks(...) jedynie dołącza przekazane kontrole do pustej listy — domyślne sprawdzenia (w tym predykat IS_ACTIVE) są instalowane wyłącznie przez wywołanie withDefaultChecks() — predykat IS_ACTIVE, który waliduje pola exp i nbf tokenu, nigdy nie jest stosowany. W efekcie helper weryfikuje podpis, podmiot i wystawcę tokenu, ale całkowicie pomija kontrolę okna czasowego ważności. Każda trasa Apache Camel korzystająca z tego helpera zaakceptuje token, który już wygasł lub jeszcze nie jest ważny.

Skutki

Atakujący posiadający przeterminowany (lub jeszcze nieaktywny) token dostępu Keycloak może ominąć mechanizm uwierzytelniania i uzyskać nieautoryzowany dostęp do tras Apache Camel z pełnymi uprawnieniami przypisanymi do danego tokenu — w tym potencjalnie do poufnych danych, operacji zapisu oraz funkcji administracyjnych.

Mitygacja

Należy zaktualizować Apache Camel do wersji 4.21.0 lub — dla gałęzi 4.18.x — do wersji 4.18.3. Poprawka dodaje sprawdzenie TokenVerifier.IS_ACTIVE do metody KeycloakSecurityHelper.parseAndVerifyAccessToken, co powoduje odrzucanie tokenów poza ich oknem ważności. W przypadku braku możliwości natychmiastowej aktualizacji zaleca się: ręczną walidację pól exp i nbf tokenu w trasie przed jego zaakceptowaniem, skrócenie czasu życia tokenów dostępu w konfiguracji Keycloak oraz wymuszenie walidacji okna ważności tokenu na poziomie bramy API lub serwera zasobów.

Kogo dotyczy

Apache Camel w wersjach od 4.18.0 przed 4.18.3 oraz od 4.19.0 przed 4.21.0 (komponent camel-keycloak).

Uwagi

Producent opublikował dedykowaną stronę bezpieczeństwa pod adresem https://camel.apache.org/security/CVE-2026-46455.html. Informacja o podatności została również ujawniona na liście oss-security w dniu 2026-07-05.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Apache Camel

    APP
    Apache
    4.18.0 – 4.18.3 (bez)4.19.0 – 4.21.0 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2026-78329CRITICAL9.8ten sam produkt

Improper input validation vulnerability in Apache Camel Undertow component. This issue affects Apache Camel...

CVE-2026-71300CRITICAL9.8ten sam produkt

Improper input validation vulnerability in Apache Camel Atmosphere Websocket component. This issue affects ...

CVE-2026-66906CRITICAL9.1ten sam produkt

Relative path traversal vulnerability in Apache Camel Azure Storage Blob component. This issue affects Apac...

CVE-2026-40047CRITICAL9.1PL ✓ten sam produkt

Apache Camel Docling — argument injection i path traversal w CLI

CVE-2026-46454CRITICAL9.8PL ✓ten sam produkt

Apache Camel Cometd: wstrzykiwanie nagłówków kontrolnych przez brak walidacji