---
id: "CVE-2026-85254"
kind: "vulnerability"
aliases: ["CVE-2026-85254"]
title: "Apache Camel: header case mismatch lets callers echo headers into responses"
severity: "medium"
cvss: 6.5
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["apache-camel", "http2", "java", "package", "platform-http"]
not_affected_if: ["no-platform-http", "patched-version"]
published_at: "2026-10-19T11:17:23+00:00"
first_seen_at: "2026-10-23T21:57:18+00:00"
updated_at: "2026-10-25T03:57:12+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-85254", "first_seen_at": "2026-10-23T21:57:18+00:00"}]
---

# Apache Camel: header case mismatch lets callers echo headers into responses

The Apache Camel Platform HTTP component was meant to stop request headers from being reflected into responses, but it compared header names case sensitively. Because HTTP header names are case insensitive, a caller can bypass the suppression by changing header name casing, and on HTTP/2 the suppression never applies at all.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the Apache Camel version in the project build file (for example `camel-platform-http` or `camel-bom` in pom.xml or build.gradle) and see whether it is below `4.18.5` on the 4.18.x line or below `4.22.1` on the 4.22.x line
- Check whether the application uses the Camel Platform HTTP component and serves HTTP/2
- unknown whether the sources describe any further exposure check

## Fix

- Upgrade Apache Camel to `4.23.0`
- On the 4.18.x LTS stream, upgrade to `4.18.5`
- On the 4.22.x LTS stream, upgrade to `4.22.1`
- If upgrading is not possible now, strip the affected headers in front of the Camel endpoint or remove them from the response in the route

## Timeline

- 2026-10-23T21:57:18+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-85254

## From the sources

Improper Handling of Case Sensitivity vulnerability in Apache Camel Platform HTTP component.

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

The guard that prevents a request header being reflected into the response compared header names case sensitively, while HTTP header names are case insensitive. A caller could therefore defeat the suppression simply by varying the case of the header name. HTTP/2 makes the problem unconditional rather than optional: the protocol requires header names to be lowercase on the wire, so the comparison never matched and the suppression was inert for every request on an HTTP/2 connection. The consequence is that content the caller chose is echoed back in the response, which is the basis for response-splitting and cache-poisoning style attacks against whatever sits in front of the Camel endpoint.

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. Request header names are now compared case insensitively, so the suppression holds regardless of casing and works under HTTP/2. For deployments that cannot upgrade immediately, strip the headers in question in front of the Camel endpoint, or remove them from the response in the route rather than relying on the built-in suppression.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
