Skip to main content

Apache Camel CVE-2026-85313

| EUVDEUVD-2026-104201 MEDIUM
Permissive Cross-domain Security Policy with Untrusted Domains (CWE-942)
2026-10-19 apache GHSA-qj3g-jvfm-6934
4.3
CVSS 3.1 · Vendor: apache
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Lure authenticated user to malicious page
  2. Delivery
    Browser issues credentialed cross-origin request
  3. Exploit
    CrossOriginFilter reflects origin and allows credentials
  4. Execution
    Attacker script reads cross-origin response
  5. Impact
    Sensitive 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).

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – 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

Apache Camel 4.0.0 <4.18.5
Apache Camel 4.19.0 <4.22.1

Affected Packages

euvd apache_camel fix: 4.18.5, 4.22.1

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

Vendor (apache) PRIMARY 4.3 MEDIUM
AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
vuln.today AI 4.3 MEDIUM

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.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (apache).

CVSS VectorVendor: apache

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
None

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

EPSS Score
0.3%
Top 74% exploitable
Prevalence
Medium
widely-used enterprise Java integration framework, but Jetty+enableCORS path narrows footprint
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

22
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +22
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2026-33453 CRITICAL POC
10.0 Apr 27

Remote 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)

CVE-2026-40858 HIGH POC
8.8 Apr 27

Unsafe Java deserialization in Apache Camel's camel-infinispan component allows arbitrary code execution when the ProtoS

CVE-2026-78162 CRITICAL
10.0 Oct 19

Unauthenticated remote code execution affects the camel-hazelcast component of Apache Camel 4.0.0 through 4.18.4 and 4.1

CVE-2026-71300 CRITICAL
9.8 Aug 24

Header-injection in the Apache Camel camel-atmosphere-websocket producer lets an external sender hijack WebSocket messag

CVE-2026-78329 CRITICAL
9.8 Aug 24

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

CVE-2026-47323 CRITICAL
9.8 May 19

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

CVE-2026-33454 CRITICAL
9.4 Apr 27

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

CVE-2026-46590 HIGH
8.8 Jul 06

Remote code execution via unsafe Java deserialization affects the camel-pqc component of Apache Camel 4.18.0-4.18.2 and

CVE-2026-27172 HIGH
8.8 Apr 27

Unsafe Java deserialization in Apache Camel's camel-consul component (ConsulRegistry / ConsulRegistryUtils.deserialize)

CVE-2026-88900 HIGH
8.8 Oct 19

Unauthenticated deserialization of attacker-controlled messages in Apache Camel's camel-jgroups consumer can lead to rem

CVE-2026-83531 HIGH
8.8 Oct 19

Expression language injection in the Apache Camel dynamic-router-control endpoint allows a party who can place a message

CVE-2026-78165 HIGH
8.8 Oct 19

Deserialization of untrusted data in the Apache Camel Spring Redis component (camel-spring-redis) allows an authenticate

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy