Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-85317 — Proof-of-concept eseguibile in Spring Boot che riproduce CVE-2026-85317, in cui la cache dei token OAuth2 di camel-http ignora scope, resource e token endpoint, oltre a un controllo con patch applicata. | Kitploit
Strumenti/GitHubGitHub/oscerd/cve-2026-85317
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebAutenticazioneApprendimento e Formazione
GitHuboscerd/cve-2026-85317

CVE-2026-85317

Proof-of-concept eseguibile in Spring Boot che riproduce CVE-2026-85317, in cui la cache dei token OAuth2 di camel-http ignora scope, resource e token endpoint, oltre a un controllo con patch applicata.

Vedi Repository
41 giorno faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-85317 — camel-http: confusione della cache dei token OAuth2

Reproduttore proof-of-concept eseguibile per la vulnerabilità di Apache Camel in cui la cache dei token del client OAuth2 di camel-http — una mappa static globale della JVM — indicizzava le proprie voci solo su (uri, clientId, clientSecret), omettendo i campi che determinano effettivamente il token: lo scope richiesto, il resource indicator e il token endpoint. Due endpoint che differivano solo in questi campi condividevano quindi una voce di cache, così a un endpoint poteva essere servito un token coniato per uno scope diverso, una risorsa diversa, o da un authorization server diverso — una richiesta che trasportava un'autorità più ampia di quella per cui l'endpoint era configurato, oppure un token presentato a una parte per cui non era stato emesso (CWE-524).

Solo Spring Boot. Questo reproduttore include un singolo modulo Camel Spring Boot. Il difetto è nel client OAuth2 di camel-http, che dispone anche di un'estensione camel-quarkus-http; ma nel packaging JVM di quell'estensione le opzioni client oauth2* a livello di endpoint non vengono applicate come avviene sotto Spring Boot (l'intercettore delle richieste OAuth2 che possiede la cache dei token non viene mai collegato, quindi il token endpoint non viene mai chiamato) — la stessa limitazione documentata per CVE-2026-85251. Il modulo Spring Boot dimostra il comportamento affetto e quello corretto.

RuntimeDirectoryStack
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-http 4.22.0 (affetto; corretto in 4.22.1)

Cosa dimostra

Il driver rispecchia il test di regressione della correzione stessa (HttpOAuth2TokenCachingTest). Due server HTTP usa-e-getta vengono eseguiti all'interno del processo: un token endpoint che conia un bearer token, e un target che lo richiede. Il verificatore (/exploit/attack):

  1. effettua una prima richiesta al target con oauth2CacheTokens=true&oauth2Scope=read — un token viene coniato e messo in cache;
  2. spegne il token endpoint;
  3. effettua una seconda richiesta, identica ma con oauth2Scope=read+write.
  • Affetto: la chiave di cache ignora lo scope, quindi la seconda richiesta ottiene un cache hit e riutilizza il token read — riesce anche se il token endpoint è spento (nessun token nuovo potrebbe in alcun modo essere coniato).
  • Corretto: lo scope fa parte della chiave, quindi la seconda richiesta manca la cache e tenta di coniare un token nuovo; con il token endpoint spento non riesce a connettersi (HttpHostConnectException).
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack     # affected: 2nd request 200 (reused read token); >>> PROVEN
docker compose down
# Patched control
mvn clean package -Dcamel.version=4.22.1
java -jar target/cve-2026-85317-http-oauth2-token-cache-0.0.1-SNAPSHOT.jar &
curl -s http://localhost:8080/exploit/attack     # fixed: 2nd request HttpHostConnectException; >>> Not exploited

Riepilogo della vulnerabilità

ProprietàValore
Componentecamel-http (OAuth2ClientConfigurer, cache dei token)
CWECWE-524 (Uso di cache contenente informazioni sensibili)
GravitàMEDIA
Vettore di attaccoUn deployment configura più di un endpoint OAuth2 che differiscono solo per scope, resource indicator o token endpoint; essi condividono la cache dei token globale della JVM
ImpattoA un endpoint viene servito un token emesso per uno scope/resource/authorization server diverso — un'autorità più ampia di quella configurata, oppure un token presentato alla parte sbagliata
Versioni interessateDalla 4.0.0 precedente alla 4.18.5, dalla 4.19.0 precedente alla 4.22.1
Versioni corrette4.18.5, 4.22.1, 4.23.0
JIRACAMEL-24456
CreditoClaude Security Scan Tool

Advisory: https://camel.apache.org/security/CVE-2026-85317.html

La correzione

OAuth2ClientConfigurer estende il record della chiave di cache OAuth2URIAndCredentials per includere il token endpoint, lo scope e il resource indicator, così le voci non sono più condivise tra endpoint che differiscono in uno qualsiasi di questi campi.

Mitigazione se non è possibile aggiornare

Eseguire gli endpoint che differiscono per scope, resource indicator o token endpoint in JVM separate, in modo che non condividano la cache statica.

Disclaimer

Questo repository è pubblicato per scopi educativi e difensivi: per aiutare gli utenti di Apache Camel a comprendere la vulnerabilità, verificare se sono interessati e confermare che l'aggiornamento la risolve. Il token (xxx.yyy.zzz), il client id e il secret sono segnaposto innocui ed entrambi i server HTTP vengono eseguiti in-process. Non utilizzare questo materiale contro sistemi di cui non si è proprietari o gestori.

Scarica lo strumento