CVE-2026-53913
Apache Camel Keycloak: a KeycloakSecurityPolicy verifica o token de acesso do portador apenas dentro das suas verificações de função e permissão, portanto, na configuração padrão, o token nunca é verificado e qualquer valor de portador não nulo é aceito
- Publicado
- 6 de jul. de 2026
- Atualizado
- 7 de jul. de 2026
- Atribuindo CNA
- apache
- Evidência observada
- 7 de ago. de 2026
CVSS primário
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HBaixo · próximos 30 dias
- Percentil
- 63,3%
- Data do modelo
- 21 de set. de 2026
EPSS é uma estimativa estatística, não uma certeza ou uma medida de impacto. Combine-o com CVSS, status KEV, exposição e seu ambiente.
Resumo
# Vulnerabilidade de Autenticação Incorreta, Ausência de Autenticação para Função Crítica, Falha ao Falhar com Segurança ('Falha Aberta') no Componente Keycloak do Apache Camel A `KeycloakSecurityPolicy` do camel-keycloak protege uma rota executando `KeycloakSecurityProcessor.beforeProcess()`, que realiza três verificações em sequência: rejeita uma requisição que não carrega token de acesso, depois — apenas se `requiredRoles` não estiver vazio — valida os papéis, e — apenas se `requiredPermissions` não estiver vazio — valida as permissões. A verificação criptográfica real do token de acesso do portador (assinatura, emissor e expiração para um JWT local, ou estado ativo e emissor para introspecção de token) é executada exclusivamente dentro dessas verificações de papel e permissão. A `KeycloakSecurityPolicy` define `requiredRoles` e `requiredPermissions` como vazios por padrão — que é a 'Configuração Básica' documentada — portanto, em uma rota configurada dessa forma, as verificações de papel e permissão são ignoradas e o token de acesso nunca é verificado. A verificação de presença do token ainda rejeita um token ausente, mas um token inválido é aceito: qualquer valor não nulo no cabeçalho `Authorization: Bearer` — incluindo uma string arbitrária ou um JWT forjado e não assinado — passa pela política e a requisição alcança a rota protegida, sem verificação de assinatura, emissor ou expiração e sem requisição ao Keycloak. O token é lido do cabeçalho da requisição de entrada porque `allowTokenFromHeader` é definido como `true` por padrão. Como o motivo normal para colocar uma rota atrás dessa política é que a rota executa trabalho no lado do servidor, a bypass resulta em acesso não autenticado a esse trabalho; onde a rota protegida encaminha para um produtor capaz de executar código, pode resultar em execução remota de código não autenticada. Este defeito é independente do CVE-2026-23552: essa questão dizia respeito à declaração do emissor e foi corrigida adicionando uma verificação dentro da rotina de verificação, mas aqui a rotina de verificação não é alcançada de forma alguma na configuração padrão, portanto o defeito permanece. Esta questão afeta o Apache Camel: de 4.15.0 antes de 4.18.3, de 4.19.0 antes de 4.21.0. Recomenda-se que os usuários atualizem para a versão 4.21.0, que corrige o problema. Se os usuários estiverem no fluxo de versões 4.18.x, sugere-se que atualizem para 4.18.3. Para implantações que não podem atualizar imediatamente, configure um `requiredRoles` ou `requiredPermissions` não vazio em cada `KeycloakSecurityPolicy` para que o caminho de verificação do token seja exercitado, defina `allowTokenFromHeader` como `false` onde o token não é esperado do cabeçalho da requisição, ou realize a verificação do token na camada do framework antes da política.
Uso responsável
Use informações de vulnerabilidade apenas em sistemas que você possui ou está autorizado a testar. O Kitploit vincula-se a metadados de pesquisa pública e não armazena código de exploração ou cargas maliciosas.