Redirections et transferts non validés

La plupart des applications Web sur Internet redirigent et redirigent fréquemment les utilisateurs vers d'autres pages ou d'autres sites Web externes. Cependant, sans valider la crédibilité de ces pages, les pirates peuvent rediriger les victimes vers des sites de phishing ou de logiciels malveillants, ou utiliser des renvois pour accéder à des pages non autorisées.

Comprenons les agents de menace, les vecteurs d'attaque, la faiblesse de la sécurité, l'impact technique et les impacts commerciaux de cette faille à l'aide d'un diagramme simple.

Exemple

Quelques exemples classiques de redirections et de transferts non validés sont comme donnés -

  • Disons que l'application a une page - redirect.jsp, qui prend un paramètre redirectrul . Le pirate ajoute une URL malveillante qui redirige les utilisateurs qui effectuent du phishing / installent des logiciels malveillants.

http://www.mywebapp.com/redirect.jsp?redirectrul=hacker.com
  • Toutes les applications Web utilisées pour rediriger les utilisateurs vers différentes parties du site. Afin d'atteindre la même chose, certaines pages utilisent un paramètre pour indiquer où l'utilisateur doit être redirigé si une opération réussit. L'attaquant crée une URL qui passe la vérification de contrôle d'accès de l'application, puis transmet l'attaquant à une fonctionnalité administrative pour laquelle l'attaquant n'a pas accès.

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

Mécanismes préventifs

  • Il vaut mieux éviter d'utiliser les redirections et les transferts.

  • Si cela est inévitable, alors cela devrait être fait sans impliquer les paramètres utilisateur dans la redirection de la destination.