MEDIUM 5.3

CVE-2026-49365: Apache Camel Netty HTTP Stack Trace Information Disclosure

Apache Camel's Netty HTTP component has a flaw where error messages are returned to users in plain text, potentially exposing sensitive information like stack traces, credentials, and internal system details. The problem stems from a default setting (muteException=false) that differs from other Camel HTTP components. Any unauthenticated user who can reach the endpoint and trigger an error—such as sending a malformed request—receives the full Java stack trace, which can reveal internal architecture and aid attackers in planning further compromises.

Source data · NVD / CISA · public domain

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
Weaknesses (CWE)
CWE-209
Affected products
1 configuration(s)
Published / Modified
2026-07-06 / 2026-07-09

NVD description (verbatim)

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.

2 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

The camel-netty-http HTTP server consumer implements error handling through the muteException configuration option, which controls whether Throwable stack traces are serialized to the HTTP response body. Due to the backing field being an uninitialized primitive boolean, it defaults to false (Java's default for primitives), whereas sibling HTTP components (camel-http, camel-jetty, camel-servlet, camel-platform-http) default to true. When muteException=false and route processing fails, DefaultNettyHttpBinding writes the complete stack trace as text/plain to the response body instead of returning an empty body. This exposes CWE-209 (Information Exposure Through an Error Message) to any unauthenticated remote client capable of triggering a processing exception.

Business impact

This vulnerability enables reconnaissance attacks by leaking internal system architecture, dependency versions, database names, filesystem paths, and potentially embedded credentials through error messages. An attacker can map the application's structure, identify specific software versions with known weaknesses, and locate valid authentication endpoints or backend services—all without authentication. In regulated environments, the exposure of system details and credentials may also trigger compliance violations (PCI-DSS, SOC 2, HIPAA depending on the data leaked).

Affected systems

Apache Camel versions 4.0.0 through 4.14.7, 4.15.0 through 4.18.2, and 4.19.0 through 4.20.x are affected. The issue is resolved in 4.14.8 (LTS branch), 4.18.3 (release branch), and 4.21.0 (latest). Any deployment running camel-netty-http from these ranges with the default muteException setting is vulnerable.

Exploitability

Exploitability is straightforward: the vulnerability requires no authentication, no user interaction, and no special network conditions beyond basic network access to the endpoint (CVSS AV:N, AC:L, PR:N). An attacker needs only to send a request that triggers a route processing error, such as an invalid parameter, malformed JSON body, or a request targeting a path that throws an exception. The attack can be performed via curl, a browser, or any HTTP client. No exploit code is needed.

Remediation

Immediate mitigation requires either upgrading to a patched version or setting muteException=true. Patched versions are: 4.21.0 (all users), 4.14.8 (LTS users), or 4.18.3 (release stream users). For deployments unable to patch immediately, explicitly set muteException=true either on individual camel-netty-http consumers in route definitions (e.g., netty-http:http://0.0.0.0:8080/api?muteException=true) or globally via the property camel.component.netty-http.configuration.mute-exception=true in application configuration.

Patch guidance

Prioritize upgrades in this order: (1) applications on 4.19.0–4.20.x should upgrade to 4.21.0; (2) applications on 4.18.x should upgrade to 4.18.3; (3) applications on 4.14.x LTS should upgrade to 4.14.8. Verify the specific patched version against the official Apache Camel release notes. If immediate patching is not possible, implement the muteException=true workaround as a temporary measure while planning the upgrade. Test the patched or mitigated deployment to confirm error responses no longer expose stack traces to clients.

Detection guidance

Search your environment for camel-netty-http components in active use. Review route definitions and configuration files for the muteException option—if it is absent or explicitly set to false, the endpoint is vulnerable. Monitor HTTP response logs for patterns indicating stack trace exposure (e.g., 'at java.', 'Exception', or 'Caused by' appearing in response bodies from netty-http endpoints). Implement a simple test request that triggers a known error (e.g., a route that throws an exception or an invalid request) and inspect the HTTP response body for stack trace content.

Why prioritize this

Although the CVSS score is MEDIUM (5.3), this vulnerability should be prioritized because: (1) it requires no authentication or user interaction, making it trivially accessible; (2) stack trace exposure directly leaks information that attackers use to plan further attacks, including credential theft and version-specific exploits; (3) it affects the Netty HTTP component, which is commonly deployed in microservices and API gateways; (4) the fix is straightforward (upgrade or one-line configuration change), making remediation low-friction; and (5) in regulated industries, the exposure may trigger compliance investigations. Organizations with internet-facing Camel instances should treat this as high priority despite the MEDIUM score.

Risk score, explained

The CVSS 3.1 score of 5.3 (MEDIUM) reflects a low confidentiality impact on the affected system itself. However, the vector (AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N) does not fully capture the downstream risk: stack traces are reconnaissance vectors that enable secondary attacks. From a business risk perspective, information disclosure should be weighted higher when it reveals credentials, system topology, or dependency details. Consider raising this to HIGH in your organization's risk model if your Camel instances are internet-facing or handle sensitive operations.

Frequently asked questions

Does this affect all Camel HTTP components, or just Netty?

Only camel-netty-http is affected. The other Camel HTTP server components (camel-http, camel-jetty, camel-servlet, camel-platform-http) correctly default muteException to true, so they do not expose stack traces by default.

If we set muteException=true as a workaround, is that as secure as upgrading?

Yes, setting muteException=true provides the same protection as upgrading: errors no longer return stack traces to clients. However, this is a configuration workaround, not a code fix. It is best to treat it as a temporary measure while you plan and execute the upgrade.

Can an attacker exploit this to execute code?

No, this vulnerability only leaks information (stack traces). It does not allow arbitrary code execution or system compromise by itself. However, the information disclosed can be used to identify other vulnerabilities or credentials, which could then be exploited further.

How do we know if an attacker has already exploited this?

Search HTTP access and error logs for requests to camel-netty-http endpoints followed by responses containing Java stack trace content (look for patterns like 'at java.', 'Exception', 'Caused by', or class names). Also check for any suspicious requests that appear designed to trigger errors, such as requests with malformed JSON, invalid parameters, or non-existent resource paths.

This analysis is based on the vulnerability description and official Apache Camel advisory information as of the publication date. Organizations should verify patch availability and version compatibility against the official Apache Camel project releases before deploying updates. The CVSS score reflects the technical severity of the vulnerability itself; organizations should assess business risk based on their deployment architecture, data sensitivity, and exposure to untrusted networks. No exploit code or weaponized proof-of-concept is provided. Always conduct testing in a non-production environment before applying patches to production systems. Source: NVD (public-domain), retrieved 2026-08-15. Analysis generated by SEC.co (claude-haiku-4-5).