<Vulnerability name="CVE-2026-49365">
    <DocumentDistribution xml:lang="en">Copyright © 2012 Red Hat, Inc. All rights reserved.</DocumentDistribution>
    <ThreatSeverity>Important</ThreatSeverity>
    <PublicDate>2026-07-06T08:11:49</PublicDate>
    <Bugzilla id="2497264" url="https://bugzilla.redhat.com/show_bug.cgi?id=2497264" xml:lang="en:us">
org.apache.camel/camel-netty-http: Apache Camel Netty HTTP: Information disclosure via error messages containing sensitive data
    </Bugzilla>
    <CVSS3 status="draft">
        <CVSS3BaseScore>5.3</CVSS3BaseScore>
        <CVSS3ScoringVector>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</CVSS3ScoringVector>
    </CVSS3>
    <CWE>CWE-209</CWE>
    <Details xml:lang="en:us" source="Mitre">
Generation of Error Message Containing Sensitive Information vulnerability in Apache Camel Netty HTTP component.

The camel-netty-http HTTP server consumer exposes a muteException option that controls what is returned to the client when a route processing error occurs. This option defaulted to false because the backing field was an uninitialised primitive boolean (Java's default of false), whereas the other Camel HTTP server components (camel-http / camel-jetty / camel-servlet and camel-platform-http) default it to true. With muteException=false, when a request triggers an exception during route processing the consumer writes the full Throwable stack trace into the HTTP response body as text/plain (via DefaultNettyHttpBinding) instead of returning an empty body. Any unauthenticated client that can reach the endpoint and cause a processing error - for example by sending a malformed request body, an invalid parameter, or otherwise triggering a route-internal failure - therefore receives a complete Java stack trace. Such a stack trace can disclose sensitive internal information, including credentials embedded in exception messages, internal host names and IP addresses, filesystem paths, dependency and version details, database and class names, and the application's internal structure, which an attacker can use to plan further attacks.
This issue affects Apache Camel: from 4.0.0 before 4.14.8, from 4.15.0 before 4.18.3, from 4.19.0 before 4.21.0.

Users are recommended to upgrade to version 4.21.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.8. If users are on the 4.18.x releases stream, then they are suggested to upgrade to 4.18.3. For deployments that cannot upgrade immediately, set muteException=true explicitly on the camel-netty-http consumer (for example netty-http: http://0.0.0.0:8080/api?muteException=true , or globally via the camel.component.netty-http.configuration.mute-exception=true property), so that processing errors no longer return the stack trace to the client.
    </Details>
    <Details xml:lang="en:us" source="Red Hat">
A flaw was found in the Apache Camel Netty HTTP component. An unauthenticated remote attacker can exploit this vulnerability by sending a malformed request that triggers an exception during route processing. Due to a misconfiguration where `muteException` is set to `false` by default, the system responds with a full Java stack trace. This stack trace can disclose sensitive internal information, such as credentials, internal hostnames, IP addresses, and filesystem paths, which could aid an attacker in planning further attacks.
    </Details>
    <Statement xml:lang="en:us">
This Important information disclosure flaw in the Apache Camel Netty HTTP component allows an unauthenticated remote attacker to obtain sensitive internal system details. By default, the `muteException` option is set to `false` in Red Hat deployments, causing full Java stack traces to be returned in HTTP responses when route processing errors occur. This can expose credentials, internal network configurations, and filesystem paths, significantly aiding an attacker in subsequent exploitation efforts.
    </Statement>
    <Mitigation xml:lang="en:us">
To mitigate this vulnerability, configure the Apache Camel Netty HTTP component to mute exceptions, preventing the disclosure of sensitive stack traces. This can be achieved by setting the `muteException` option to `true` on the `camel-netty-http` consumer URI, for example: `netty-http: http://0.0.0.0:8080/api?muteException=true`. Alternatively, this can be configured globally by setting the system property `camel.component.netty-http.configuration.mute-exception=true`. A restart of the application or service using the component may be required for the changes to take effect.
    </Mitigation>
    <PackageState cpe="cpe:/a:redhat:camel_quarkus:3">
        <ProductName>Red Hat build of Apache Camel 4 for Quarkus 3</ProductName>
        <FixState>Fix deferred</FixState>
        <PackageName>camel-netty-http</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/a:redhat:camel_spring_boot:4">
        <ProductName>Red Hat build of Apache Camel for Spring Boot 4</ProductName>
        <FixState>Fix deferred</FixState>
        <PackageName>camel-netty-http</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/a:redhat:jbosseapxp">
        <ProductName>Red Hat JBoss Enterprise Application Platform Expansion Pack</ProductName>
        <FixState>Fix deferred</FixState>
        <PackageName>camel-netty-http</PackageName>
    </PackageState>
    <References xml:lang="en:us">
https://www.cve.org/CVERecord?id=CVE-2026-49365
https://nvd.nist.gov/vuln/detail/CVE-2026-49365
https://camel.apache.org/security/CVE-2026-49365.html
    </References>
</Vulnerability>