
Reprodutor de PoC para CVE-2026-49098 (Apache Camel camel-kafka): o cabeçalho kafka.OVERRIDE_TOPIC sem o prefixo Camel contorna o filtro de cabeçalhos HTTP upstream e substitui o tópico configurado do produtor, injetando um registro forjado por um atacante em um tópico Kafka privilegiado (injeção entre tópicos). Corrigido em 4.14.8/4.18.3/4.21.0.
kafka.OVERRIDE_TOPIC do camel-kafkaReprodutores de prova de conceito executáveis para a mesma vulnerabilidade do Apache Camel, um por runtime:
| Runtime | Diretório | 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 (inclui Camel 4.20.0) |
Ambas são versões afetadas (o problema foi corrigido nas versões 4.14.8 / 4.18.3 / 4.21.0), e ambas demonstram o mesmo defeito: KafkaProducer.evaluateTopic() lê o cabeçalho kafka.OVERRIDE_TOPIC sem o prefixo Camel e o prefere em relação ao tópico configurado no endpoint. Ele escapa do filtro de cabeçalho HTTP (tanto do servlet platform-http do Spring Boot quanto do Vert.x platform-http do Quarkus) e move um registro produzido para um tópico escolhido pelo atacante — injeção entre tópicos (CWE-20 → CWE-74).
Cada subdiretório é um projeto autocontido com seu próprio Dockerfile, docker-compose.yml e README com detalhes completos e etapas de reprodução. Em resumo, para qualquer um dos dois:
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 de segurança: https://camel.apache.org/security/CVE-2026-49098.html
Estes reprodutores são fornecidos apenas para pesquisa de segurança e testes autorizados, para uma vulnerabilidade divulgada publicamente e já corrigida. Não os use contra sistemas sem permissão explícita.
| Propriedade | Valor |
|---|
| Componente | camel-kafka (Spring Boot: camel-kafka-starter; Quarkus: camel-quarkus-kafka) |
| CWE | CWE-20 (Validação de Entrada Incorreta) / CWE-74 (Injeção) |
| Impacto | Redirecionar / injetar um registro produzido para um tópico Kafka arbitrário |
| Versões Afetadas | Desde 4.0.0 até antes de 4.14.8, desde 4.15.0 até antes de 4.18.3, desde 4.19.0 até antes de 4.21.0 |
| Versões Corrigidas | 4.14.8, 4.18.3, 4.21.0 |
| JIRA | CAMEL-23584 (PR apache/camel#23602) |
| Crédito | Yu Bao (PayPal) |