Falhas do tipo CWE-293

1 resultado

Autenticação baseada no campo Referer

É usar o header HTTP Referer como mecanismo de autenticação ou autorização. O problema: o Referer é controlado pelo cliente (navegador ou requisição), pode ser falsificado facilmente e não é confiável para decisões de segurança. Um atacante manipula o header para contornar verificações.

Exemplo

Um endpoint valida se a requisição vem de um domínio específico checando apenas o Referer (ex: 'if (request.headers['referer'].includes('trusted.com'))'). Um atacante envia uma requisição com Referer falsificado e consegue acesso sem estar realmente autenticado.

Como mitigar

Use tokens de sessão criptografados (cookies HttpOnly ou JWT assinado), implemente CSRF tokens para formulários, e valide tokens no servidor. Nunca use Referer, User-Agent ou IPs como único fator de autenticação.