Un magic link est un lien à usage unique envoyé par e-mail : le clic ouvre la session. C'est bien du passwordless, au sens où aucun secret mémorisé n'est saisi. Mais du point de vue de l'attaquant, le lien est le secret : c'est un jeton porteur, transmissible, qui n'a aucune connaissance du domaine sur lequel il finit par être utilisé. La disparition du mot de passe ne s'accompagne donc d'aucun gain sur le phishing.
Le cycle de vie du lien, et ses points de fuite
Suivre le lien de sa création à son usage fait apparaître les endroits où il échappe à l'utilisateur.
| Étape | Où le lien se trouve | Fuite possible |
|---|---|---|
| Génération | serveur applicatif | journalisation excessive de l'URL |
| Transport | serveurs de messagerie successifs | copies intermédiaires, absence de chiffrement bout en bout |
| Réception | boîte mail | messagerie compromise, appareil partagé |
| Prévisualisation | outils de sécurité, clients qui préchargent les URL | consommation du lien avant l'utilisateur |
| Clic | navigateur, parfois différent du navigateur d'origine | session ouverte sur un contexte non prévu |
| Après usage | historique, presse-papiers, transfert du message | réutilisation si le lien n'est pas invalidé |
La ligne « prévisualisation » est celle qui surprend le plus les équipes : de nombreux dispositifs de protection de la messagerie visitent les URL entrantes pour les analyser. Un lien à usage unique peut donc être consommé par un automate avant que l'utilisateur ne le voie, produisant des tickets de support difficiles à diagnostiquer — et, si le lien n'est pas invalidé, une fenêtre d'exposition.
Pourquoi le magic link ne protège pas du phishing
Le raisonnement est mécanique. Une page contrefaite demande l'adresse e-mail de la victime, la transmet au service légitime, qui envoie un magic link authentique. La victime reçoit un message parfaitement légitime, clique, et l'attaquant — placé en proxy inverse — récupère la session ouverte. Rien n'a été falsifié : c'est le service lui-même qui a produit le facteur d'accès.
Comparé à une signature FIDO2 liée à l'origine, la différence est structurelle : la signature ne produit rien d'utilisable sur un domaine différent, alors que le lien fonctionne quel que soit l'intermédiaire. Le critère qui discrimine n'est pas l'absence de mot de passe, c'est l'absence de valeur rejouable.
Les durcissements qui servent vraiment
Certains sont utiles, d'autres donnent une fausse assurance. Distinguons.
Réellement utiles :
- Lier le lien à la session d'origine. Le lien n'ouvre la session que dans le navigateur qui a émis la demande, via un identifiant de requête transmis séparément. Cela casse le scénario du lien transféré, y compris depuis une boîte compromise.
- Exiger une confirmation contextuelle. Afficher, dans le message et sur l'écran d'origine, un code court identique à valider. L'utilisateur constate lui-même la cohérence entre sa demande et le message reçu.
- Invalider strictement à l'usage, et invalider aussi tout lien antérieur non consommé.
- Utiliser une méthode POST plutôt qu'un simple GET pour l'activation, ce qui neutralise les visites automatiques de prévisualisation.
- Notifier sur un second canal l'ouverture d'une session depuis un contexte inhabituel.
Fausse assurance :
- Réduire la validité à quelques minutes ne gêne pas une attaque synchrone.
- Allonger le jeton ne change rien : personne ne devine ces liens, on les intercepte.
- Ajouter un code à saisir après le clic ne protège pas si ce code circule dans le même canal.
Où le magic link a une place légitime
Le condamner sans nuance serait excessif. Il rend service dans des contextes précis :
- Première connexion et invitations. Pour un utilisateur sans compte, un lien d'activation reste le mécanisme d'amorçage le plus simple — à condition de faire créer immédiatement un facteur plus solide, et de considérer le lien comme jetable et non comme méthode permanente.
- Services à faible enjeu. Newsletters, portails de consultation, comptes sans donnée sensible ni capacité d'action.
- Repli exceptionnel documenté, assorti d'un gel des opérations sensibles.
Il n'a en revanche pas sa place sur un accès à privilèges, un système exposé à Internet donnant accès à des données personnelles, ni sur un parcours de validation d'opération financière. Sur ces périmètres, une entité soumise à NIS2 ou DORA aura du mal à justifier qu'un jeton porteur transmis par messagerie constitue une mesure de gestion des risques proportionnée.
Ce qu'il faudrait à la place
La question à poser est : que voulions-nous exactement obtenir avec le magic link ? Le plus souvent, la réponse est « supprimer la friction du mot de passe ». Or on peut supprimer la friction sans introduire de jeton transmissible.
C'est le raisonnement de l'approche IDless et cognitive : ouvrir un canal éphémère chiffré par un QR code dynamique à usage unique, puis demander à l'utilisateur de résoudre un challenge appris hors ligne. Le parcours reste court, mais rien de réutilisable ne circule dans une messagerie — et il n'y a plus d'adresse e-mail à collecter pour préparer l'attaque.
FAQ
Un magic link est-il plus sûr qu'un mot de passe ?
Sur certains points oui : pas de réutilisation entre services, pas de base de secrets à protéger, pas de credential stuffing. Sur le phishing et le relais en temps réel, il n'apporte aucun gain, et il crée une dépendance nouvelle à la messagerie.
Combien de temps un lien doit-il rester valide ?
Assez pour couvrir les délais d'acheminement, assez peu pour limiter la réutilisation depuis un historique : quelques minutes constituent un compromis courant. Retenez surtout que cette durée ne protège pas contre une attaque synchrone.
Comment traiter les liens consommés par les outils de sécurité de la messagerie ?
En exigeant une activation par POST, déclenchée par une action explicite sur une page intermédiaire. Les visites automatiques ne consomment alors plus le lien, et les tickets de support liés à ce comportement disparaissent.
Peut-on combiner magic link et second facteur ?
Oui, et c'est préférable dès qu'il y a un enjeu. Mais si le second facteur est un code à recopier, la combinaison reste entièrement relayable. Le gain n'apparaît que si le second facteur est lié à l'origine ou non transmissible.
Aller plus loin : pilier : authentification cognitive · panorama des méthodes sans mot de passe · OTP e-mail en récupération de compte · magic link face au spear phishing