GHSA-hgg5-gp4c-gpcg
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Unauthenticated network reach against an exposed WebSocket endpoint (AV:N/PR:N/UI:N), low-complexity header injection (AC:L), high confidentiality from secret/SSRF disclosure with no integrity or availability impact.
Primary rating from Vendor (CNA).
CVSS VectorVendor
Lifecycle Timeline
7Blast Radius
ecosystem impact- 9 maven packages depend on org.apache.camel:camel-vertx-websocket (3 direct, 6 indirect)
Ecosystem-wide dependent count for version 4.0.0.
Description PRE-NVD
Articles & Coverage 5
AnalysisAI
Server-side request forgery and secret disclosure in Apache Camel's camel-vertx-websocket component (versions 4.0.0-4.14.7, 4.15.0-4.18.2, and 4.19.0-4.20.x) let a WebSocket client inject Camel-internal control headers such as CamelHttpUri because inbound query/path parameters are copied into the Exchange header map without a HeaderFilterStrategy. In routes that bridge the WebSocket consumer into a downstream HTTP producer, an attacker can redirect the server-side HTTP request to internal services or cloud metadata endpoints, and because the HTTP producer resolves Camel property placeholders on the attacker-supplied URI, environment variables, application properties, and vault secrets are resolved and exfiltrated. When the WebSocket endpoint is exposed without authentication (PR:N per CVSS), this is reachable by an unauthenticated remote attacker; there is no public exploit identified at time of analysis, and EPSS is low at 0.24%.
Technical ContextAI
Apache Camel is a widely used Java integration framework built around routes that move messages (Exchanges) between components. The flaw is in the camel-vertx-websocket consumer, specifically VertxWebsocketConsumer.populateExchangeHeaders(), which mapped inbound WebSocket query and path parameters directly into the Exchange header map with no HeaderFilterStrategy applied. Camel uses reserved 'Camel*' header names as internal control signals - notably CamelHttpUri (Exchange.HTTP_URI), which the HTTP producer uses to determine its target endpoint. Because the Camel header namespace was not filtered, externally supplied parameters could overwrite these control headers. The root cause maps to CWE-20 (Improper Input Validation): trusting external input to populate a privileged internal namespace. A compounding behavior is that the HTTP producer runs Camel property-placeholder resolution over the resulting URI, turning an SSRF primitive into a secrets-disclosure primitive when placeholders like environment-variable, property, or vault references are embedded in the injected value.
RemediationAI
Vendor-released patch: upgrade to 4.21.0, which applies a HeaderFilterStrategy that case-insensitively filters the Camel header namespace on inbound mapping so externally supplied Camel*/camel* headers are no longer copied into the Exchange. Stream-specific fixed versions are 4.14.8 for the 4.14.x LTS line and 4.18.3 for the 4.18.x line, per the vendor advisory at https://camel.apache.org/security/CVE-2026-46726.html. For deployments that cannot upgrade immediately, strip Camel control headers at the start of the route before they reach any producer using both removeHeaders('Camel*') and removeHeaders('camel*') to cover the case-insensitive bypass; require authentication on the WebSocket endpoint; and avoid bridging an untrusted vertx-websocket consumer directly into an HTTP producer whose target URI can be influenced by message headers. The header-stripping mitigation has minimal side effects but must include both case variants, and requiring authentication may break existing unauthenticated clients that legitimately connect to the endpoint.
Bypass/Injection vulnerability in Apache Camel components under particular conditions.10.0 through <= 4.10.1, from 4.8.0
The XSLT component in Apache Camel before 2.11.4 and 2.12.x before 2.12.3 allows remote attackers to read arbitrary file
Apache Camel's Jackson and JacksonXML unmarshalling operation are vulnerable to Remote Code Execution attacks. Rated cri
The XSLT component in Apache Camel 2.11.x before 2.11.4, 2.12.x before 2.12.3, and possibly earlier versions allows remo
Cross-realm token acceptance bypass in Apache Camel Keycloak security policy. The KeycloakSecurityPolicy fails to proper
Deserialization of Untrusted Data vulnerability in Apache Camel LevelDB component. The Camel-LevelDB DefaultLevelDBSeria
Unsafe Java deserialization in the Apache Camel camel-mina component (versions 3.0.0 through 4.14.5, 4.15.0 through 4.18
Apache Camel's File is vulnerable to directory traversal. Rated high severity (CVSS 7.5), this vulnerability is remotely
The camel-castor component in Apache Camel 2.x before 2.19.4 and 2.20.x before 2.20.1 is vulnerable to Java object de-se
The camel-xstream component in Apache Camel before 2.15.5 and 2.16.x before 2.16.1 allow remote attackers to execute arb
The camel-hessian component in Apache Camel 2.x before 2.19.4 and 2.20.x before 2.20.1 is vulnerable to Java object de-s
Apache Camel before 2.9.7, 2.10.0 before 2.10.7, 2.11.0 before 2.11.2, and 2.12.0 allows remote attackers to execute arb
Same weakness CWE-20 – Improper Input Validation
View allVendor StatusVendor
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-41837