O que é?
Um ataque CSRF, também conhecido como ataque de falsificação de solicitação entre sites, explora a confiança que os aplicativos web depositam em seus usuários autenticados. Nesse tipo de ataque, um invasor engana um usuário autenticado para realizar ações não intencionais em um aplicativo web, como:
- Transferir dinheiro
- Alterar senhas
- Publicar informações confidenciais
Como funciona?
- Contexto: O usuário está logado em um aplicativo web confiável (site A).
- Enganação: O invasor induz o usuário a visitar um site malicioso (site B).
- Solicitação maliciosa: O site B contém um script que envia uma solicitação HTTP para o site A.
- Autenticação aproveitada: A solicitação inclui cookies de autenticação do usuário, fazendo com que o site A acredite que a solicitação veio do próprio usuário.
- Ação não autorizada: O site A executa a ação solicitada pelo invasor, sem o conhecimento ou consentimento do usuário.
Exemplo:
Imagine que um usuário esteja logado em sua conta bancária online (site A). O invasor envia um email para o usuário com um link para um site malicioso (site B). O site B contém um script que, quando clicado, envia uma solicitação HTTP para o site A, solicitando a transferência de dinheiro para a conta do invasor. Como a solicitação inclui os cookies de autenticação do usuário, o site A executa a transferência sem pedir confirmação, pois acredita que a solicitação veio do próprio usuário.
Prevenção:
- Tokens de sincronização: O aplicativo web gera um token único para cada usuário autenticado e o inclui em todas as solicitações. O site B não pode obter o token, então a solicitação maliciosa falhará.
- Verificação de origem: O aplicativo web verifica a origem de todas as solicitações para garantir que elas vêm do seu próprio domínio.
- HTTP Referer: O aplicativo web verifica o cabeçalho HTTP Referer para ver se a solicitação veio de um site confiável.
Recomendações:
- Mantenha seus softwares e navegadores atualizados.
- Tenha cuidado ao clicar em links em emails ou mensagens instantâneas de fontes desconhecidas.
- Use senhas fortes e exclusivas para cada conta online.
- Desative os cookies em seu navegador para sites que você não usa regularmente.
- Instale extensões de segurança em seu navegador.
Curso .NET 8 WEB API RESTful 2024 completa com EFCore 8
https://www.udemy.com/course/net-8-web-api-restful-2024-completa-com-efcore-8/?couponCode=ST8MT40924
Curso de Blazor .net 8 – 2024 com EntityFramework + C# Linguagem Básico e Avançado
https://www.udemy.com/course/curso-de-blazor-net-8-2024-com-entityframework/?couponCode=ST8MT40924