{"id":"CVE-2026-85313","kind":"vulnerability","aliases":["CVE-2026-85313"],"related":[],"title":"Apache Camel Jetty: enableCORS grants credentials to every origin","description":"Permissive Cross-domain Policy with Untrusted Domains vulnerability in Apache Camel Jetty component.\n\nThis issue affects Apache Camel: from 4.0.0 before 4.18.5, from 4.19.0 before 4.22.1.\n\nSetting enableCORS on a Jetty endpoint installed Jetty's CrossOriginFilter with its stock defaults, which accept every origin and allow credentials. An operator asking for CORS therefore obtained a policy that lets a page on any origin make credentialed cross-origin requests to the endpoint and read the responses, without any indication that turning the option on had chosen an allow-all policy rather than an empty one to be filled in. This is the same defect class as the platform-http-vertx advisory published alongside it, in a different component.\n\nUpgrade to Apache Camel 4.23.0, which fixes the issue. Users on the 4.18.x LTS releases stream should upgrade to 4.18.5. Users on the 4.22.x LTS releases stream should upgrade to 4.22.1. enableCORS no longer grants credentials to an origin the operator did not name. A deployment that relied on any origin being accepted must now list its origins explicitly. For deployments that cannot upgrade immediately, configure the CrossOriginFilter parameters explicitly rather than relying on what enableCORS installs, naming the allowed origins.","summary":"Turning on enableCORS for a Jetty endpoint in Apache Camel installs a CORS filter that accepts every origin and allows credentials. A web page on any other site can then make credentialed requests to the endpoint and read the responses.","severity":"medium","cvss":4.3,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["apache-camel","java","jetty","package","self-hosted"],"not_affected_if":["camel-3-or-earlier","no-enablecors","no-jetty-endpoint"],"how_to_check":"- Search the Camel routes and configuration for `enableCORS` on Jetty endpoints.\n- Check the Camel version with `mvn dependency:tree | grep camel-jetty` or the Camel version in the build file, and compare it against `4.18.5` and `4.22.1`.","fix":"- Upgrade Apache Camel to `4.23.0`.\n- On the 4.18.x LTS stream, upgrade to `4.18.5`; on the 4.22.x LTS stream, upgrade to `4.22.1`.\n- If an upgrade is not possible yet, configure the Jetty CrossOriginFilter parameters explicitly and list the allowed origins instead of relying on `enableCORS`.","status":"open","published_at":"2026-10-19T11:17:24+00:00","first_seen_at":"2026-10-23T21:57:18+00:00","triaged_at":"2026-10-25T04:39:41+00:00","updated_at":"2026-10-25T04:39:41+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-10-25T04:39:41Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade Apache Camel to `4.23.0`.\n- On the 4.18.x LTS stream, upgrade to `4.18.5`; on the 4.22.x LTS stream, upgrade to `4.22.1`.\n- If an upgrade is not possible yet, configure the Jetty CrossOriginFilter parameters explicitly and list the allowed origins instead of relying on `enableCORS`.","reach":"internet","title":"Apache Camel Jetty: enableCORS grants credentials to every origin","impact":"medium","summary":"Turning on enableCORS for a Jetty endpoint in Apache Camel installs a CORS filter that accepts every origin and allows credentials. A web page on any other site can then make credentialed requests to the endpoint and read the responses.","category":"package","nicknames":[],"who_cares":["apache-camel","java","jetty","self-hosted"],"confidence":0.8,"needs_auth":"unknown","worst_case":"Cross-origin pages can read authenticated responses from the endpoint","analyst_note":"","how_to_check":"- Search the Camel routes and configuration for `enableCORS` on Jetty endpoints.\n- Check the Camel version with `mvn dependency:tree | grep camel-jetty` or the Camel version in the build file, and compare it against `4.18.5` and `4.22.1`.","needs_analyst":false,"not_affected_if":["no-enablecors","no-jetty-endpoint","camel-3-or-earlier"],"who_is_affected":"Teams running Apache Camel 4.0.0 up to 4.18.5 or 4.19.0 up to 4.22.1 that expose a Jetty endpoint with enableCORS set. The exposure depends on the endpoint being reachable from browsers on other origins and on it returning data that a credentialed request could read. Teams that do not use the Camel Jetty component, or that never set enableCORS, can skip it.","user_interaction":"yes","needs_special_setup":"yes","severity_if_unknown":"medium"},"cost_usd":0.000716,"input_tokens":3673,"output_tokens":698,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-2026':11A,14A '-85313':12A,15A '4.0.0':85C '4.18':198C '4.18.5':87C,206C '4.19.0':89C '4.22':210C '4.22.1':91C,218C '4.23.0':190C 'accept':40B,107C,240C 'advisori':178C 'affect':81C 'allow':44B,111C,154C,267C 'allow-al':153C 'alongsid':180C 'apach':1A,17B,33B,75C,82C,188C 'apache-camel':16B 'ask':115C 'camel':2A,18B,34B,76C,83C,189C 'cannot':250C 'chosen':151C 'class':171C 'compon':78C,185C 'configur':253C 'cor':37B,117C 'credenti':6A,45B,56B,112C,130C,223C 'cross':67C,132C 'cross-domain':66C 'cross-origin':131C 'crossoriginfilt':101C,255C 'cve':10A,13A 'default':105C 'defect':170C 'deploy':233C,248C 'differ':184C 'domain':68C,72C 'empti':160C 'enablecor':4A,27B,93C,219C,263C 'endpoint':31B,60B,97C,137C 'everi':8A,41B,108C 'explicit':246C,257C 'fill':164C 'filter':38B 'fix':192C 'grant':5A,222C 'host':24B 'http':176C 'immedi':252C 'indic':144C 'instal':35B,98C,264C 'issu':80C,194C 'java':19B 'jetti':3A,20B,30B,77C,96C,99C 'let':123C 'list':243C 'longer':221C 'lts':200C,212C 'make':55B,129C 'must':241C 'name':231C,265C 'obtain':119C 'one':161C 'oper':114C,228C 'option':148C 'origin':9A,42B,109C,128C,133C,226C,238C,245C,268C 'packag':21B 'page':48B,125C 'paramet':256C 'permiss':65C 'platform':175C 'platform-http-vertx':174C 'polici':69C,121C,156C 'publish':179C 'rather':157C,258C 'read':62B,139C 'releas':201C,213C 'reli':235C,260C 'request':57B,134C 'respons':64B,141C 'self':23B 'self-host':22B 'set':92C 'site':52B 'stock':104C 'stream':202C,214C 'therefor':118C 'turn':25B,146C 'untrust':71C 'upgrad':186C,204C,216C,251C 'user':195C,207C 'vertx':177C 'vulner':73C 'web':47B 'without':142C 'x':199C,211C","nicknames":[],"mitigations":[],"who_affected":"Teams running Apache Camel 4.0.0 up to 4.18.5 or 4.19.0 up to 4.22.1 that expose a Jetty endpoint with enableCORS set. The exposure depends on the endpoint being reachable from browsers on other origins and on it returning data that a credentialed request could read. Teams that do not use the Camel Jetty component, or that never set enableCORS, can skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-19T11:17:24+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N","cvss_by":"security@apache.org","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-85313","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-85313","severity":null,"published_at":"2026-10-19T11:17:24+00:00","modified_at":"2026-10-19T20:45:51+00:00","first_seen_at":"2026-10-23T21:57:18+00:00","fetched_at":"2026-10-23T22:28:57+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}