CVE-2026-53913
Apache Camel Keycloak: KeycloakSecurityPolicy verifica il token di accesso bearer solo all'interno dei suoi controlli di ruolo e permessi, quindi nella configurazione predefinita il token non viene mai verificato e qualsiasi valore bearer non nullo viene accettato
- Pubblicato
- 6 lug 2026
- Aggiornato
- 7 lug 2026
- Assegnazione CNA
- apache
- Evidenza osservata
- 7 ago 2026
CVSS primario
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HBasso · prossimi 30 giorni
- Percentile
- 63,3%
- Data del modello
- 21 set 2026
L'EPSS è una stima statistica, non una certezza o una misura di impatto. Combinalo con CVSS, stato KEV, esposizione e ambiente.
Riepilogo
# Autenticazione Impropria, Autenticazione Mancante per Funzione Critica, Mancata Gestione Sicura del Fallimento ('Failing Open') nel componente Keycloak di Apache Camel La vulnerabilità `KeycloakSecurityPolicy` di camel-keycloak protegge una rotta eseguendo `KeycloakSecurityProcessor.beforeProcess()`, che effettua tre controlli in sequenza: rifiuta una richiesta che non porta alcun token di accesso, poi — solo se `requiredRoles` non è vuoto — valida i ruoli, e — solo se `requiredPermissions` non è vuoto — valida i permessi. La verifica crittografica effettiva del bearer access token (firma, emittente e scadenza per un JWT locale, oppure stato attivo ed emittente per l'introspezione del token) viene eseguita esclusivamente all'interno di quei controlli di ruoli e permessi. `KeycloakSecurityPolicy` imposta `requiredRoles` e `requiredPermissions` su vuoto per impostazione predefinita — che è la 'Configurazione di Base' documentata — quindi su una rotta configurata in quel modo i controlli di ruoli e permessi vengono saltati e il token di accesso non viene quindi mai verificato. Il controllo di presenza del token rifiuta comunque un token mancante, ma un token non valido viene accettato: qualsiasi valore non nullo nell'intestazione `Authorization: Bearer` — inclusa una stringa arbitraria o un JWT contraffatto e non firmato — supera la policy e la richiesta raggiunge la rotta protetta, senza alcun controllo di firma, emittente o scadenza e senza alcuna richiesta a Keycloak. Il token viene letto dall'intestazione della richiesta in ingresso perché `allowTokenFromHeader` è impostato su `true` per impostazione predefinita. Poiché il motivo normale per porre una rotta dietro questa policy è che la rotta esegue lavoro lato server, il bypass comporta un accesso non autenticato a quel lavoro; dove la rotta protetta inoltra a un produttore in grado di eseguire codice, può comportare l'esecuzione remota di codice non autenticata. Questo difetto è indipendente da CVE-2026-23552: quel problema riguardava il claim dell'emittente ed è stato corretto aggiungendo un controllo all'interno della routine di verifica, ma qui la routine di verifica non viene affatto raggiunta nella configurazione predefinita, quindi il difetto rimane. Questo problema riguarda Apache Camel: dalla 4.15.0 prima della 4.18.3, dalla 4.19.0 prima della 4.21.0. Si consiglia agli utenti di aggiornare alla versione 4.21.0, che risolve il problema. Se gli utenti si trovano sul ramo di rilascio 4.18.x, si consiglia di aggiornare alla 4.18.3. Per le distribuzioni che non possono aggiornare immediatamente, configurare un `requiredRoles` o `requiredPermissions` non vuoto su ogni `KeycloakSecurityPolicy` in modo che il percorso di verifica del token venga eseguito, impostare `allowTokenFromHeader` su `false` dove il token non è previsto dall'intestazione della richiesta, oppure eseguire la verifica del token a livello di framework prima della policy.
Utilizzo responsabile
Utilizza le informazioni sulla vulnerabilità solo sui sistemi che possiedi o che sei autorizzato a testare. Kitploit si collega ai metadati della ricerca pubblica e non memorizza codici exploit o payload dannosi.