Skip to main content

Apache Camel CVE-2026-94386

| EUVDEUVD-2026-109957 MEDIUM
Use of Cache Containing Sensitive Information (CWE-524)
4.8
CVSS 3.1 · Vendor
View

Attack ChainAIDerived

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

  1. Access
    Deploy two OAuth profiles sharing endpoint and client ID
  2. Delivery
    First profile resolves and caches its token
  3. Exploit
    Second profile served the cached cross-scope token
  4. Execution
    Outbound call carries wrong-scope bearer token
  5. Impact
    Unintended service replays broader-authority token

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V3 - Web Frontend Security Cache-Control for sensitive pages
Exploitation Conditions

Requires a single JVM deployment that defines more than one Camel OAuth profile (via components such as camel-openai, camel-langchain4j-agent, camel-huggingface, camel-docling, camel-a2a, camel-spring-ai-chat, the IBM watsonx components, or direct use of the OAuthClientAuthenticationFactory SPI) where the profiles share the same token endpoint and client ID but differ in requested scope or client secret, with token caching left at its default-enabled state. Limiting factors: the vulnerable configuration is set by the trusted deployment, so no untrusted attacker input is involved; both profiles' token requests must overlap while a cached token is still valid; the benefiting party is the service that receives the mis-scoped token, and impact is bounded to that token's scope. Affects org.apache.camel:camel-oauth 4.19.0 before 4.22.2; 4.18.x and earlier never shipped the resolver and are unaffected.

Impact

Signals point consistently to a lower-tier, conditional issue rather than an urgent one. The vendor CVSS 3.1 score is 4.8 (medium) with vector AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N: although network-reachable and nominally unauthenticated, the high attack complexity reflects that the flaw only manifests in a specific multi-profile deployment, and impact is limited to low confidentiality and low integrity with no availability effect. No EPSS score is present in the supplied data, so exploitation probability cannot be quantified. The vuln.today decision label is 'awaiting_data', and there is no CISA KEV listing and no public exploit identified at time of analysis - the GitHub pull-request references (26681, 27779) and the Jira ticket are the vendor's remediation, not proof-of-concept exploit code. The threat model is also atypical: the description states that profiles are configured by the trusted deployment and no untrusted input reaches the cache, so the party that benefits is an unintended downstream service that receives a token issued for a different scope or secret and could replay it within that scope. Taken together these signals indicate a real but narrow correctness/least-privilege weakness, not a high-real-risk mass-exploitation candidate; EPSS being absent (not low) should be noted rather than assumed benign.

Exploit ScenarioDerived

An integration app configures two Camel OAuth profiles (for example feeding camel-openai and an IBM watsonx component) that point at the same token endpoint and client ID but request different scopes. With default token caching on, whichever profile resolves first populates the shared static cache, and the second profile's outbound call is sent carrying the first profile's token - potentially a broader scope or a token whose audience targets a different service. No public exploit code is identified; realizing the cross-scope token requires the specific shared-client, differing-scope/secret configuration (reflected by CVSS AC:H).

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 23, 2026

Cross-scope OAuth token reuse in Apache Camel's camel-oauth component (org.apache.camel:camel-oauth 4.19.0 through 4.22.1) lets a profile be handed a bearer token that was obtained under a different profile's scope or client secret. The resolver keeps tokens in a static, JVM-wide cache keyed only on the token endpoint and client ID, so two profiles sharing an identity provider client but differing in requested scope or secret collide on one entry. The result is an outbound call carrying a token that grants broader authority than the calling profile was configured for, or that was issued by a different client secret; the trigger requires a deployment defining multiple colliding profiles with caching (default-enabled) left on, and no public exploit has been identified at time of analysis.

RemediationAI

Vendor-released patch: Apache Camel 4.23.0 fixes the issue, and deployments on the 4.22.x stream should move to 4.22.2, which contains the corrected cache keying on token endpoint, client ID, SHA-256 secret fingerprint and requested scope. There is no fix for 4.19.x through 4.21.x; those lines are end-of-life and must be upgraded to a supported release. Where an upgrade cannot happen immediately, the vendor's documented workaround is to disable token caching on every OAuth profile that shares a token endpoint and client ID with another profile, by setting camel.oauth.NAME.cache-tokens=false for a named profile or camel.oauth.cache-tokens=false for the default profile, so each resolution requests a token with that profile's own scope and secret; the trade-off is a token request on every resolution, adding load on the identity provider and latency to outbound calls. Alternatively, register a separate client at the identity provider for each profile that needs a different scope or client secret, so no two such profiles share a client ID, which removes the collision without disabling caching but requires additional IdP client provisioning and credential management. Full details are in the vendor advisory at https://camel.apache.org/security/CVE-2026-94386.html.

Affected VersionsENISA

Apache Camel 4.19.0 <4.22.2

Affected Packages

euvd apache_camel fix: 4.22.2

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

Apache Camel's OAuthClientCredentialsTokenResolver performs the OAuth 2.0 client credentials grant on behalf of components that authenticate outbound calls through a named OAuth profile - camel-openai, camel-langchain4j-agent, camel-huggingface, camel-docling, camel-a2a, camel-spring-ai-chat, the IBM watsonx components - and of applications calling the OAuthClientAuthenticationFactory SPI directly. The root cause is the CWE class of caching sensitive information with an insufficient cache key: the resolver stored obtained tokens in a static map shared by every resolver instance and every CamelContext in the JVM, keyed on the token endpoint and client ID only, even though the token request also carries the client secret and the requested scope. Profiles that agreed on endpoint and client ID but differed in scope or secret therefore mapped to one entry; whichever resolved first populated it and the others received that token for its remaining lifetime without issuing a request under their own configuration, because token caching is on by default and pointing several profiles at one IdP client is ordinary use of the profile feature. Identity providers that derive audience from scope make the consequence more than a scope broadening - the mis-issued token can be for an entirely different downstream service. The profiles are deployment-configured and trusted, so no untrusted input reaches the cache; the beneficiary is the receiving service, which if hostile or compromised can replay the token within its scope. The assessed vector (AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N) reflects that the preconditions are configuration-dependent and the impact is bounded to the token's scope. Fixed builds re-key the cache on every token-request input: endpoint, client ID, a SHA-256 fingerprint of the client secret (so the raw secret is not retained), and the requested scope, so equivalent profiles still share one token while divergent ones do not.

Know when Java 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 (CNA) PRIMARY 4.8 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
vuln.today AI 4.8 MEDIUM

Token travels over the network (AV:N); only a specific shared-client, differing-scope/secret multi-profile deployment triggers it (AC:H); the unintended recipient needs no prior privileges (PR:N); bounded cross-scope token exposure gives C:L/I:L and no availability impact.

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

Primary rating from Vendor (CNA).

CVSS VectorVendor

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

Lifecycle Timeline

2
Patch available
Oct 26, 2026 - 16:17 EUVD
CVSS changed
Oct 26, 2026 - 15:23 NVD
4.8 (MEDIUM)

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Threat Intelligence Overview

EPSS Score
0.3%
Top 72% exploitable
Prevalence
Medium
OAuth module within widely-used Camel, recent and narrowly adopted
Data Quality
5 sources
Confidence: Medium

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

24
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +24
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.

More in Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

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