Skip to main content

Apache Camel Docling CVE-2026-78163

| EUVDEUVD-2026-104223 MEDIUM
Server-Side Request Forgery (SSRF) (CWE-918)
2026-10-19 apache GHSA-62ww-q9gh-hmrv
5.9
CVSS 3.1 · Vendor: apache
View

Attack ChainAIDerived

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

  1. Access
    Place crafted text in forwarded message
  2. Delivery
    Route delivers body to docling endpoint
  3. Exploit
    Prefix misinterpreted as URL or filepath
  4. Execution
    DoclingProducer reaches SSRF/file-read sink
  5. Impact
    Internal resource fetched or local file disclosed

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Credential Access

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

Exploitation Conditions

Exploitation requires that a Camel route forwards a String message body - originating outside the deployment - into the Apache Camel Docling component's producer, and that the affected versions are in use (4.15.0 to before 4.18.5, or 4.19.0 to before 4.22.1). The triggering condition is the body's leading content: a body starting with 'http://' or 'https://' is fetched as a remote URL (SSRF), while one starting with '/' or containing a backslash is read from the local filesystem (path traversal / file disclosure). Because the exchange body bypasses HeaderFilterStrategy filtering and no endpoint option existed to pin the interpretation mode, no deployment opt-in is needed once such a route exists. Limiting factors: the attacker must be able to influence a String body that reaches a docling endpoint, bodies passed as File, byte[], InputStream, or via the CamelDoclingInputFilePath header are not subject to prefix interpretation, and the Docling component is an optional, infrequently-deployed component - which, together with the implicit routing requirement, is why CVSS rates AC:H.

Impact

This is a moderate, conditions-dependent risk rather than a drop-everything priority. The CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N, base 5.9) captures the shape well: network-reachable and unauthenticated, but with High attack complexity because exploitation depends on a deployment-specific precondition - a Camel route that forwards attacker-influenced String bodies into a docling endpoint. The impact is confidentiality-only (C:H, I:N, A:N): SSRF to internal resources and local file disclosure via path traversal, with no integrity or availability effect. No EPSS score, KEV listing, or POC was provided in the input, so there is no public exploit identified at time of analysis and no evidence of active exploitation. The signals are internally consistent - a genuine but complexity-gated flaw - rather than conflicting. The main caveat is exposure scope: the vulnerable code is the comparatively new, optional Camel Docling component, so most Camel deployments are not affected at all, and even affected ones are only reachable where untrusted text bodies flow into a docling endpoint. Prioritize patching where the docling component is in use and ingests externally-originated String bodies; elsewhere this is low real-world risk despite the network vector.

Exploit ScenarioDerived

