Skip to main content

Apache Camel CVE-2026-79985

| EUVDEUVD-2026-104217 HIGH
Path Traversal (CWE-22)
2026-10-19 apache GHSA-cpwx-4xfv-48r6
7.4
CVSS 3.1 · Vendor: apache
View

Attack ChainAIDerived

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

  1. Access
    Control malicious server or gain on-path position
  2. Delivery
    Inject traversal segments into directory-listing name
  3. Exploit
    Camel concatenates path with no containment check
  4. Execution
    Remote consumer acts on file outside polled directory
  5. Impact
    Read, delete, or rename files via endpoint credentials

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The affected Camel route must use an SMB (or other remote-file) consumer that polls a directory on a remote server, and that server must return a directory-listing entry that is NOT a single path segment (i.e. containing traversal segments other than the exact '.'/'..' entries the SMB consumer skips). Because the FTP control channel carries no integrity protection, an on-path attacker can rewrite a LIST response without credentials; alternatively a malicious, compromised, multi-tenant, or virtual-filesystem-backed server can emit such a name directly. File RETRIEVAL is reachable in a DEFAULT consumer configuration (remote consumers download every listed file); DELETION additionally requires delete=true, and RENAMING requires one of move, preMove, moveFailed, or readLock=rename - all common disposition options. Key limiting factors: for the SMB scheme specifically, a conforming SMB2 server will not produce a qualifying listing name, so a non-conforming or attacker-controlled server is required; escape beyond the server's own account boundary further depends on whether that server confines the account; and the jailStartingDirectory option (enabled by default) did NOT constrain this remote operand before the fix, so it offers no pre-patch mitigation here.

Impact

The vendor CVSS of 7.4 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N) places this in the High band, but the real-world priority is lower than that number alone suggests. The AC:H already encodes the core constraint: exploitation requires either an on-path network position (feasible against FTP, whose control channel has no integrity protection) or control of a malicious, compromised, multi-tenant, or virtual-filesystem-backed server. No EPSS score was provided, there is no CISA KEV listing, and no public exploit exists - the vendor explicitly states the SMB exposure was corrected on the same analytical basis as the other remote-file consumers 'rather than from a demonstrated proof of concept against this scheme.' Critically, this CVE is scoped to the Apache Camel SMB component, and the description notes that triggering it requires a server emitting a directory-listing name that is not a single path segment, 'which a conforming SMB2 implementation does not do' - so against a well-behaved SMB2 server the bug is effectively unreachable, and exploitation presupposes an attacker-controlled or non-conforming server. This is best characterized as a genuine defense-in-depth path-traversal fix (the jailStartingDirectory option documented a containment boundary it did not actually enforce for the remote operand) rather than a widely weaponizable, mass-exploitable flaw. No data signals are directly conflicting, but EPSS is missing and the SMB-specific exploitability is theoretical, so prioritize patching where SMB/remote-file consumers poll untrusted or shared servers, and treat it as routine elsewhere.

Exploit ScenarioDerived

An attacker who controls (or is on-path to) an SMB/remote-file server that an Apache Camel route polls returns a directory-listing entry containing parent-directory traversal segments instead of a plain filename. Because Camel concatenates the configured directory with that server-supplied name without lexical normalization or a containment check, the resulting path escapes the polled directory, and Camel then retrieves - or, if delete/move/readLock=rename options are set, deletes or renames - files elsewhere on the server using the endpoint's own credentials. No public exploit exists, and the CVSS AC:H reflects that the attacker must control the server response or occupy an on-path position.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available

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

Alert me

AnalysisAIv1 – Oct 19, 2026

Path traversal in Apache Camel's remote-file consumers (including the SMB component's share-walking consumer) lets a directory listing entry that is not a single path segment resolve outside the polled remote directory, so Camel will retrieve, delete, or rename files outside that directory using the endpoint's own credentials. Affected are Camel 4.2.0 through 4.18.5-exclusive and 4.19.0 through 4.22.1-exclusive; file retrieval is reachable in a default consumer configuration, while deletion requires delete=true and renaming requires move, preMove, moveFailed, or readLock=rename. The CVSS 3.1 vector (7.4, AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N) reflects unauthenticated reachability over the network with a high attack-complexity prerequisite: the remote server - or an on-path attacker rewriting an unprotected FTP LIST response, or a malicious, compromised, multi-tenant, or virtual-filesystem-backed server - must emit a qualifying listing name; for the SMB scheme a conforming SMB2 server will not do so, and no public exploit identified at time of analysis.

RemediationAI

Upgrade to Apache Camel 4.23.0, which contains the fix; users on the 4.22.x release stream should move to 4.22.1 and users on the 4.18.x LTS stream to 4.18.5, while 4.14.x users must migrate to a supported stream since that line is end-of-life and will not receive the patch. The changes land in the listed pull requests - https://github.com/apache/camel/pull/25730 (GenericFileConsumer/isWithinStartingDirectory and GenericFileHelper.isWithinDirectory separator handling), https://github.com/apache/camel/pull/25745, https://github.com/apache/camel/pull/25746, and https://github.com/apache/camel/pull/25747 - with details in the advisory at https://camel.apache.org/security/CVE-2026-79985.html. Note that no configuration-only workaround is reliable: jailStartingDirectory, though enabled by default, did not constrain this remote operand before the fix, so enabling or trusting it buys nothing pre-patch. Compensating controls must attack the prerequisite instead - stop consuming directories from servers you do not fully control or that are multi-tenant or virtual-filesystem-backed (trade-off: loses legitimate third-party integration), avoid the disposition options that widen impact by removing delete=true and the move/preMove/moveFailed/readLock=rename settings so only retrieval is exposed (trade-off: breaks post-processing, archival, and idempotent-read workflows), and carry FTP over a protected channel or prefer SFTP with host-key verification so a LIST response cannot be rewritten on-path (trade-off: server-side TLS/SSH support and certificate or key management overhead). Restricting the remote account's filesystem permissions to exactly the polled directory limits blast radius regardless of whether the traversal resolves, at the cost of re-validating what the integration legitimately needs to read, delete, and rename.

Affected VersionsENISA

Apache Camel 4.19.0 <4.22.1
Apache Camel 4.2.0 <4.18.5

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

CWE-22 root cause sits in how Camel's remote-file consumers construct the absolute remote path for each listed file: FtpUtils.absoluteFilePath and GenericFileConsumer concatenate the configured poll directory with the file name verbatim from the server's directory listing, with no lexical normalization (FileUtil.compactPath) and no containment check that the result stays inside the polled directory. That unchecked operand then feeds every subsequent remote operation - retrieval (FtpOperations.retrieveFile / SftpOperations from GenericFileConsumer via GenericFile.getAbsoluteFilePath), deletion (GenericFileDeleteProcessStrategy when delete=true), and renaming (GenericFileProcessStrategySupport and GenericFileRenameExclusiveReadLockStrategy for move/preMove/moveFailed/readLock=rename). Neither isValidFile nor isMatched performed containment validation, and the jailStartingDirectory option - documented as restricting Camel to the starting directory and enabled by default - governed producer writes and local-work-directory downloads but not this remote operand, so its advertised boundary was not enforced here. The FTP control channel has no integrity protection, making a rewritten LIST response achievable by an on-path attacker without credentials. The SMB artifact variant is a special case: its consumer walks the share listing directly rather than through RemoteFileConsumer and skipped only the exact '.' and '..' entries, so any other traversal-bearing name was concatenated unchecked. The fix generalizes the earlier localWorkDirectory jailing: GenericFileHelper.isWithinDirectory gains an explicit separator parameter (remote paths always use '/', not File.separatorChar), rejects compacted targets that still begin with '..', and GenericFileConsumer.isWithinStartingDirectory is overridden by remote consumers and consulted only when jailStartingDirectory is enabled.

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 7.4 HIGH
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
vuln.today AI 7.4 HIGH

AV:N and PR:N because an on-path attacker needs no credentials; AC:H because exploitation requires a privileged network position or an attacker-controlled/non-conforming server; C:H/I:H for file read and delete/rename, A:N.

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

