C’est Noël, mais il y a des limites…
Image may be NSFW.Clik here to view.

Sur les réseaux sociaux tournent en permanence des tentatives d’arnaques renvoyant vers de faux sites. Certaines se renouvellent, d’autres existent depuis des (dizaines) d’années. C’est le cas des redirections avec les URL contenant un « @ ». La SNCF en est victime, mais c’est aux utilisateurs de faire attention. Sur ce coup, Firefox tire son épingle du jeu.
Tout le monde le sait, les arnaques sont nombreuses sur Internet et peuvent prendre différentes formes. Il est important d’être sur ses gardes, surtout quand l’offre paraît trop belle pour être vraie (spoiler : c’est très souvent le cas).
Dans notre dossier sur les noms de domaine, nous avons abordé plusieurs techniques différentes utilisées par des personnes malveillantes.
- C’est quoi un nom de domaine, les différences entre ccTLD et (New) gTLD
- Les abus sur les noms de domaine toujours plus nombreux et sophistiqués
Regarder plus loin que le nom de domaine
Celle dont nous parlons aujourd’hui n’exploite aucune faille. Elle ne nécessite donc aucune configuration particulière et les sites qui en sont victimes ne peuvent donc rien y faire. L’arnaque repose sur un détournement de la syntaxe des URL. L’histoire n’est pas nouvelle, loin de là, puisqu’on en parlait déjà dans les années 2000, mais il est facile pour certains de tomber dans le panneau. Un rappel ne peut donc pas faire de mal.
Un nom de domaine est composé de deux éléments : un nom (ou radical) et une extension pour former un ensemble « nom.extension ». On peut ajouter des informations supplémentaires comme un sous domaine – sousdomaine.nom.extension –, cibler une page précise – nom.extension/mapage.html –, ou une combinaison des deux. Dans tous les cas, le plus important pour savoir où on se trouve est le couple nom.extension.
Des détournements classiques et bien connus consistent à modifier une lettre – un 0 (zéro) à la place d’un o (lettre o), un I (i majuscule) à la place d’un l (la lettre entre k et m)… – ou utiliser un nom de domaine proche de l’original. Dans l’arnaque dont il est aujourd’hui question, rien de tout cela ; le nom de domaine est tout ce qu’il y a de plus légitime.
sncf.com@tentative.arnaque
Dans notre exemple, il s’agit de la SNCF, dont la bonne adresse est sncf.com, mais cela pourrait fonctionner avec n’importe quel autre site.
Clik here to view.

Comme vous pouvez le voir, des caractères supplémentaires se trouvent après l’extension. Cela arrive tout le temps, car les URL servent aussi à faire passer des paramètres et autres traceurs. Mais le « @ » à une signification particulière dans les URL, comme l’explique l’IETF. Le document date de 1994, autant dire que le sujet n’est pas récent.
On va simplifier un peu l’exemple de la RFC de l’IETF en prenant comme exemple : « //<user>:<password>@<host> » (host représente le nom de domaine, sncf.com dans notre exemple).
Il s’agit en fait d’une méthode d’identification directement via l’URL. On pourrait imaginer une adresse du genre « sebastien:MonMDP@next.ink ». Dans ce cas, le site visé se trouve après l’@, les paramètres d’identification avant.
Des pirates détournent cette fonction en essayant de faire passer de faux sites pour de vrais sites. Dans l’image ci-dessus, on peut voir que l’URL est de la forme « sncf.com@site.extension ». Beaucoup de personnes risquent de penser, à tort, que sncf.com est le site cible, alors que c’est l’identifiant (qui ne sera pas utilisé dans le cas présent) !
Résultat des courses, on est redirigé vers le site malveillant, pensant arriver sur celui de la SNCF (ou d’un autre site légitime, vous avez compris l’idée). La prévisualisation dans WhatsApp laisse apparaitre un message alléchant, que l’on pourrait croire venant de la SNCF : « Cadeau de Noël – Voyage gratuit pendant un an ».
Les attaquants mettent alors en place un site reprenant les couleurs et la mise en page de celui de la SNCF. Ils peuvent ensuite récupérer des informations de ceux qui se laissent avoir.
Quand c’est trop beau pour être vrai… c’est probablement une arnaque
Sans même avoir regardé l’URL, on se doute bien que l’offre pue l’arnaque à des km. Mais certains pourraient être tentés et se dire « au pire, on peut essayer ». C’est généralement l’occasion pour les pirates de récupérer des données personnelles. Dans le cas présent, il faut partager « l’arnaque » sur WhatsApp à un maximum de contacts, sans jamais rien obtenir en retour évidemment.
La SNCF est régulièrement la cible d’arnaques avec de fausses promotions, parfois avec des petits montants de quelques euros à payer. Là encore, il ne faut pas se dire qu’on ne risque que 2 euros par exemple. Une fois vos données bancaires récupérées, les pirates peuvent souvent faire bien plus de dégâts.
Firefox affiche un message d’alerte
On s’étonne quand même que les navigateurs redirigent les internautes sans autre forme de procès ni afficher le moindre message d’avertissement, d’autant que cette technique de manipulation existe depuis maintenant 20 ans. Ce n’est pas tout à fait exact, car il y a une exception : Firefox, qui demande une confirmation. Nous avons testé avec cette URL : « http://youtube.com@next.ink », et un message d’alerte apparait :
« Vous êtes sur le point de vous connecter au site « next.ink » avec le nom d’utilisateur « youtube.com », mais ce site web ne nécessite pas d’authentification. Il peut s’agir d’une tentative pour vous induire en erreur.
« next.ink » est-il bien le site que vous voulez visiter ? »
Clik here to view.

Brave, Edge, Chrome et Safari n’en ont que faire et renvoient sans broncher vers le site derrière l’@ (aussi bien sous Windows que Linux). Il faut dire que c’est le comportement attendu par défaut selon la notice de l’IETF, mais les navigateurs feraient bien de prendre exemple sur Firefox.
Mozilla prend en effet le parti de prévenir les utilisateurs, ce qui peut être utile pour les néophytes. Pour les aguerris (qui savent ce qu’ils font), il est possible de désactiver cette confirmation en ajoutant une entrée dans about:config : network.http.phishy-userpass-length, avec une valeur numérique à 255.