Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLure authenticated user to malicious page
-
DeliveryBrowser issues credentialed cross-origin request
-
ExploitCrossOriginFilter reflects origin and allows credentials
-
ExecutionAttacker script reads cross-origin response
-
ImpactSensitive endpoint data disclosed
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A02:2025 - Security Misconfiguration
ASVS 5.0
V13 - Configuration CORS policy restriction
|
| Exploitation Conditions | Requires an operator to have explicitly set enableCORS=true on a Jetty-based Camel HTTP endpoint (a non-default opt-in); affected Camel versions 4.0.0-4.18.4 and 4.19.0-4.22.0. With that option, Jetty's CrossOriginFilter defaults reflect any request origin and set Access-Control-Allow-Credentials=true. Exploitation is further limited by: (1) UI:R - a victim browser must visit an attacker-controlled page; (2) the victim must already hold credentials (cookies/session) for the target endpoint for credentialed reads to yield anything; (3) impact only matters if the endpoint returns sensitive data. Deployments that left CORS disabled, or that explicitly named allowedOrigins and controlled allowCredentials, are not exposed. |
| Impact | This is a moderate, config-dependent information-disclosure issue, not an urgent priority. The CVSS 3.1 base score of 4.3 (AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N) reflects network reach and no authentication, but the UI:R requirement and the limited confidentiality-only impact keep real risk low. No EPSS score, CISA KEV listing, or public POC was provided in the input, so by the precision rules this is 'no public exploit identified at time of analysis' - the signals are consistent in pointing to low real-world risk rather than conflicting. A key nuance the raw CVSS hides: exploitation only matters when an operator has explicitly set enableCORS=true on a Jetty endpoint, which is a non-default opt-in, and the real-world impact depends entirely on whether that endpoint serves credentialed, sensitive responses. The CVSS vector marks PR:N (unauthenticated attacker) which is accurate for the attacking web page, but the victim must be a user who is already authenticated/credentialed to the Camel endpoint - a limiting factor not captured by the base metrics. Treat as a hardening/patch-on-schedule item rather than an emergency. |
| Exploit ScenarioDerived | An operator enables enableCORS on a Jetty endpoint, which silently installs Jetty's CrossOriginFilter stock defaults (reflect any origin + allow credentials). An attacker lures a user who holds a valid session/cookie for that endpoint to a malicious web page, which issues a credentialed cross-origin fetch; the browser attaches the user's credentials, the endpoint reflects the attacker origin and permits credentials, and the attacker's script reads the response. No public exploit code was identified in the provided data, and success requires the victim's interaction (UI:R). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 19, 2026
Apache Camel's Jetty HTTP component (camel-jetty / camel-jetty-common), in versions 4.0.0 through 4.18.4 and 4.19.0 through 4.22.0, installs Jetty's CrossOriginFilter with its stock defaults whenever an operator opts in with enableCORS=true, producing an allow-any-origin policy that also grants credentials instead of the empty policy operators expected to fill in. Unauthenticated remote attackers who lure a victim's browser to an attacker-controlled page (UI:R) can then perform credentialed cross-origin reads against the endpoint and read the responses, provided the victim already holds cookies or session credentials for that endpoint and the endpoint returns sensitive data. Exposure is configuration-dependent because it requires the non-default enableCORS=true opt-in on a Jetty endpoint; no public exploit code or active exploitation has been identified at time of analysis, and fixed versions 4.23.0, 4.18.5 and 4.22.1 have been released by the vendor.
RemediationAI
Vendor-released patch: Apache Camel 4.23.0, with backports to 4.18.5 for the 4.18.x LTS stream and 4.22.1 for the 4.22.x LTS stream, delivered via the upstream pull requests https://github.com/apache/camel/pull/25829, https://github.com/apache/camel/pull/25937 and https://github.com/apache/camel/pull/25938; upgrade to the patched version for your stream per https://camel.apache.org/security/CVE-2026-85313.html. After the upgrade, enableCORS no longer grants credentials to origins the operator did not name, so any deployment that implicitly relied on any-origin acceptance must now list its origins explicitly in filterInit.allowedOrigins, and any deployment that genuinely needs credentialed cross-origin requests must set both filterInit.allowedOrigins to specific trusted origins and filterInit.allowCredentials=true (setting the latter with a wildcard or unset origins now only produces a warning and remains insecure). For deployments that cannot upgrade immediately, stop relying on the enableCORS boolean and set the CrossOriginFilter init parameters explicitly on each jetty:// endpoint, naming allowed origins in filterInit.allowedOrigins and setting filterInit.allowCredentials=false unless credentialed requests are truly required; the trade-off is that legitimate browser clients from origins not listed will fail CORS preflight and be blocked. If no cross-origin browser access is needed, removing enableCORS=true (or the filter entirely) eliminates the exposure, at the cost of breaking any existing cross-origin front-end integrations. Because exploitation requires a victim with existing session credentials to visit an attacker-controlled page, reducing the lifetime of endpoint session cookies and avoiding credentials on data-bearing Jetty endpoints lowers practical risk while patching is pending.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is CWE-942 (Permissive Cross-domain Policy with Untrusted Domains). Camel's JettyHttpComponent exposed a single boolean, enableCORS, which simply registered Jetty's CrossOriginFilter for the endpoint using whatever init-parameter map the operator supplied. Because that map was typically empty, the filter ran on Jetty's own defaults: allowedOrigins=* together with allowCredentials=true. Jetty does not emit a literal '*' in Access-Control-Allow-Origin; it reflects the requesting Origin header, which is precisely the workaround browsers force on developers because the Fetch specification forbids pairing a wildcard origin with credentials. The net effect is a credentialed any-origin policy that the fetch spec cannot express declaratively but that servers routinely construct by reflection, letting any web page read authenticated responses. The upstream fix (PR apache/camel#25829, with backports in #25937 and #25938, tracked as CAMEL-24450) adds applyCorsDefaults(), which runs before the init-parameter map is handed to the endpoint (a map that is skipped entirely when empty) and sets allowCredentials=false unless the operator explicitly configured it; origin reflection is deliberately preserved so CORS keeps working for non-credentialed requests, and a warning is logged when allowCredentials=true is combined with a missing or wildcard allowedOrigins. The same defect class was published as a separate advisory for the platform-http-vertx component, indicating a shared misunderstanding of third-party CORS filter defaults across Camel HTTP components.
Know when Apache Camel gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
Attacking page is unauthenticated (PR:N) and remote (AV:N), but needs a credentialed victim to visit it (UI:R); only cross-origin read of responses, so C:L and I:N/A:N.
Primary rating from Vendor (apache).
CVSS VectorVendor: apache
DescriptionCVE.org
Permissive Cross-domain Policy with Untrusted Domains vulnerability in Apache Camel Jetty component.
This issue affects Apache Camel: from 4.0.0 before 4.18.5, from 4.19.0 before 4.22.1.
Setting 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.
Upgrade 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.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
More in Apache Camel
View allRemote code execution in Apache Camel's camel-coap component (versions 4.14.0-4.14.5, 4.18.0 before 4.18.1, and 4.19.0)
Unsafe Java deserialization in Apache Camel's camel-infinispan component allows arbitrary code execution when the ProtoS
Unauthenticated remote code execution affects the camel-hazelcast component of Apache Camel 4.0.0 through 4.18.4 and 4.1
Header-injection in the Apache Camel camel-atmosphere-websocket producer lets an external sender hijack WebSocket messag
Header-filter bypass in the Apache Camel Undertow component (4.11.0-4.14.8, 4.15.0-4.18.3, and 4.19.0-4.21.x) lets remot
Remote code execution in Apache Camel 3.18.0-4.14.5 and 4.15.0-4.18.1 stems from CXF and Knative HeaderFilterStrategy im
Message header injection in Apache Camel's camel-mail component (3.0.0 before 4.14.6 and 4.15.0 before 4.18.1) lets an a
Remote code execution via unsafe Java deserialization affects the camel-pqc component of Apache Camel 4.18.0-4.18.2 and
Unsafe Java deserialization in Apache Camel's camel-consul component (ConsulRegistry / ConsulRegistryUtils.deserialize)
Unauthenticated deserialization of attacker-controlled messages in Apache Camel's camel-jgroups consumer can lead to rem
Expression language injection in the Apache Camel dynamic-router-control endpoint allows a party who can place a message
Deserialization of untrusted data in the Apache Camel Spring Redis component (camel-spring-redis) allows an authenticate
EUVD-2026-104201
GHSA-qj3g-jvfm-6934
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB