As aplicações web utilizam diversas maneiras para autenticar usuários, e uma das mais comuns é a utilização de cookies.
Mas o que são cookies? Cookies são cadeias de caracteres que armazenam dados essenciais para identificar se um usuário tem permissão para realizar determinadas ações dentro de uma aplicação.
No entanto, é fundamental implementar estratégias que protejam a aplicação contra tentativas de sequestro de cookies. Uma dessas estratégias é o uso do atributo SameSit
e nos cookies.
Atributo SameSite nos cookies
O atributo SameSite
oferece três níveis de controle sobre o uso dos cookies:
- SameSite = None: Ao definir o valor como
None
, a aplicação fica em um cenário mais vulnerável, pois não haverá restrições sobre o envio do cookie. Assim, ele será incluído em qualquer tipo de requisição HTTP (GET, POST, DELETE, etc.), independentemente do contexto.
- SameSite = Lax: Com o valor
Lax
, a segurança da aplicação é aumentada, pois o cookie só será enviado em requisições GET, independentemente do contexto ou do domínio.
- SameSite = Strict: O valor
Strict
proporciona o maior nível de segurança. Nesse caso, mesmo em requisições GET, o cookie só será enviado se a requisição for do mesmo domínio e contexto, reduzindo a exposição a ataques.
Conclusão
Embora o atributo SameSite
seja amplamente aceito, sua adoção ainda não é universal. A correta implementação dos verbos HTTP é essencial para garantir o uso seguro dos cookies com SameSite
.
Um dos principais propósitos do atributo SameSite
é mitigar ataques de Cross-Site Request Forgery (CSRF), diminuindo, assim, a vulnerabilidade da aplicação a práticas de phishing.
Seja o primeiro a comentar