---
id: "CVE-2026-85296"
kind: "vulnerability"
aliases: ["CVE-2026-85296"]
title: "Apache Camel AS2: signing keys shared across requests, wrong partner signs receipts"
severity: "medium"
cvss: 6.5
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["apache-camel", "as2", "integration", "java", "package", "self-hosted"]
not_affected_if: ["already-patched", "camel-as2-unused", "single-partner"]
published_at: "2026-10-19T11:17:24+00:00"
first_seen_at: "2026-10-23T21:57:18+00:00"
updated_at: "2026-10-25T03:57:09+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-85296", "first_seen_at": "2026-10-23T21:57:18+00:00"}]
---

# Apache Camel AS2: signing keys shared across requests, wrong partner signs receipts

The Apache Camel AS2 component stored per-request signing material in state shared across requests, so one trading partner's key can be used to sign another partner's Message Disposition Notification. The result is receipts attributed to the wrong partner and cross-partner key confusion, reached through ordinary concurrent multi-partner traffic.

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

## How to check

- Check the Apache Camel version in use, for example with `mvn dependency:tree | grep camel-as2` or the `camel-as2-*` jar version, and confirm whether it falls in 4.0.0 to before 4.18.5 or 4.19.0 to before 4.22.1.
- Confirm whether the AS2 component serves more than one trading partner in the same Camel context.

## 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 an upgrade is not possible yet, run a separate Camel context per trading partner so no signing material is shared.

## Timeline

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

## From the sources

Exposure of Data Element to Wrong Session vulnerability in Apache Camel AS2 component.

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

Signing material belonging to an individual request was stored in state that is shared across requests rather than confined to the request being processed. Where a deployment serves more than one trading partner, concurrent or successive requests could therefore observe each other's material, and a Message Disposition Notification could be signed with the key of a partner other than the one the receipt was for. The result is cross-partner key confusion: a receipt attributable to the wrong partner, and one partner's signing material used while handling another partner's exchange. AS2 deployments are typically multi-partner by design, so the condition is reached by ordinary concurrent traffic rather than by anything the attacker must arrange.

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. Per-request signing keys are now confined to the request being processed in ResponseMDN. For deployments that cannot upgrade immediately, run a separate Camel context per trading partner so that no signing material is shared between them.

---

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