CVE-2026-101259
Apache Camel: divulgación de información en Camel-CoAP mediante excepciones de consumidor no silenciadas
- Publicado
- 26 oct 2026
- Actualizado
- 26 oct 2026
- Asignación de CNA
- apache
- Evidencia observada
- 30 oct 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:NBajo · próximos 30 días
- Percentil
- 27,9 %
- Fecha del modelo
- 29 oct 2026
EPSS es una estimación estadística, no una certeza o una medida de impacto. Combínelo con CVSS, estado KEV, exposición y su entorno.
Resumen
Vulnerabilidad de generación de mensajes de error que contienen información sensible en el componente CoAP de Apache Camel. Este problema afecta a Apache Camel: desde 4.0.0 hasta antes de 4.18.5, desde 4.19.0 hasta antes de 4.22.2. Cuando el consumidor CoAP no podía construir su respuesta una vez que la ruta había finalizado, CamelCoapResource capturaba la excepción resultante y enviaba su mensaje de vuelta al cliente CoAP como carga útil de una respuesta 5.00 Internal Server Error. El caso típico es un fallo de conversión de tipo: el consumidor convierte el cuerpo del mensaje final a la carga útil byte[], y las cabeceras CamelCoapMaxAge y CamelCoapETag a sus tipos, después de que la ruta haya retornado y, por lo tanto, fuera del manejador de errores de la ruta. En las versiones afectadas, el mensaje de dicho fallo nombra la clase del valor que se está convirtiendo, incluye la forma de cadena del valor y termina con el nombre de la clase y el mensaje de la causa subyacente, por lo que un cliente CoAP remoto podría leer detalles internos sobre el despliegue: nombres de clases y paquetes, la forma de cadena del valor, como la ruta de un cuerpo de archivo, y lo que sea que transporte la causa, que en la práctica puede incluir rutas, nombres de host y detalles de conexión de un backend. El consumidor no tenía opción de suprimir esto, a diferencia de los consumidores HTTP, que ofrecen una opción muteException para ese propósito. La excepción lanzada por una ruta fallida no se enviaba: el consumidor no comprobaba si el exchange había fallado y respondía a un fallo de ruta con 2.05 Content y el cuerpo que el mensaje tuviera en ese momento. Por lo tanto, para alcanzar la divulgación se requiere una ruta cuya respuesta completada un cliente remoto pueda hacer inconvertible, lo que depende de cómo esté escrita la ruta. Se recomienda a los usuarios actualizar a la versión 4.23.0, que corrige el problema. Si los usuarios están en la línea de versiones 4.22.x, se sugiere actualizar a 4.22.2. Si los usuarios están en la línea de versiones 4.18.x, se sugiere actualizar a 4.18.5. La línea de versiones 4.14.x y anteriores, y las líneas de versiones 4.15.x a 4.17.x y 4.19.x a 4.21.x, alcanzaron el fin de su ciclo de vida antes de que se resolviera este problema y no recibirán una corrección, por lo que los despliegues en ellas deben migrar a una versión soportada. La actualización es suficiente por sí sola: la nueva opción muteException del consumidor tiene el valor predeterminado true en las tres líneas de versiones corregidas, por lo que la respuesta de error no transporta carga útil sin ningún cambio de configuración. Para los despliegues que no puedan actualizar de inmediato, asegúrese de que la respuesta siempre pueda construirse una vez que la ruta haya finalizado: convierta el cuerpo a byte[] o String como último paso de cada ruta que consuma desde un endpoint coap, por ejemplo con convertBodyTo, asigne a las cabeceras CamelCoapMaxAge y CamelCoapETag únicamente valores de sus propios tipos, y añada un manejador onException que marque el fallo como manejado y establezca explícitamente el cuerpo de la respuesta, de modo que un fallo de conversión se lance y se reemplace dentro de la ruta en lugar de en el consumidor.
Uso responsable
Utilice información sobre vulnerabilidades solo en sistemas de su propiedad o que esté autorizado a probar. Kitploit enlaza con metadatos de investigación pública y no almacena código de explotación ni cargas útiles maliciosas.