Falhas do tipo CWE-1385

41 resultados

Falta de validação de origem em WebSockets

Aplicações que aceitam conexões WebSocket sem validar a origem (header Origin ou Referer) permitem que qualquer site faça requisições WebSocket em nome do usuário autenticado. Um atacante pode hospedar um site malicioso que, quando visitado por um usuário logado, envia comandos pela WebSocket já estabelecida, contornando a proteção de mesma origem.

Exemplo

Um app de banco usa WebSocket para transferências. Um atacante cria site que, ao ser visitado, faz a WebSocket (já autenticada no navegador) enviar uma transferência. O servidor não valida se a requisição veio do domínio legítimo e processa o comando.

Como mitigar

Valide explicitamente o header Origin ou Referer no servidor antes de aceitar a conexão WebSocket; combine com tokens CSRF e nonce por mensagem. Implemente whitelist de origens permitidas e rejeite conexões de domínios desconhecidos.