Primary rating from Vendor (apache).

CVSS VectorVendor: apache

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

DescriptionCVE.org

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in Apache Camel SMB component.

This issue affects Apache Camel: from 4.2.0 before 4.18.5, from 4.19.0 before 4.22.1.

The Camel remote-file consumers poll a directory on a remote server and build the absolute remote path of each file by concatenating the configured directory with the file name reported in the server's directory listing. That concatenation (FtpUtils.absoluteFilePath and GenericFileConsumer) applied no lexical normalization and no check that the result stayed inside the directory being polled, and the resulting path became the operand for every subsequent remote operation on the file: retrieval (FtpOperations.retrieveFile / SftpOperations, reached from GenericFileConsumer where the retrieve name is taken verbatim from GenericFile.getAbsoluteFilePath), deletion when delete=true (GenericFileDeleteProcessStrategy), and renaming when move, preMove, moveFailed or readLock=rename is configured (GenericFileProcessStrategySupport and GenericFileRenameExclusiveReadLockStrategy). Neither isValidFile nor isMatched performed any containment check. A listing entry that is not a single path segment therefore resolved to a path outside the configured polling directory, causing Camel to read, delete or rename files outside it using the endpoint's own credentials. A listing name is not route-controlled data. It is supplied by the remote server, and the FTP control channel carries no integrity protection at all, so an on-path attacker can rewrite a LIST response without holding any credentials; a compromised, malicious or multi-tenant server, or a server backed by a virtual filesystem, can emit such a name directly. Retrieval is reachable in a default consumer configuration, since the remote consumers download every listed file; deletion and renaming additionally require one of the disposition options above, all of which are common. Escape from the directory Camel was configured to poll is unconditional, while escape from the server's own account boundary additionally depends on whether that server confines the account. The jailStartingDirectory option, which is documented as restricting Camel to the starting directory and is enabled by default, governed producer writes and, since the localWorkDirectory containment work, consumer downloads to the local work directory - but it did not constrain this remote operand, so its name and description claimed a boundary that was not enforced here. The same entry point had already been recognised on the local side: the localWorkDirectory download path was constrained so that a remote file name containing parent-directory segments could not resolve outside the local work directory. The remote operand was the remaining half of that surface. This artifact provides the smb scheme. Its consumer walks the share listing on its own rather than through RemoteFileConsumer, skipping only the exact "." and ".." entries, so a name carrying traversal segments in any other form was concatenated unchecked. Reaching it requires a server that emits a listing name which is not a single path segment, which a conforming SMB2 implementation does not do; the exposure was corrected on the same basis as the other remote-file consumers rather than from a demonstrated proof of concept against this scheme.

Upgrade to Apache Camel 4.23.0, which fixes the issue. Users on the 4.22.x releases stream should upgrade to 4.22.1. Users on the 4.18.x LTS releases stream should upgrade to 4.18.5. The 4.14.x stream reached end of life and does not receive this fix; users on it should move to a supported releases stream.

Executive ViewAI

Why It Matters

Apache Camel's remote-file consumers - including the SMB share-walking consumer - can be induced to read, delete, or rename files outside the directory they are configured to poll, using the integration service's own credentials. Because Camel typically runs as a hub connecting business systems with standing access to shared file stores, a single malformed listing entry can expose or destroy data far beyond the intended share, and file retrieval is reachable in a default consumer configuration. Reachability is unauthenticated over the network but requires a high-complexity precondition (a malicious, compromised, or multi-tenant remote server, or an on-path attacker rewriting an unprotected FTP LIST response), so prioritization should track how many integrations poll remote servers your organization does not fully control.

Business Impact: High
Compensating Controls

Apply vendor patch. Interim: remove delete/move/preMove/moveFailed/readLock=rename from affected endpoints and restrict integration egress to trusted file servers.

Threat Intelligence Overview

Prevalence
Medium
Apache Camel is widely deployed, but the SMB/remote-file consumer path is an optional component
Data Quality
3 sources
Confidence: Low

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 HIGH
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

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

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

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