CVE-2026-101259
Apache Camel: divulgazione di informazioni tramite eccezioni del consumer non silenziate in Camel-CoAP
- Pubblicato
- 26 ott 2026
- Aggiornato
- 2 nov 2026
- Assegnazione CNA
- apache
- Evidenza osservata
- 30 ott 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
- 28,1%
- Data del modello
- 4 nov 2026
L'EPSS è una stima statistica, non una certezza o una misura di impatto. Combinalo con CVSS, stato KEV, esposizione e ambiente.
Riepilogo
Vulnerabilità di generazione di messaggi di errore contenenti informazioni sensibili nel componente CoAP di Apache Camel. Questo problema riguarda Apache Camel: dalla 4.0.0 precedente alla 4.18.5, dalla 4.19.0 precedente alla 4.22.2. Quando il consumer CoAP non riusciva a costruire la propria risposta una volta completata la route, CamelCoapResource intercettava l'eccezione risultante e ne inviava il messaggio al client CoAP come payload di una risposta 5.00 Internal Server Error. Il caso tipico è un errore di conversione di tipo: il consumer converte il corpo finale del messaggio nel payload byte[] e gli header CamelCoapMaxAge e CamelCoapETag nei rispettivi tipi, dopo che la route è terminata, e quindi al di fuori del gestore degli errori della route. Nelle release interessate il messaggio di un simile errore riporta il nome della classe del valore in fase di conversione, contiene la forma stringa del valore e termina con il nome della classe e il messaggio della causa sottostante, cosicché un client CoAP remoto poteva leggere dettagli interni sul deployment: nomi di classi e package, la forma stringa del valore, come il percorso di un corpo di file, e quanto riportato dalla causa, che in pratica può includere percorsi, nomi host e dettagli di connessione di un backend. Il consumer non aveva alcuna opzione per sopprimere ciò, a differenza dei consumer HTTP, che offrono a tale scopo un'opzione muteException. L'eccezione sollevata da una route in errore non veniva inviata: il consumer non verificava se lo scambio fosse fallito e rispondeva a un errore della route con 2.05 Content e con qualunque corpo il messaggio contenesse in quel momento. Per giungere alla divulgazione è quindi necessaria una route la cui risposta completata possa essere resa non convertibile da un client remoto, il che dipende da come è scritta la route. Si raccomanda agli utenti di aggiornare alla versione 4.23.0, che corregge il problema. Se gli utenti si trovano sul ramo di release 4.22.x, si suggerisce di aggiornare alla 4.22.2. Se gli utenti si trovano sul ramo di release 4.18.x, si suggerisce di aggiornare alla 4.18.5. Il ramo di release 4.14.x e precedenti, e le linee di release dalla 4.15.x alla 4.17.x e dalla 4.19.x alla 4.21.x, hanno raggiunto l'end of life prima che questo problema fosse risolto e non riceveranno una correzione, pertanto i deployment su di esse devono passare a una release supportata. L'aggiornamento è sufficiente da solo: la nuova opzione muteException del consumer è impostata su true per impostazione predefinita su tutte e tre le linee di release corrette, quindi la risposta di errore non contiene alcun payload senza alcuna modifica alla configurazione. Per i deployment che non possono aggiornare immediatamente, assicurarsi che la risposta possa essere sempre costruita una volta completata la route: convertire il corpo in byte[] o String come ultimo passaggio di ogni route che consuma da un endpoint coap, ad esempio con convertBodyTo, assegnare agli header CamelCoapMaxAge e CamelCoapETag solo valori dei rispettivi tipi e aggiungere un gestore onException che contrassegni l'errore come gestito e imposti esplicitamente il corpo della risposta, in modo che un errore di conversione venga sollevato e sostituito all'interno della route anziché nel consumer.
Fonti
Riproduttore proof-of-concept eseguibile per CVE-2026-101259, che dimostra la divulgazione dei messaggi di errore nei consumer camel-coap di Apache Camel su Spring Boot e Quarkus, oltre alla verifica della correzione.
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.