CVE-2026-71300
Apache Camel: Camel-Atmosphere-Websocket: Injeção de cabeçalho no despacho WebSocket
- Publicado
- 24 de ago. de 2026
- Atualizado
- 25 de ago. de 2026
- Atribuindo CNA
- apache
- Evidência observada
- 24 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
- 39,1%
- 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 validação de entrada incorreta no componente Atmosphere Websocket do Apache Camel. Este problema afeta o Apache Camel: desde 4.0.0 até antes de 4.14.9, desde 4.15.0 até antes de 4.18.4, desde 4.19.0 até antes de 4.22.0. O produtor camel-atmosphere-websocket seleciona para quais pares WebSocket conectados uma mensagem é entregue por meio de cabeçalhos do Exchange, e os valores de string desses cabeçalhos ficavam fora do namespace do Camel: websocket.connectionKey e websocket.connectionKey.list, juntamente com websocket.sendToAll, websocket.eventType e websocket.errorType. WebsocketEndpoint estende ServletEndpoint e, portanto, herda HttpHeaderFilterStrategy, que filtra apenas os prefixos Camel e camel; os nomes com pontos, portanto, ficavam fora do namespace filtrado e eram admitidos em ambas as direções por todos os consumidores da família HTTP. Em uma rota que conecta um consumidor HTTP a um produtor atmosphere-websocket, um remetente externo poderia fornecer o cabeçalho de lista e assumir a decisão de distribuição do produtor. WebsocketProducer.process testa o cabeçalho de lista antes do cabeçalho de chave única, portanto, um valor injetado descartava o destinatário que a rota havia selecionado: uma notificação destinada a um cliente conectado poderia ser suprimida ou entregue, em vez disso, a um cliente diferente cuja chave de conexão o remetente conhece. O cabeçalho não precisa ser um parâmetro de consulta e não precisa ser fornecido literalmente como uma lista — o binding HTTP do Camel converte um nome de cabeçalho repetido, e um valor entre colchetes, em uma List ao mapear para o Exchange — portanto, um cabeçalho HTTP de entrada comum é suficiente para alcançar o ramo com valor de lista. Isso é distinto de CVE-2026-55993, que diz respeito ao caminho de parâmetro de consulta no lado do consumidor no mesmo componente. O comportamento remonta à introdução dessas constantes, lançadas pela primeira vez na versão 2.17.0, e permaneceu inalterado até esta correção. Recomenda-se que os usuários atualizem para a versão 4.22.0, que corrige o problema. Se os usuários estiverem na linha de versões LTS 4.14.x, recomenda-se atualizar para 4.14.9. Se os usuários estiverem na linha de versões 4.18.x, recomenda-se atualizar para 4.18.4. Para implantações que não podem atualizar imediatamente, remova os cabeçalhos de distribuição no limite de confiança antes do produtor, por exemplo com removeHeaders(“websocket.*”) posicionado entre o consumidor HTTP e o produtor atmosphere-websocket. Observe que a correção renomeia os valores de string dos cabeçalhos para o namespace do Camel, o que é uma mudança que quebra a compatibilidade para rotas que os definem por string literal: rotas que referenciam os campos de WebsocketConstants simbolicamente não são afetadas, e a mudança está documentada nos guias de atualização. Como defesa em profundidade, não conecte um consumidor HTTP não confiável diretamente a um produtor WebSocket cuja distribuição seja orientada por cabeçalhos sem antes remover o namespace de distribuição.
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.