
Reproductor para CVE-2026-46457 — inyección de encabezados entrantes en Apache Camel camel-nats (inyección de cabeceras de control de Camel mediante un publicador NATS; CamelHttpUri -> SSRF)
Reproductores de prueba de concepto ejecutables para la misma vulnerabilidad de Apache Camel, uno por runtime:
| Runtime | Directorio | Stack |
|---|---|---|
| Camel Spring Boot | camel-spring-boot/ | Spring Boot 3.2.0 + camel-spring-boot 4.18.2 |
| Camel Quarkus | camel-quarkus/ | Quarkus 3.36.0 + Camel Quarkus 3.36.0 (incluye Camel 4.20.0) |
Ambas son versiones afectadas (corregidas en 4.14.8 / 4.18.3 / 4.21.0) y ambas demuestran el mismo defecto:
NatsConfiguration establece por defecto headerFilterStrategy como un simple new DefaultHeaderFilterStrategy() sin reglas de entrada, por lo que NatsConsumer copia todos los encabezados de los mensajes NATS entrantes al Exchange — incluido CamelHttpUri. El productor camel-http respeta ese encabezado como su URI de solicitud, de modo que cualquiera que pueda publicar en el subject consumido redirige la solicitud saliente a un destino de su elección (SSRF, CWE-20). La misma técnica alcanza cualquier productor controlado por encabezados (CamelFileName, CamelSqlQuery, ...).
Cada subdirectorio es un proyecto autocontenido (además de un broker NATS iniciado por su docker-compose.yml) con su propio Dockerfile y README. En resumen, para cualquiera de los dos:
cd camel-spring-boot # or: cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down
Aviso: https://camel.apache.org/security/CVE-2026-46457.html
Estos reproductores se proporcionan solo para investigación de seguridad y pruebas autorizadas, para una vulnerabilidad divulgada públicamente y corregida. No los utilice contra sistemas sin permiso explícito.
| Propiedad | Valor |
|---|
| Componente | camel-nats |
| Clase afectada | org.apache.camel.component.nats.NatsConfiguration (por defecto DefaultHeaderFilterStrategy) / NatsConsumer |
| CWE | CWE-20: Validación incorrecta de entrada |
| Impacto | Un publicador del subject inyecta encabezados de control de Camel → redirige a los productores posteriores (SSRF mostrado aquí) |
| Versiones afectadas | Desde 4.0.0 hasta antes de 4.14.8, desde 4.15.0 hasta antes de 4.18.3, desde 4.19.0 hasta antes de 4.21.0 |
| Versiones corregidas | 4.14.8, 4.18.3, 4.21.0 |
| JIRA | CAMEL-23515 |