Falsificação de solicitação entre sites (csrf)

Definição - O que significa Cross-Site Request Forgery (CSRF)?

A falsificação de solicitação entre sites (CSRF) é um tipo de exploração de site realizada pela emissão de comandos não autorizados de um usuário de site confiável. O CSRF explora a confiança de um site para o navegador de um determinado usuário, ao contrário do cross-site scripting, que explora a confiança do usuário para um site.

Esse termo também é conhecido como equitação de sessão ou ataque de um clique.

Definirtec explica Cross-Site Request Forgery (CSRF)

Um CSRF geralmente usa o comando "GET" de um navegador como o ponto de exploração. Os falsificadores de CSR usam tags HTML como "IMG" para injetar comandos em um site específico. Um determinado usuário desse site é então usado como um host e um cúmplice involuntário. Freqüentemente, o site não sabe que está sendo atacado, pois um usuário legítimo está enviando os comandos. O invasor pode emitir uma solicitação para transferir fundos para outra conta, retirar mais fundos ou, no caso do PayPal e sites semelhantes, enviar dinheiro para outra conta.

Um ataque CSRF é difícil de executar porque várias coisas precisam acontecer para que ele seja bem-sucedido:

  • O atacante deve ter como alvo um site que não verifica o cabeçalho do referenciador (o que é comum) ou um usuário / vítima com um navegador ou bug de plug-in que permite falsificação do referenciador (o que é raro).
  • O invasor deve localizar um formulário de envio no site de destino, que deve ser capaz de algo como alterar as credenciais de login do endereço de e-mail da vítima ou fazer transferências de dinheiro.
  • O invasor deve determinar os valores corretos para todas as entradas do formulário ou URL. Se algum deles precisar ser valores secretos ou IDs que o invasor não consiga adivinhar com precisão, o ataque falhará.
  • O invasor deve atrair o usuário / vítima para uma página da Web com código malicioso enquanto a vítima está conectada ao site de destino.

Por exemplo, suponha que a pessoa A esteja navegando em sua conta bancária enquanto também está em uma sala de chat. Há um invasor (Pessoa B) na sala de chat que descobre que a Pessoa A também está conectada ao bank.com. A pessoa B induz a pessoa A a clicar no link de uma imagem engraçada. A tag "IMG" contém valores para as entradas de formulário do bank.com, que irão efetivamente transferir uma certa quantia da conta da pessoa A para a conta da pessoa B. Se bank.com não tiver autenticação secundária para a Pessoa A antes de os fundos serem transferidos, o ataque terá êxito.