Weaknesses of type CWE-293

1 result

Autenticação baseada no campo Referer

A aplicação usa o cabeçalho HTTP Referer como mecanismo de autenticação ou autorização, confiando que ele identifica legitimamente a origem da requisição. O problema é que o Referer é controlável pelo cliente e pode ser falsificado, alterado ou omitido pelo navegador, permitindo contorno de controles de segurança.

Example

Uma API verifica se req.headers.referer contém 'app.empresa.com' para permitir uma ação sensível. Um atacante forja uma requisição com Referer falso ou a copia em uma ferramenta como curl/Postman, contornando a validação e executando a ação sem autorização real.

How to mitigate

Nunca use Referer para autenticação ou autorização. Implemente tokens seguros (JWT, session tokens) armazenados em cookies HttpOnly ou headers Authorization; valide origem com CORS headers (Origin) apenas como complemento, nunca como única defesa.