Les développeurs à la conquête de la sécurité : Série Partage & Apprentissage - Redirections et renvois non validés

Coder un site web ou une application capable de traiter des redirections et des transferts non validés peut s'avérer extrêmement dangereux, tant pour vos utilisateurs que pour votre organisation. Cette erreur courante est souvent exploitée par des pirates informatiques cherchant à mener des campagnes de phishing ou à accéder à des pages et des informations qui devraient normalement être restreintes.
Dès lors qu'une application web est conçue pour rediriger les utilisateurs vers de nouvelles pages, il existe un risque que ces requêtes soient manipulées ou détournées. Cela peut se produire en l'absence d'un processus de validation empêchant les paramètres de redirection de pointer vers des destinations non souhaitées.
La bonne nouvelle est que les redirections et transferts non validés font partie des vulnérabilités les plus faciles à éliminer de votre environnement. Une fois supprimés, vous pouvez prendre quelques mesures simples pour garantir qu'ils ne soient plus jamais générés à l'avenir.
Dans cet épisode, nous aborderons :
- Comment les pirates exploitent les vulnérabilités de redirection et de transfert non validés
- Pourquoi autoriser les redirections et transferts non validés peut être dangereux
- Politiques et techniques pouvant être employées pour détecter et corriger ce problème.
Comment les attaquants exploitent-ils les redirections et transferts non validés ?
Les attaquants doivent d'abord trouver une application web configurée pour rediriger les utilisateurs vers une ou plusieurs pages spécifiques. Si la page de destination est définie dans le code, il n'y a aucune vulnérabilité. Par exemple, en Java, il s'agirait d'un moyen sûr et prédéfini d'envoyer un utilisateur vers un nouvel emplacement sans qu'il ait à effectuer d'action, comme cliquer sur un lien hypertexte.
response.sendRedirect("http://www.knownsafesite.com");
La vulnérabilité survient si le site est programmé pour accepter une saisie utilisateur pour la redirection, ou si le paramètre est laissé ouvert, peut-être pour obtenir des informations d'une autre source. Par exemple, un développeur pourrait utiliser le paramètre GET "url".
response.sendRedirect(request.getParameter("url"));
Bien que cela offre plus de flexibilité, cela crée également la vulnérabilité des redirections et transferts non validés. Les pirates peuvent ajouter des informations après les barres obliques pour déclencher une redirection vers le site de leur choix, par exemple dans le cadre d'un e-mail de phishing. Les utilisateurs voient le domaine de confiance dans la première partie du lien et ne réalisent pas que le site web peut les rediriger vers le site du pirate.
Pourquoi les redirections et transferts non validés sont-ils si dangereux ?
Le danger posé par l'autorisation de redirections et de transferts non validés peut être important. Pour les utilisateurs, le plus grand risque est de devenir victimes d'attaques de phishing. Comme ils voient l'URL de premier niveau, ils sont plus enclins à faire confiance à un e-mail de phishing ou à une autre communication et à cliquer sur un lien. Et si la page vers laquelle ils sont redirigés ressemble à la vraie page, la tromperie peut être très efficace. Ils pourraient partager leur nom d'utilisateur, leurs mots de passe ou d'autres identifiants sans jamais se douter qu'ils sont manipulés.
Éliminer la menace posée par les redirections et transferts non validés
Les redirections et transferts non validés apparaissent lors du développement d'une application. Ils peuvent être éliminés a posteriori, mais le moyen le plus simple est de ne pas autoriser les paramètres utilisateur ou les chaînes ouvertes dans toute fonction de redirection ou de transfert. Définissez plutôt strictement les URL vers lesquelles les utilisateurs seront redirigés, en éliminant les variables et en ne laissant aucune marge de manœuvre aux attaquants. Mieux encore, envisagez de ne pas utiliser de redirections ou de transferts du tout.
S'il est absolument impossible d'éviter d'avoir des variables dans un processus de redirection ou de transfert, un processus de validation doit être mis en place pour garantir que la redirection pointe vers l'une des destinations valides autorisées. Enfin, utilisez des valeurs de mappage au lieu d'URL réelles. Les pirates essaieront d'utiliser les informations d'URL et ne pourront probablement pas deviner le schéma de mappage, même s'ils soupçonnent son utilisation.
Plus d'informations sur les redirections et transferts non validés
Pour aller plus loin, vous pouvez consulter les pages de référence de l'OWASP sur les redirections et transferts non validés. Vous pouvez également mettre vos nouvelles connaissances défensives à l'épreuve avec la démo gratuite de la plateforme Secure Code Warrior, qui forme les équipes de cybersécurité à devenir des cyber-guerriers hors pair. Pour en savoir plus sur la lutte contre cette vulnérabilité et une galerie d'autres menaces, visitez le blog de Secure Code Warrior.
Éliminez définitivement les redirections et renvois non validés. Mettez vos nouvelles connaissances en pratique et testez vos compétences sur notre plateforme de formation ludique : [Commencer ici]
Gouvernez le développement assisté par IA avant la mise en production
Évaluez les risques liés à l'IA, appliquez des politiques de codage sécurisé dès le commit et accélérez la livraison sécurisée tout au long de votre cycle de développement.
Explorer plus d'articles
Accédez à du contenu expert sur le codage sécurisé, la gouvernance de l'IA et la gestion des risques logiciels.
%252520%252520(3).avif)
Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Security as culture: How Blue Prism cultivates world-class secure developers
Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed

Une culture de la sécurité : comment Sage a bâti son programme de champions
Découvrez comment Sage a renforcé sa sécurité grâce à une approche flexible axée sur les relations humaines, formant plus de 200 champions de la sécurité et obtenant une réduction mesurable des risques.

Mois de la sensibilisation à la cybersécurité 2026 : comprendre la sécurité de l'IA est essentiel à la défense de l'entreprise
Nous avons atteint un point où la plupart des grandes entreprises d'IA ont publiquement appelé à un ralentissement mondial du développement de l'IA afin de permettre aux garde-fous de sécurité de rattraper leur retard. Pourtant, la réalité est que de graves problèmes de sécurité se sont déjà concrétisés. Cela place d'innombrables responsables de la sécurité et équipes de direction dans une situation d'urgence, alors que les coûts financiers et les risques liés à la mise en œuvre de l'IA ne cessent de s'accumuler.

Levier 8 : Valoriser votre programme
Un programme de codage sécurisé a besoin de plus qu'un contenu de qualité pour réussir. Le levier 8 montre comment l'image de marque transforme la participation en une expérience convoitée, axée sur le statut.
.avif)
Chaque employé est désormais en première ligne de la cybersécurité IA
Le paysage technologique des entreprises évolue à une vitesse que peu avaient anticipée avant qu'il ne soit trop tard. Nous avons officiellement franchi le cap du code écrit par l'humain et de l'assistance basique par copilote pour entrer dans l'ère du cycle de vie de développement agentique (ADLC). Si les agents IA autonomes promettent une efficacité sans précédent dans de multiples fonctions, ils apportent également une toute nouvelle catégorie de risques en matière de sécurité et de réglementation.
Sécurisez le développement piloté par l'IA avant le déploiement
Identifiez les risques de développement, appliquez vos politiques et prévenez les vulnérabilités tout au long du cycle de vie de vos logiciels.
