PT-2020-14214 · Unknown+1 · Faye-Websocket+3

Daniel Morsing

+1

·

Publicado

2020-07-31

·

Atualizado

2020-08-11

·

CVE-2020-15134

CVSS v3.1

8.7

Alta

VetorAV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:N
Nome do software vulnerável e versões afetadas
Versões do Faye anteriores à 1.4.0
Descrição
O problema está relacionado à falta de validação de certificados nos handshakes TLS. O Faye utiliza o em-http-request e o faye-websocket, que dependem do método EM::Connection#start tls no EventMachine. Esse método não implementa a verificação de certificados por padrão, tornando qualquer conexão https: ou wss: vulnerável a um ataque man-in-the-middle. A primeira solicitação feita por um cliente Faye é enviada via HTTP normal, mas as mensagens posteriores podem ser enviadas via WebSocket, tornando-o vulnerável ao mesmo problema. Este problema foi corrigido no Faye v1.4.0, que habilita a verificação por padrão.
Recomendações
Para versões anteriores à 1.4.0, atualize para o Faye v1.4.0 para habilitar a verificação por padrão.
Como solução alternativa temporária, considere configurar a opção tls para verificar pares, por exemplo, em Ruby: client = Faye::Client.new(‘https://example.com/’, tls: { verify peer: true }) ou em Node.js: var client = new faye. Client(‘https://example.com/’, { tls: { ca: fs.readFileSync(‘path/to/certificate.pem’) } });.
Se você precisar se comunicar com servidores cujos certificados não são reconhecidos pelos certificados raiz padrão, adicione o certificado deles ao conjunto de certificados raiz do seu sistema.

Exploit

Correção

Improper Certificate Validation

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2020-15134
GHSA-3Q49-H8F9-9FR9

Produtos afetados

Eventmachine
Faye
Em-Http-Request
Faye-Websocket