An application exposes a Camel route that accepts text from an external source (e.g. an HTTP intake, queue, or form field) and forwards it as the message body into a docling endpoint intending to convert it as document content. An attacker submits a body beginning with 'http://169.254.169.254/...' or a leading '/' (e.g. '/etc/passwd'), causing DoclingProducer to silently reinterpret the body as a URL to fetch (SSRF) or a local file to read and return. No public exploit is identified at time of analysis, but exploitation requires no authentication where such a route exists.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.4% 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 Docling component implicitly interprets String message bodies by prefix, letting attacker-influenced content trigger server-side request forgery (bodies beginning with http:// or https://) or local file disclosure (bodies beginning with / or containing a backslash) without any endpoint option to pin the interpretation mode. Affected are Camel 4.15.0 through 4.18.4 and 4.19.0 through 4.22.0; the flaw is unauthenticated from the component's perspective (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N, 5.9) but requires that a route actually forward externally influenced String bodies into a docling endpoint, and confidentiality-only impact is rated High. No public exploit code or CISA KEV entry is associated at time of analysis; EPSS data was not provided. Vendor-released patches exist (4.23.0, 4.22.1, 4.18.5) along with new opt-in hardening options.

RemediationAI

Vendor-released patch: upgrade to Apache Camel 4.23.0 for the main line, 4.22.1 for the 4.22.x stream, or 4.18.5 for the 4.18.x stream, as documented at https://camel.apache.org/security/CVE-2026-78163.html; the fixes arrive via upstream PRs https://github.com/apache/camel/pull/25596, https://github.com/apache/camel/pull/25733 and https://github.com/apache/camel/pull/25744, which introduce the allowUrlSource and allowFilePathSource options (both default false) and inputBaseDirectory. Deployments on 4.14.x or earlier must move to a supported release since no fix will be issued. If an immediate upgrade is not possible, do not route message bodies that originate outside the deployment into a docling endpoint, and pass documents through a typed body such as File, byte[] or InputStream, or through the CamelDoclingInputFilePath header, so the body is never subject to prefix interpretation; the trade-off is that this requires auditing and changing route code, and it only protects routes you control rather than providing a global guard. Where the patched component is installed, explicitly leave allowUrlSource and allowFilePathSource set to false, and scope inputBaseDirectory to a directory containing only intended documents, accepting that legitimate URL-fetch and arbitrary-path workloads will need those options re-enabled with tight network egress controls and a dedicated document directory.

Affected VersionsENISA

Apache Camel 4.15.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 Docling component (camel-docling) produces document conversions through either a docling CLI subprocess or a docling-serve HTTP backend. The root cause is CWE-918 (Server-Side Request Forgery) combined with CWE-22-style path handling: DoclingProducer decided what a String exchange body meant by inspecting its prefix, dispatching http:// or https:// bodies to HttpSource for the backend to fetch, and /-prefixed or backslash-containing bodies to Files.readAllBytes for base64 encoding and upload; anything else went to a temporary file as document content. Five call sites reached these two sinks (CLI positional argument, docling-serve HttpSource fetch, and Files.readAllBytes reads). The only guard was a maximum file size check wrapped in an existence test, so non-existent paths or pseudo-files reporting zero size bypassed it entirely. Crucially, the exchange body is never filtered by a HeaderFilterStrategy, unlike the Camel header namespace, so a sender that can place text into a message a route forwards to docling reaches both sinks without any deployment opt-in. The upstream fix (PRs 25596, 25733, 25744) adds allowUrlSource and allowFilePathSource endpoint properties that default to false, plus an inputBaseDirectory property to constrain filesystem reads.

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

Network-reachable and unauthenticated (AV:N/PR:N) but gated on a route forwarding untrusted String bodies to docling (AC:H); confidentiality-only impact (C:H, I:N, A:N) from SSRF and file read.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:N/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
None
Availability
None

DescriptionCVE.org

Server-Side Request Forgery (SSRF), Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') and Exposure of Sensitive Information to an Unauthorized Actor vulnerability in Apache Camel Docling component.

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

DoclingProducer decided what a String message body meant by inspecting its prefix. A body starting with http:// or https:// was handed to Docling as a remote URL to fetch, a body starting with / or containing a backslash was read from the local filesystem, and anything else was written to a temporary file and converted as document content. The mode was chosen implicitly and no endpoint option allowed a route author to pin the component to a single interpretation, so a route that means convert whatever text arrives in the body silently became a fetcher of remote resources or a reader of local files whenever the text happened to begin with one of those prefixes. The only guard applied to the derived value was a size check, and that check was wrapped in an existence test, so a path that resolved to nothing, or to a pseudo-file reporting a size of zero, passed without being checked at all. Five call sites reached the two sinks: the CLI mode appended the value as the final positional argument of the docling subprocess, and the docling-serve mode passed it either to HttpSource for the backend to fetch or to Files.readAllBytes so that the content could be base64-encoded and uploaded. Because the exchange body is never filtered by a HeaderFilterStrategy, unlike the Camel header namespace, a sender able to place text in a message that a route forwards into a docling endpoint could reach both sinks without any opt-in from the deployment.

Users are recommended to upgrade to version 4.23.0, which fixes the issue. If users are on the 4.22.x releases stream, then they are suggested to upgrade to 4.22.1. If users are on the 4.18.x releases stream, then they are suggested to upgrade to 4.18.5. The 4.14.x releases stream and earlier reached end of life before this issue was resolved and will not receive a fix, so deployments on those lines must move to a supported release. For deployments that cannot upgrade immediately, do not route message bodies that originate outside the deployment into a docling endpoint, and pass the document through a typed body such as File, byte[] or InputStream, or through the CamelDoclingInputFilePath header, so that the body is never subject to prefix interpretation.

Threat Intelligence Overview

EPSS Score
0.4%
Top 65% exploitable
Prevalence
Medium
Apache Camel widely deployed, but docling is a niche optional component
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.4%
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

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

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

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