Disponible pour missions & renforts d’agence · Réponse rapide, par la personne qui intervient

Un client s’est retrouvé connecté sur le compte d’un autre

Un acheteur voit dans son espace des commandes qui ne sont pas les siennes, ou vous recevez une réclamation pour une adresse qui n’a jamais été saisie : c’est un défaut d’authentification, et le tunnel de commande en est un endroit classique.

Décrire mon problème Discuter sur WhatsApp

Trois causes, un seul symptôme

Le signalement arrive presque toujours dans les mêmes termes : un client voit dans son espace des commandes qui ne sont pas les siennes, ou vous recevez une réclamation pour une adresse de livraison que personne n’a jamais saisie. Le premier réflexe, y compris le mien pendant longtemps, est de penser au cache. C’est parfois le cache. Ce n’est pas toujours le cache, et la différence change complètement ce qu’il faut faire ensuite.

Trois causes distinctes produisent ce même symptôme.

  • Un cache mal configuré. Une page personnalisée — un en-tête avec un prénom, un panier, un bloc de compte — a été mise en cache pendant la visite d’un client, puis servie telle quelle à un autre visiteur. Le contenu affiché est faux, mais la session, elle, reste la bonne.
  • Une session partagée. Deux personnes utilisent le même navigateur sur le même poste : ordinateur familial, poste d’accueil, tablette en magasin. La session ouverte n’a simplement jamais été fermée.
  • Un véritable défaut d’authentification. Le serveur a réellement associé la session au mauvais compte. Ce n’est plus un problème d’affichage : c’est une prise de contrôle de compte.

Ce que décrivent les clients

  • Un client voit dans son historique des commandes qu’il n’a jamais passées.
  • Une adresse de livraison inconnue apparaît dans un compte client.
  • Le prénom affiché dans l’en-tête n’est pas celui de la personne connectée.
  • Une commande a été payée depuis un compte dont le titulaire affirme ne pas l’avoir passée.
  • Un client déclare être arrivé déjà connecté alors qu’il n’a saisi aucun mot de passe.
  • Des connexions ou des créations de comptes apparaissent à des horaires qui ne correspondent à rien.

Le test qui sépare les trois causes

  1. Rejouer depuis un contexte neuf

    Fenêtre de navigation privée, autre appareil, autre réseau, sans être connecté. Si du contenu personnalisé réapparaît devant un visiteur qui n’a jamais eu de compte sur la boutique, vous êtes très probablement sur un problème de cache.

  2. Comparer une page mise en cache et une page qui ne l’est pas

    Un en-tête ou un bloc de page peuvent mentir facilement. La page de détail du compte, beaucoup moins. Si elle affiche bien le bon titulaire, le problème est un problème d’affichage. Si elle affiche l’autre personne, la session côté serveur pointe déjà sur le mauvais compte.

  3. Vérifier si une action réelle aboutit

    Une page servie depuis le cache ne permet pas d’agir : une modification enregistrée retombe sur le bon compte. Si une adresse, un mot de passe ou une commande peuvent réellement être modifiés sur le compte d’autrui, ce n’est plus du cache.

  4. Écarter le poste partagé

    Une déconnexion suivie d’une reconnexion avec ses propres identifiants règle définitivement le cas du navigateur partagé. Si le problème revient sur un appareil personnel jamais prêté, cette cause tombe.

  5. Ouvrir les journaux d’authentification

    C’est la seule étape qui tranche vraiment. Elle demande l’accès aux journaux du serveur et de l’application, et elle doit couvrir toute la période concernée, pas seulement la journée du signalement.

Quand c’est bien un défaut d’authentification

Le tunnel de commande est l’endroit où ce type de défaut apparaît le plus souvent, et le paiement express en est le point le plus sensible. Un paiement express a précisément pour but de supprimer des étapes : le client arrive depuis un bouton, le moyen de paiement fournit une identité, et la boutique doit décider en une fraction de seconde à quel compte rattacher cette commande. Chaque étape supprimée est une vérification qu’il faut refaire ailleurs, correctement.

Le module de paiement officiel de PrestaShop, ps_checkout, a été concerné par ce cas. Une validation manquante sur la fonctionnalité Express Checkout permettait une connexion silencieuse, et donc la prise de contrôle d’un compte client à partir de son adresse e-mail. La faille porte l’identifiant CVE-2025-61922, avec un score CVSS de 9,1 : exploitable par le réseau, complexité d’attaque faible, aucun privilège requis, aucune interaction de l’utilisateur. Les correctifs ont été publiés le 16 octobre 2025, en versions 4.4.1 et 5.0.5.

