Severity: 
    CVSS 3.1: 5.3 (medium) CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N

Affected versions:

- Apache Camel (org.apache.camel:camel-mina) 4.0.0 before 4.18.5
- Apache Camel (org.apache.camel:camel-mina) 4.19.0 before 4.22.1
- Apache Camel (org.apache.camel:camel-mina) 4.18.5 unaffected
- Apache Camel (org.apache.camel:camel-mina) 4.22.1 unaffected
- Apache Camel (org.apache.camel:camel-mina) 4.23.0 unaffected

Description:

Generation of Error Message Containing Sensitive Information vulnerability in 
Apache Camel Mina component.

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

When processing of an exchange failed, the Mina consumer wrote 
exchange.getException() straight back over the socket to the remote peer. Over 
a textline codec that hands the peer the exception's class name and message; 
over the object codec it hands over the serialised exception, cause chain 
included. A remote peer able to provoke a failure could therefore read internal 
detail about the deployment - class and package names, and whatever a message 
or nested cause happens to carry, which in practice can include paths, host 
names and connection detail. The consumer had no option to suppress this, 
unlike the HTTP-family consumers aligned by CAMEL-23651.

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. A muteException consumer option, defaulting to 
true, replaces the route exception with a generic one carrying no class name, 
message or stack trace, while still writing a reply so that a synchronous peer 
is not left to time out. Set muteException=false to restore the previous 
behaviour. For deployments that cannot upgrade immediately, add an onException 
handler that sets the reply body explicitly, so the framework never writes the 
exception back to the peer.

Solution:

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. A muteException consumer option, defaulting to 
true, replaces the route exception with a generic one carrying no class name, 
message or stack trace, while still writing a reply so that a synchronous peer 
is not left to time out. Set muteException=false to restore the previous 
behaviour.

Work Arounds:

For deployments that cannot upgrade immediately, add an onException handler 
that sets the reply body explicitly, so the framework never writes the 
exception back to the peer.

Credit:

Claude Security (finder)
Andrea Cosentino (remediation developer)

References:

https://camel.apache.org/security/CVE-2026-85246.html
https://issues.apache.org/jira/browse/CAMEL-24476
https://github.com/apache/camel/pull/25741
https://github.com/apache/camel/pull/25934
https://github.com/apache/camel/pull/25935
https://camel.apache.org/
https://www.cve.org/CVERecord?id=CVE-2026-85246

Reply via email to