Pourquoi la sécurité de votre PrestaShop est une priorité absolue
Votre boutique en ligne est un coffre-fort numérique : données personnelles, emails, informations de paiement. Quand ce coffre-fort est mal verrouillé, les conséquences sont désastreuses.
- 32 % des cyberattaques en France ciblent des PME et des sites e-commerce
- Le coût moyen d’une violation de données dépasse 120 000 euros pour une petite entreprise
- 60 % des petites boutiques ferment dans les 6 mois suivant une attaque majeure
- Les amendes RGPD peuvent atteindre 4 % du chiffre d’affaires annuel
PrestaShop, solution open source utilisée par plus de 300 000 boutiques, est une cible privilégiée : code source public, failles documentées, et trop de marchands qui négligent les mises a jour.
Sur mes projets, ce que je vois le plus souvent c’est un module tiers obsolète qui sert de porte d’entrée aux attaquants. En 8 ans d’accompagnement PrestaShop, j’ai vu des bases clients aspirées, des sites redirigés vers du phishing, des back-offices compromis pour injecter du code malveillant. Dans chaque cas, les mesures de ce guide auraient évité le pire.
Maintenir PrestaShop et ses modules a jour
La majorité des attaques exploitent des failles déja corrigées dans des versions plus récentes. Si vous ne faites qu’une seule chose après cet article, faites celle-ci.
Le core PrestaShop
PrestaShop publie régulièrement des correctifs de sécurité. Chaque version mineure (8.1.1, 8.1.2, etc.) contient des patches critiques.
- Surveillez les annonces officielles : blog PrestaShop et releases GitHub
- Consultez le changelog avant chaque mise a jour : identifiez les correctifs marqués “critical” ou “high”
- Testez sur un environnement de préproduction avant de mettre a jour en production
- Planifiez les correctifs de sécurité sous 48 heures après leur publication
Si votre boutique tourne encore sous PrestaShop 1.6 ou 1.7, vous êtes en danger. Ces versions ne reçoivent plus de correctifs. Une migration vers PrestaShop 8.x est indispensable.
Les modules : le maillon faible
Un seul module vulnérable suffit a compromettre toute votre boutique. Les attaques les plus médiatisées de ces dernières années ont exploité des failles dans des modules tiers, pas dans le core.
- Supprimez les modules inutilisés : ne les désactivez pas, supprimez-les. Un module désactivé mais présent sur le serveur reste exploitable
- N’installez que des modules de sources fiables : PrestaShop Addons, éditeurs reconnus
- Vérifiez la date de dernière mise a jour : un module non maintenu depuis plus d’un an est un risque
- Activez les notifications de mise a jour dans votre back-office
Configurer SSL/TLS et forcer HTTPS partout
En 2026, un site e-commerce sans HTTPS n’a pas sa place en ligne. Le certificat SSL/TLS chiffre les échanges entre le navigateur et votre serveur, protégeant mots de passe, données personnelles et informations de paiement.
Mise en place
Installez un certificat Let’s Encrypt (gratuit chez la plupart des hébergeurs), puis dans PrestaShop :
- Paramètres de la boutique > Général : activez SSL sur toutes les pages
- Ajoutez la redirection dans
.htaccess:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
- Configurez l’en-tête HSTS :
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
Testez votre configuration sur SSL Labs et visez un score A+. Vérifiez que toutes les ressources (images, scripts, CSS) sont chargées en HTTPS pour éviter les alertes de contenu mixte.
Renforcer la sécurité de l’accès administrateur
Le back-office est la cible principale des attaquants. Un accès compromis donne un contrôle total sur votre boutique, vos données et votre serveur.
Modifier l’URL d’administration
Renommez le dossier admin*** en quelque chose de difficile a deviner (ex : gestion-x8k2m9). Évitez admin, backoffice, gestion, bo ou toute variante évidente. PrestaShop détecte automatiquement le changement.
Mots de passe et authentification
- Minimum 14 caractères avec un gestionnaire de mots de passe (Bitwarden, 1Password)
- Un mot de passe unique par service : ne réutilisez jamais un mot de passe
- Activez la 2FA via un module compatible TOTP (Google Authenticator, Authy) et rendez-la obligatoire pour tous les comptes admin
Restreindre l’accès par IP
Si vous travaillez depuis des adresses IP fixes :
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.0$
RewriteRule ^(.*)$ - [F,L]
</IfModule>
Permissions de fichiers et durcissement serveur
Permissions recommandées
find /var/www/prestashop -type d -exec chmod 755 {} \;
find /var/www/prestashop -type f -exec chmod 644 {} \;
chmod 444 /var/www/prestashop/app/config/parameters.php
chmod 775 /var/www/prestashop/img
chmod 775 /var/www/prestashop/upload
chmod 775 /var/www/prestashop/var/cache
Le principe : accordez le minimum de permissions nécessaire au bon fonctionnement.
Protéger les fichiers sensibles et les en-têtes HTTP
Options -Indexes
<FilesMatch "\.(sql|log|txt|md|yml|yaml|json|xml|env|ini|bak)$">
Require all denied
</FilesMatch>
<IfModule mod_rewrite.c>
RewriteRule ^var/ - [F,L]
RewriteRule ^app/config/ - [F,L]
RewriteRule ^vendor/ - [F,L]
</IfModule>
Header set X-Content-Type-Options "nosniff"
Header set X-Frame-Options "SAMEORIGIN"
Header set X-XSS-Protection "1; mode=block"
Header set Referrer-Policy "strict-origin-when-cross-origin"
Se protéger contre les attaques courantes
Injection SQL et XSS
- Mettez a jour PrestaShop et vos modules : les failles d’injection sont corrigées en priorité
- Utilisez les classes PrestaShop (
pSQL(),bqSQL(),Tools::safeOutput()) dans vos développements - Configurez une Content-Security-Policy pour restreindre les sources de scripts autorisées
- Validez toutes les entrées utilisateur côté serveur, jamais uniquement côté client
Attaques par force brute
- Limitez les tentatives de connexion avec un module de protection brute force
- Installez fail2ban sur votre serveur pour bloquer automatiquement les IP suspectes
- Utilisez un WAF (Cloudflare, Sucuri, ModSecurity) pour filtrer le trafic malveillant avant qu’il n’atteigne votre serveur
Stratégie de sauvegarde : la règle du 3-2-1
Votre dernier rempart. Si toutes les autres mesures échouent, une bonne sauvegarde vous sauve.
- 3 copies de vos données
- Sur 2 supports différents (serveur local + cloud)
- Dont 1 copie hors site (AWS S3, Backblaze B2, Google Cloud Storage)
Automatisez avec un script cron quotidien (sauvegarde BDD + fichiers) et conservez 30 jours d’historique. Testez vos restaurations au moins une fois par trimestre. Une sauvegarde jamais testée n’est pas une sauvegarde.
Monitoring et alertes
La sécurité est un processus continu, pas un état.
- Monitoring d’uptime : UptimeRobot ou Pingdom, vérifications toutes les 5 minutes avec alertes email et SMS
- Intégrité des fichiers : comparez périodiquement les hash MD5 des fichiers PHP/JS avec une référence. Un fichier modifié sans votre intervention est un signe d’intrusion.
- Logs serveur : analysez les requêtes suspectes (scans de vulnérabilités, tentatives d’accès aux fichiers sensibles) et les erreurs PHP inhabituelles
Un site bien sécurisé est aussi un site performant. La surveillance va de pair avec l’optimisation des performances.
Que faire si votre boutique a été piratée
- Isolez le site : mode maintenance + coupez l’accès public
- Évaluez les dégâts : fichiers PHP modifiés récemment, comptes admin inconnus, entrées suspectes dans
ps_employeeetps_configuration - Restaurez une sauvegarde propre et comparez les fichiers pour identifier le code injecté
- Changez tous les mots de passe : admin, BDD, FTP, SSH, hébergeur. Régénérez les clés dans
parameters.php - Corrigez la faille : identifiez le module ou fichier vulnérable a partir des logs et supprimez-le ou mettez-le a jour
- Obligations RGPD : notifiez la CNIL sous 72 heures et informez les personnes concernées si des données personnelles ont été compromises
Votre boutique PrestaShop est-elle vraiment sécurisée ?
La sécurité ne s’improvise pas. Si vous n’êtes pas certain de l’état de votre boutique, commencez par un diagnostic complet.
Demander un audit gratuit — je passe en revue la sécurité, la performance et la configuration de votre site, et je vous remets un rapport détaillé avec les actions prioritaires.