Description
Improper input validation vulnerability in Apache Camel.



This issue affects Apache Camel: from 2.17.0 before 4.14.9, from 4.15.0 before 4.18.4, from 4.19.0 before 4.22.0.



The camel-mail component ships a MimeMultipart data format that can unmarshal a MIME multipart message. When it is configured with headersInline set to true, the unmarshal path copies the MIME headers of the incoming message onto the Camel message: it enumerates every header that is not one of the three standard ones it generates itself - Message-ID, MIME-Version and Content-Type - and calls setHeader for each, applying no HeaderFilterStrategy. The names of those MIME headers come from the message being unmarshalled, so a sender able to influence the message could place a header whose name falls in the Camel-internal namespace and have it set on the Exchange. Camel components read control headers from that namespace to override their configured behaviour - the camel-sql producer, for instance, takes the statement to execute from a Camel header when one is present - so an injected header could redirect what a downstream step in the route does with data the route author never intended it to take from the message. Which sinks are reachable, and what the consequences are, depends entirely on what the route does after the unmarshal step. The camel-mail consumer already applied a header filter strategy on its own inbound path, so this was the parallel inbound path into the same component that the earlier hardening did not cover. The affected copy is reached only when headersInline is enabled, which is not the default: with the default setting the MIME headers are surfaced as attachments rather than as message headers, and are not affected. The behaviour dates back to the introduction of the data format in 2.17.0 and was present on every release line until this fix.



Users are recommended to upgrade to version 4.22.0, which fixes the issue. If users are on the 4.14.x LTS releases stream, then they are suggested to upgrade to 4.14.9. If users are on the 4.18.x releases stream, then they are suggested to upgrade to 4.18.4. For deployments that cannot upgrade immediately, leave headersInline at its default of false where the inline headers are not needed, since the copy is only reached when it is enabled. Where it must stay enabled, strip Camel-internal headers immediately after the unmarshal step, for example with removeHeaders(“Camel*”) placed before any processor or producer that reads control headers, and do not unmarshal MIME content from an untrusted sender into a route that dispatches on header values. As defence in depth, treat the header names of any MIME message arriving from outside the trust boundary as untrusted input.
Published: 2026-08-24
Score: 6.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Uncontrolled header injection potentially altering route behavior
Action: Immediate Patch
AI Analysis

Impact

Apache Camel’s camel-mail component can copy every MIME header from an incoming multipart message into the Camel Exchange when headersInline is set to true. The names of those headers originate from the payload and are added without applying any header filter strategy. If the attacker can influence the MIME message, they can inject a header whose name falls into Camel’s internal namespace. Camel components such as the camel-sql producer read such internal headers to override configuration or supply a SQL statement. Therefore, an injected header could redirect downstream processors or let the route execute unintended logic, which may result in data modification, exfiltration, or other amplification of the route’s behavior.

Affected Systems

Vulnerable versions of Apache Camel are all releases from 2.17.0 up to 4.14.9, from 4.15.0 up to 4.18.4, and from 4.19.0 up to 4.22.0. The issue is present in the camel-mail component across these lines. Versions prior to 4.14.9, 4.18.4, and 4.22.0 do not contain the fix.

Risk and Exploitability

The vulnerability is an instance of improper input validation (CWE‑20). Exploitation requires a crafted MIME multipart message sent to a camel‑mail endpoint with headersInline enabled; the attack surface is therefore an inbound channel such as email or HTTP that accepts MIME data. The EPSS score of less than 1% indicates a low likelihood of exploitation, and the issue is not listed in the CISA KEV catalog. The potential impact is high if the route consumes control headers, as an attacker could redirect downstream processing or execute unintended logic. The CVSS score of 6.5 signifies a moderate severity.

