CVE-2026-46453
Apache Camel: Camel-Elasticsearch-Rest-Client: le costanti degli header di scambio senza il prefisso Camel bypassano il filtraggio degli header HTTP in ingresso, consentendo a client non affidabili di sovrascrivere la query e l'operazione Elasticsearch
- Pubblicato
- 6 lug 2026
- Aggiornato
- 6 lug 2026
- Assegnazione CNA
- apache
- Evidenza osservata
- 7 ago 2026
CVSS primario
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:NBasso · prossimi 30 giorni
- Percentile
- 44,7%
- Data del modello
- 21 set 2026
L'EPSS è una stima statistica, non una certezza o una misura di impatto. Combinalo con CVSS, stato KEV, esposizione e ambiente.
Riepilogo
# Validazione dell'Input Impropria, Bypass dell'Autorizzazione tramite Chiave Controllata dall'Utente nella vulnerabilità del client REST ElasticSearch di Apache Camel. Il componente camel-elasticsearch-rest-client legge diverse intestazioni Exchange per controllare il proprio comportamento - SEARCH_QUERY (un corpo di query avanzato), OPERATION (quale operazione Elasticsearch eseguire), INDEX_NAME, INDEX_SETTINGS e ID. I valori stringa di queste costanti di intestazione, definite in ElasticSearchRestClientConstant, sono nomi semplici senza prefisso ('SEARCH_QUERY', 'OPERATION', 'INDEX_NAME', 'INDEX_SETTINGS', 'ID') piuttosto che i nomi con prefisso 'Camel' usati da ogni altro componente Camel (ad esempio CamelSqlQuery, CamelMongoDbCriteria, CamelCqlQuery). Il filtro delle intestazioni HTTP in ingresso di Camel, HttpHeaderFilterStrategy, blocca solo i nomi di intestazione che iniziano con 'Camel' o 'camel'. Poiché i nomi delle intestazioni Elasticsearch non portano quel prefisso, passano attraverso il filtro in ingresso senza modifiche. Quando una route Camel espone un punto di ingresso HTTP (ad esempio platform-http) davanti a un producer elasticsearch-rest-client, un client HTTP non attendibile può impostare queste intestazioni direttamente sulla propria richiesta e sovrascrivere la query e l'operazione configurate dall'autore della route: leggere ogni documento nell'indice (SEARCH_QUERY con una query match_all), eliminare documenti (OPERATION impostata su Delete insieme a ID), o esfiltrare campi selezionati. Non sono richieste credenziali e il producer legge le intestazioni incondizionatamente. Questo problema riguarda Apache Camel: dalla 4.3.0 prima della 4.14.8, dalla 4.15.0 prima della 4.18.3, dalla 4.19.0 prima della 4.21.0. Si consiglia agli utenti di aggiornare alla versione 4.21.0, che risolve il problema. Se gli utenti sono sul flusso di release LTS 4.14.x, si consiglia di aggiornare alla 4.14.8. Se gli utenti sono sul flusso di release 4.18.x, si consiglia di aggiornare alla 4.18.3. La correzione rinomina i valori stringa delle costanti delle intestazioni Exchange di camel-elasticsearch-rest-client (ID, SEARCH_QUERY, INDEX_SETTINGS, INDEX_NAME, OPERATION) per includere il prefisso Camel (CamelElasticsearchId, CamelElasticsearchSearchQuery, CamelElasticsearchIndexSettings, CamelElasticsearchIndexName, CamelElasticsearchOperation) in modo che vengano bloccate dall'HttpHeaderFilterStrategy in ingresso; i nomi dei campi Java rimangono invariati. Per le distribuzioni che non possono aggiornare immediatamente, rimuovere le intestazioni interessate dai messaggi in ingresso non attendibili prima che raggiungano il producer (ad esempio removeHeader('SEARCH_QUERY'), removeHeader('OPERATION'), removeHeader('INDEX_NAME'), removeHeader('INDEX_SETTINGS') e removeHeader('ID') davanti all'endpoint elasticsearch-rest-client), oppure applicare una HeaderFilterStrategy personalizzata che blocchi questi nomi.
Utilizzo responsabile
Utilizza le informazioni sulla vulnerabilità solo sui sistemi che possiedi o che sei autorizzato a testare. Kitploit si collega ai metadati della ricerca pubblica e non memorizza codici exploit o payload dannosi.