L’expression « connexion silencieuse » mérite d’être traduite concrètement. La boutique ouvre une session au nom d’un client sans que ce client ait saisi son mot de passe et sans qu’il en soit averti. De son côté, rien ne se passe : pas d’e-mail, pas de demande de confirmation, aucune trace visible dans son espace. C’est ce silence qui rend le problème long à détecter. Il n’y a pas de tentative ratée, pas de série d’échecs de connexion à repérer, juste une session de plus qui, vue de loin, a l’air parfaitement normale.

Ce qu’un compte client contient réellement

On sous-estime souvent ce qu’un compte client donne à qui y entre. Ce n’est pas seulement un historique.

  • L’historique complet des commandes : ce qui a été acheté, quand, pour quel montant, livré à quelle adresse.
  • Le carnet d’adresses : adresses postales, numéros de téléphone, parfois une adresse professionnelle et un nom d’entreprise.
  • Les données de contact, directement réutilisables pour un hameçonnage crédible auprès de ce client, puisqu’elles permettent de citer une vraie commande.
  • La possibilité de passer une commande depuis le compte usurpé, avec les moyens de paiement enregistrés côté prestataire lorsqu’il en existe.

Sur ce dernier point je reste prudent, et vous devriez l’être aussi. Ce qui est réellement réutilisable dépend entièrement du prestataire de paiement et de la façon dont l’enregistrement du moyen de paiement est implémenté. La boutique ne stocke normalement pas le numéro de carte. Ce que je peux affirmer sans journaux, c’est ce qui était possible ; ce qui a été effectivement fait, non.

Ce que les journaux disent, et ce qu’ils ne diront pas

L’avis publié pour cette faille recommande de mettre à jour sans délai, de relire les journaux d’authentification, de prévenir les clients potentiellement concernés, et de surveiller les commandes et les créations de comptes atypiques. Concrètement, voici ce que je cherche.

  • Des connexions réussies qui n’ont été précédées d’aucune soumission de formulaire de connexion.
  • Des connexions sur un même compte depuis deux contextes très éloignés dans un intervalle court.
  • Des commandes passées immédiatement après une connexion de ce type.
  • Des changements d’adresse e-mail, de mot de passe ou d’adresse de livraison suivis d’une commande.
  • Des créations de comptes en rafale, ou construites sur un même motif d’adresse.

Et voici ce que je ne peux pas savoir sans ces journaux : combien de comptes ont été touchés, si un seul client a été visé ou si la boutique a été balayée méthodiquement, à partir de quelle date exactement, et si l’accès a servi à autre chose qu’à passer une commande. Une durée de conservation trop courte côté hébergeur peut rendre ces questions définitivement sans réponse. C’est un point à vérifier avant d’avoir à s’en servir, pas le jour où un client appelle.

Pour aller plus loin

Décrivez votre besoin en 1 minute

Quelques questions ciblées pour que je vous réponde avec une estimation, pas avec un questionnaire de plus.

Qu’avez-vous constaté ?
Quelle plateforme ?
Depuis quand le problème est-il constaté ? (facultatif)

Plus l’infection est ancienne, plus elle a pu se propager dans les fichiers et la base de données.

Disposez-vous d’une sauvegarde saine ?

Une sauvegarde antérieure à l’infection change complètement la méthode de remise en état.

Indiquez au moins un e-mail ou un téléphone pour que je puisse vous répondre.

Indiquez au moins un e-mail ou un téléphone pour que je puisse vous répondre.

Questions fréquentes

Est-ce forcément un piratage ?
Non, et c’est pour cela que je commence toujours par le test de séparation. Un cache mal configuré et un poste partagé produisent exactement le même récit côté client. Seul l’examen d’une page non mise en cache et des journaux d’authentification permet de trancher.
Mon module de paiement est à jour, suis-je à l’abri ?
Vous êtes à l’abri de la faille corrigée, pas du symptôme. Une mise à jour ferme la porte pour l’avenir, elle n’annule pas ce qui a pu se produire avant. Si votre boutique a tourné en version vulnérable, la relecture des journaux reste nécessaire.
Dois-je prévenir les clients concernés ?
L’avis publié pour cette faille recommande explicitement d’informer les clients potentiellement concernés. Au-delà, le RGPD impose d’informer les personnes lorsque la violation présente un risque élevé pour leurs droits et libertés.
Faut-il déconnecter tous les clients ?
C’est une mesure raisonnable après correction, au même titre que la fermeture des sessions d’administration. Elle coûte un peu de confort et elle supprime toute session ouverte pendant la période où la faille était exploitable.
Comment savoir si une commande a été passée depuis un compte usurpé ?
En croisant la commande avec la connexion qui l’a précédée : contexte de connexion, absence de soumission du formulaire de connexion, écart avec les habitudes du compte. Sans journaux d’authentification, cette vérification n’est pas possible.