Generated by OpenCVE AI on August 26, 2026 at 03:36 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Apache Camel to the patched release (4.22.0) or to the latest release in the 4.14.x (4.14.9) or 4.18.x (4.18.4) streams if an immediate upgrade to 4.22.0 is not possible.
  • If upgrading is not feasible, configure camel‑mail endpoints to keep headersInline disabled (false) so the vulnerable behaviour is not invoked.
  • When headersInline must remain enabled, strip Camel‑internal headers immediately after unmarshalling (e.g., removeHeaders("Camel*")) before any processor or producer that reads control headers, and avoid unmarshalling MIME content from untrusted senders.

Generated by OpenCVE AI on August 26, 2026 at 03:36 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-cx47-qxp5-mmh2 Apache Camel-Mail: the MimeMultipart data format copied MIME headers onto the Camel message without a header filter strategy when unmarshalling with headersInline enabled
History

Thu, 27 Aug 2026 18:00:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:apache:camel:*:*:*:*:*:*:*:*

Tue, 25 Aug 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 24 Aug 2026 20:30:00 +0000

Type Values Removed Values Added
References

Mon, 24 Aug 2026 19:00:00 +0000

Type Values Removed Values Added
First Time appeared Apache
Apache camel
Vendors & Products Apache
Apache camel

Mon, 24 Aug 2026 16:30:00 +0000

Type Values Removed Values Added
Description Improper input validation vulnerability in Apache Camel. This issue affects Apache Camel: from 2.17.0 before 4.14.9, from 4.15.0 before 4.18.4, from 4.19.0 before 4.22.0. The camel-mail component ships a MimeMultipart data format that can unmarshal a MIME multipart message. When it is configured with headersInline set to true, the unmarshal path copies the MIME headers of the incoming message onto the Camel message: it enumerates every header that is not one of the three standard ones it generates itself - Message-ID, MIME-Version and Content-Type - and calls setHeader for each, applying no HeaderFilterStrategy. The names of those MIME headers come from the message being unmarshalled, so a sender able to influence the message could place a header whose name falls in the Camel-internal namespace and have it set on the Exchange. Camel components read control headers from that namespace to override their configured behaviour - the camel-sql producer, for instance, takes the statement to execute from a Camel header when one is present - so an injected header could redirect what a downstream step in the route does with data the route author never intended it to take from the message. Which sinks are reachable, and what the consequences are, depends entirely on what the route does after the unmarshal step. The camel-mail consumer already applied a header filter strategy on its own inbound path, so this was the parallel inbound path into the same component that the earlier hardening did not cover. The affected copy is reached only when headersInline is enabled, which is not the default: with the default setting the MIME headers are surfaced as attachments rather than as message headers, and are not affected. The behaviour dates back to the introduction of the data format in 2.17.0 and was present on every release line until this fix. Users are recommended to upgrade to version 4.22.0, which fixes the issue. If users are on the 4.14.x LTS releases stream, then they are suggested to upgrade to 4.14.9. If users are on the 4.18.x releases stream, then they are suggested to upgrade to 4.18.4. For deployments that cannot upgrade immediately, leave headersInline at its default of false where the inline headers are not needed, since the copy is only reached when it is enabled. Where it must stay enabled, strip Camel-internal headers immediately after the unmarshal step, for example with removeHeaders(“Camel*”) placed before any processor or producer that reads control headers, and do not unmarshal MIME content from an untrusted sender into a route that dispatches on header values. As defence in depth, treat the header names of any MIME message arriving from outside the trust boundary as untrusted input.
Title Apache Camel: Camel-Mail: the MimeMultipart data format copied MIME headers onto the Camel message without a header filter strategy when unmarshalling with headersInline enabled
Weaknesses CWE-20
References

cve-icon MITRE

Status: PUBLISHED

Assigner: apache

Published:

Updated: 2026-08-25T19:35:08.113Z

Reserved: 2026-07-03T10:47:39.960Z

Link: CVE-2026-59230

cve-icon Vulnrichment

Updated: 2026-08-24T19:13:35.169Z

cve-icon NVD

Status : Analyzed

Published: 2026-08-24T17:17:28.383

Modified: 2026-08-27T17:54:53.370

Link: CVE-2026-59230

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-26T03:45:03Z

Weaknesses
  • CWE-20

    Improper Input Validation