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-85313 — Proof-of-concept eseguibile in Spring Boot che riproduce CVE-2026-85313, in cui Apache Camel camel-jetty enableCORS riflette qualsiasi origine con credenziali, più un controllo con versione corretta. | Kitploit
Strumenti/GitHubGitHub/oscerd/cve-2026-85313
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebAudit di ConfigurazioneSicurezza WebApprendimento e Formazione
GitHuboscerd/cve-2026-85313

CVE-2026-85313

Proof-of-concept eseguibile in Spring Boot che riproduce CVE-2026-85313, in cui Apache Camel camel-jetty enableCORS riflette qualsiasi origine con credenziali, più un controllo con versione corretta.

Vedi Repository
91 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-85313 — camel-jetty: enableCORS concede accesso con credenziali da qualsiasi origine

Riproduttore proof-of-concept eseguibile per la vulnerabilità di Apache Camel in cui l'impostazione di enableCORS=true su un endpoint Jetty installava il CrossOriginFilter di Jetty con i suoi valori predefiniti di fabbrica — che riflettono ogni origine e consentono le credenziali. Un operatore che aveva semplicemente richiesto il CORS otteneva una policy che permetteva a una pagina di qualsiasi origine di effettuare richieste cross-origin con credenziali verso l'endpoint e di leggerne le risposte. Un'origine riflessa insieme a Access-Control-Allow-Credentials: true è esattamente la configurazione con credenziali da qualsiasi origine che lo standard Fetch non consente di esprimere con * — la riflessione essendo il modo abituale per aggirare tale regola (CWE-942).

Solo Spring Boot. Questo riproduttore include un unico modulo Camel Spring Boot. Il difetto è in camel-jetty, che incorpora un server HTTP Jetty. Camel Quarkus non ha un'estensione camel-quarkus-jetty — Quarkus serve HTTP tramite Vert.x (platform-http) — quindi non esiste una controparte Quarkus da riprodurre. (L'avviso complementare CVE-2026-85316 riguarda la stessa classe di difetto in platform-http-vertx.) Il modulo Spring Boot dimostra il comportamento affetto e quello corretto.

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

Cosa dimostra

Due server Jetty vengono eseguiti in un unico processo: l'endpoint vulnerabile /protected (porta 8081) è dichiarato con enableCORS=true, e un endpoint verificatore /exploit/attack (porta 8080) interpreta il browser dell'attaccante. A ogni chiamata il verificatore invia un GET cross-origin a /protected con Origin: https://evil.example — un'origine che il deployment non ha mai autorizzato — e riporta le intestazioni CORS restituite.

  • Affetto: la risposta riflette Access-Control-Allow-Origin: https://evil.example e restituisce Access-Control-Allow-Credentials: true — qualsiasi origine può leggere risposte con credenziali.
  • Corretto: l'origine viene comunque riflessa (così il CORS continua a funzionare per le richieste non autenticate), ma Access-Control-Allow-Credentials non viene più inviato per un'origine che l'operatore non ha specificato.
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack     # affected: ACAO reflected + ACAC: true; >>> PROVEN
docker compose down
# Patched control
mvn clean package -Dcamel.version=4.22.1
java -jar target/cve-2026-85313-jetty-cors-credentials-0.0.1-SNAPSHOT.jar &
curl -s http://localhost:8080/exploit/attack     # fixed: ACAO reflected, ACAC absent; >>> Not exploited

Riepilogo della vulnerabilità

ProprietàValore
Componentecamel-jetty (JettyHttpComponent, enableCORS)
CWECWE-942 (Permissive Cross-domain Policy with Untrusted Domains)
GravitàMEDIA
Vettore di attaccoUna pagina su qualsiasi origine invia una richiesta cross-origin con credenziali a un endpoint configurato solo con enableCORS=true
ImpattoL'endpoint riflette l'origine dell'attaccante e concede le credenziali, quindi la pagina dell'attaccante può leggere le risposte autenticate
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-24450
RiconoscimentoClaude Security Scan Tool

Avviso: https://camel.apache.org/security/CVE-2026-85313.html

La correzione

JettyHttpComponent ora applica i propri valori predefiniti CORS quando enableCORS è impostato: allowCredentials è impostato per impostazione predefinita su false a meno che l'operatore non lo configuri esplicitamente. La riflessione dell'origine è lasciata invariata, quindi l'abilitazione di CORS continua a funzionare per le richieste che non trasportano credenziali; un operatore che necessita di richieste cross-origin con credenziali imposta filterInit.allowCredentials=true e deve specificare le origini in filterInit.allowedOrigins (e riceve un avviso se non lo fa).

Mitigazione se non è possibile aggiornare

Configurare esplicitamente i parametri di CrossOriginFilter invece di affidarsi a ciò che installa enableCORS — specificare le origini consentite in filterInit.allowedOrigins e lasciare filterInit.allowCredentials disattivato a meno che non le si sia specificate.

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. L'origine "attacker" è un segnaposto benigno (https://evil.example) e sia l'endpoint che la sonda vengono eseguiti all'interno del riproduttore. Non utilizzare questo materiale contro sistemi di cui non si è proprietari o gestori.

Scarica lo strumento