Os componentes Apache Camel HTTP, Netty HTTP, Undertow e Vert.x HTTP possuem um problema onde mensagens recebidas podem sobrescrever a URI do endpoint através dos cabeçalhos `CamelHttpUri` e `CamelRestHttpUri`. Esses cabeçalhos são processados pelo `CamelContext.resolvePropertyPlaceholders()`, que é uma facilidade de resolução de configuração. Isso permite que um invasor acesse variáveis de ambiente do sistema operacional, propriedades do sistema JVM, funções de segredo `PropertiesFunction` registradas (incluindo AWS, Azure, GCP, HashiCorp, IBM, CyberArk e Kubernetes) e invoque métodos sem argumentos em qualquer bean no registro via `camel-bean`.
Sete locais de chamada são afetados:
- `HttpHelper.createURL()` e `HttpHelper.createMethod()` em camel-http-common
- `HttpMethodHelper.createMethod()` em camel-http
- `VertxHttpHelper.resolveHttpURI()` em camel-vertx-http
- `UndertowHelper.createURL()` e `UndertowHelper.createMethod()` em camel-undertow
- `NettyHttpHelper.createURL()` em camel-netty-http
Certos consumidores HTTP podem preencher automaticamente o `CamelHttpUri` a partir da linha de requisição. Além disso, placeholders não resolvíveis podem disparar uma `RuntimeExchangeException` que ecoa a URI, revelando potencialmente se uma chave de configuração está definida.