
Une boutique PrestaShop piratée met vos clients en danger, surtout si un faux formulaire de paiement a été injecté. Il faut isoler la boutique, sauvegarder l'état infecté, changer tous les accès, trouver le point d'entrée (souvent un module vulnérable ou une version non corrigée), nettoyer fichiers et base de données, mettre à jour, puis prévenir les personnes concernées.
Sommaire
- Les signes qui doivent alerter
- 1. Isoler la boutique
- 2. Sauvegarder l’état infecté
- 3. Changer tous les accès
- 4. Trouver le point d’entrée
- 5. Nettoyer les fichiers
- 6. Nettoyer la base de données
- 7. Mettre à jour et durcir la boutique
- 8. Prévenir les personnes concernées
- Comment éviter que ça recommence
- Questions fréquentes
Un client signale un débit suspect après une commande, votre hébergeur vous écrit, Google affiche un avertissement, ou la page de paiement ne ressemble plus à d’habitude : votre boutique PrestaShop a peut-être été piratée. Sur une boutique en ligne, l’enjeu dépasse le site lui-même, car les données de vos clients peuvent être exposées. Voici les étapes que je suis quand j’interviens sur une boutique compromise.
Les signes qui doivent alerter
- Un formulaire de carte bancaire inhabituel, ou une étape de paiement en double.
- Des clients qui signalent des fraudes sur leur carte après un achat.
- Des redirections vers d’autres sites, surtout depuis Google ou sur mobile.
- Des comptes employés inconnus dans le back-office.
- Des fichiers récemment modifiés que personne n’a touchés, ou une alerte de l’hébergeur.
Le cas le plus grave est le faux formulaire de paiement : un script injecté recopie les numéros de carte saisis par vos clients. Il est souvent invisible pour vous, car il ne s’affiche qu’aux visiteurs, à certains moments ou sur certaines pages.
1. Isoler la boutique
Si des données de paiement sont menacées, passez la boutique en mode maintenance : quelques heures de fermeture valent mieux que des cartes bancaires dérobées. Gardez l’accès pour votre adresse IP afin de pouvoir travailler.
2. Sauvegarder l’état infecté
Avant de nettoyer, faites une copie complète des fichiers, de la base de données et, si possible, des journaux du serveur. Cette copie sert à comprendre comment le pirate est entré, et peut être utile en cas de démarche auprès de votre banque ou des autorités.
3. Changer tous les accès
Mots de passe du back-office, de l’hébergement, du FTP ou SFTP, de la base de données et des comptes de messagerie : tout doit être changé, depuis un ordinateur sain. Supprimez les comptes employés que vous ne reconnaissez pas, et vérifiez les clés d’accès au webservice de PrestaShop s’il est activé.
4. Trouver le point d’entrée
Nettoyer sans comprendre, c’est s’exposer à une réinfection dans les semaines qui suivent. Les causes les plus fréquentes :
- Un module vulnérable : c’est la cause numéro un. L’association Friends of Presta publie régulièrement des alertes de sécurité sur des modules, y compris des modules du commerce très répandus.
- Une version de PrestaShop non corrigée : en 2022, une faille exploitée à grande échelle a servi à injecter de faux formulaires de paiement sur des boutiques en 1.6 et 1.7. Elle a été corrigée dans la version 1.7.8.7, mais beaucoup de boutiques ne l’ont jamais appliquée.
- Un accès volé : mot de passe faible ou réutilisé, poste de travail infecté.
Les journaux du serveur, les dates de modification des fichiers et la liste des modules installés permettent généralement de remonter à l’origine.
5. Nettoyer les fichiers
Comparez les fichiers du cœur avec une version officielle de PrestaShop identique à la vôtre, téléchargée depuis le site ou le dépôt officiel : tout fichier différent ou en trop est suspect. Faites de même pour les modules, à partir des archives de l’éditeur. Vérifiez particulièrement le dossier override, les modules de paiement, les fichiers JavaScript du thème et les fichiers PHP placés dans les dossiers d’images ou de téléchargement.
6. Nettoyer la base de données
Les pirates cachent aussi du code dans la base : scripts insérés dans les pages CMS, les descriptions de produits ou les réglages de la boutique, blocs HTML personnalisés, comptes employés ajoutés. Recherchez les balises <script> et les domaines inconnus dans les tables concernées, et supprimez ce qui n’a rien à y faire.
7. Mettre à jour et durcir la boutique
- Mettez à jour PrestaShop et chaque module, ou remplacez ceux qui ne sont plus maintenus. Pour une boutique ancienne, c’est le moment de planifier une mise à jour vers PrestaShop 9.
- Supprimez les modules désactivés ou inutilisés : un module désactivé peut rester exploitable.
- Donnez au dossier d’administration un nom difficile à deviner et limitez son accès si possible.
- Vérifiez les droits des fichiers et passez à une version de PHP supportée.
8. Prévenir les personnes concernées
Si des données personnelles de vos clients ont pu être exposées, le RGPD vous impose de notifier la violation à la CNIL dans les 72 heures après en avoir pris connaissance, et d’informer les clients concernés si le risque pour eux est élevé. Si des données de carte bancaire sont en jeu, prévenez aussi votre banque ou votre prestataire de paiement. Enfin, demandez à Google de réexaminer le site si un avertissement s’affiche dans les résultats de recherche.
Comment éviter que ça recommence
La plupart des boutiques piratées avaient une version ou des modules en retard de plusieurs mises à jour. Une maintenance PrestaShop mensuelle garde la boutique à jour, sauvegardée et surveillée, et permet de réagir vite quand une faille est publiée sur un module que vous utilisez. Si vous gérez aussi un site Joomla, la démarche est proche : je la détaille dans le guide site Joomla piraté.
Questions fréquentes
Restaurer une ancienne sauvegarde suffit-il ?
Rarement. La sauvegarde contient souvent déjà la porte dérobée, installée bien avant que l’infection soit visible. Et même propre, elle reste vulnérable à la même faille. Restaurer sans corriger le point d’entrée, c’est se faire pirater de nouveau.
Un module de sécurité peut-il nettoyer ma boutique ?
Il peut aider à détecter des fichiers suspects, mais il ne remplace pas une vérification manuelle des fichiers, de la base de données et des modules. Les scripts de vol de cartes sont justement conçus pour passer inaperçus.
Dois-je fermer ma boutique pendant le nettoyage ?
Si le paiement est touché, oui, le temps de l’intervention. Dans les autres cas, la boutique peut souvent rester ouverte pendant le diagnostic, puis être brièvement mise en maintenance pour le nettoyage final.


