Redirecionamentos e encaminhamentos não validados

A maioria dos aplicativos da Web na Internet freqüentemente redireciona e encaminha os usuários para outras páginas ou outros sites externos. No entanto, sem validar a credibilidade dessas páginas, os hackers podem redirecionar as vítimas para sites de phishing ou malware, ou usar encaminhamentos para acessar páginas não autorizadas.

Vamos entender os Agentes de Ameaça, Vetores de Ataque, Fraqueza de Segurança, Impacto Técnico e Impactos de Negócios dessa falha com a ajuda de um diagrama simples.

Exemplo

Alguns exemplos clássicos de redirecionamentos e encaminhamentos não validados são fornecidos -

  • Digamos que o aplicativo tenha uma página - redirect.jsp, que recebe um parâmetro de redirecionamento . O hacker adiciona um URL malicioso que redireciona os usuários que executam phishing / instala malware.

http://www.mywebapp.com/redirect.jsp?redirectrul=hacker.com
  • Todos os aplicativos da web usados ​​para encaminhar os usuários para diferentes partes do site. Para conseguir o mesmo, algumas páginas utilizam um parâmetro para indicar para onde o usuário deve ser redirecionado se uma operação for bem-sucedida. O invasor cria uma URL que passa na verificação de controle de acesso do aplicativo e, em seguida, encaminha o invasor para a funcionalidade administrativa para a qual o invasor não obteve acesso.

http://www.mywebapp.com/checkstatus.jsp?fwd=appadmin.jsp

Mecanismos Preventivos

  • É melhor evitar o uso de redirecionamentos e encaminhamentos.

  • Se for inevitável, deve ser feito sem envolver os parâmetros do usuário no redirecionamento do destino.