Comment sécuriser un site PrestaShop ?

Les bonnes pratiques pour sécuriser son site PrestaShop

Découvrez l’ensemble des bonnes pratiques indispensables pour sécuriser son site PrestaShop.

Depuis quelques mois, l’association Friends Of Presta a créé une cellule sécurité dont Ohweb est un acteur actif.

Les tentatives d’attaques de hacker sont de plus en plus fréquentes, parfois de façon assez vicieuse.
Les hackers tentent souvent de s’infiltrer dans votre système d’administration pour modifier le module de paiement et en profiter. Les hackers vont ensuite remettre en place les modules d’origines. De cette manière, les paiements effectués pendant la journée sont détournés par leur système sans éveiller les soupçons, de façon transparente.

Les info-gérants qui font partie de la cellule nous alertent régulièrement sur des failles découvertes dans les modules additionnels à PrestaShop.

La cellule analyse, avertit les éditeurs de modules, etc… suit une procédure pour finir par émettre des CVEs* (en quelques mots, une déclaration officielle et publique d’une faille de sécurité).

Comment limiter les risques de failles de sécurité ?

Vous vous demandez comment limiter les risques de failles de sécurité sur PrestaShop ? Il existe quelques règles simples pour diminuer les risques. Vous n’avez d’ailleurs pas forcément besoin d’être un développeur aguerri pour les appliquer. 

1.   Rendre l’accès à son administration plus complexe

Une liste d’accès au dossier d’administration a été découverte sur le darknet, dans l’article concernant les liens compris des backoffices.

Il est donc important d’avoir un nom de dossier complexe, éviter les “ps_admin”, “backoffice”, “admin123” etc… Un bon exemple de nom de dossier complexe serait par exemple : « monsite.com/admint4uRoZBXqfkygL »

L’opération assez simple : il suffit d’avoir un accès FTP à votre site et renommer le dossier d’administration. Ce changement de nom peut être accompagné de deux autres verrous, notamment en ajoutant un fichier htpasswd ou en ajoutant un module type Google Authenticator.

L’ajout d’un fichier htpasswd permet d’ajouter une étape avec un nom d’utilisateur et un mot de passe. Ainsi, le verrouillage se fait du côté serveur avant même l’exécution du moindre code sur le dossier.

Exemple de fenêtre d’identification : 

Exemple d'authentification par htpasswd

Ajouter un module type permet d’accéder à votre administration en saisissant un code (valable une minute), depuis une application mobile.

2.   Limiter les accès à l’administration

Les personnes qui peuvent accéder à l’administration sont appelés “employé” sur PrestaShop. La règle est assez simple, il suffit de vérifier de temps en temps les personnes ayant accès à l’administration et désactiver ou supprimer les accès qui ne sont plus nécessaires.

Par exemple : si vous avez fait appel au support d’un module et avez créé un accès pour les intervenants, pensez à désactiver l’accès au support une fois que le problème a été solutionné.

3.   Changer ses accès régulièrement

Même si PrestaShop ne vous oblige pas à le faire, il est conseiller de changer régulièrement votre mot de passe. Un mot de passe type “12345679” n’est pas assez sécurisé et peut facilement être hacké.

Il existe certains outils pour générer des mots de passe complexes, notamment macpass, bitwarden, keepass etc…

4.   Vérifier vos modules

Lorsque nous réalisons l’audit d’un site développé sous PrestaShop, nous retrouvons le plus souvent trois types de module :

  • Un module installé et utilisé (activé sur PrestaShop) dont la version n’a pas été mise à jour. Si une mise à jour est proposée, n’hésitez pas à l’accepter, celle-ci corrige peut-être une faille de sécurité.

Attention, la mise à jour peut provoquer un plantage de votre boutique, il faut le tester sur une préprod avant et qu’il y a une sauvegarde etc… L’opération n’est pas anodine et mérite donc toute votre attention.

Un module installé mais désactivé, car il ne vous a pas convaincu. Si vous n’en avez plus besoin, pourquoi le garder ?

Nous recommandons de désinstaller et de supprimer les modules inutiles du dossier modules.

  • Un module non installé mais présent dans le dossier module, à supprimer.

Voici un exemple concret de ce que nous rencontrons souvent :

Vous ou l’agence en charge de votre site a réalisé la migration de la version 1.6 vers 1.7 avec MigrationPro. Une fois que la migration est terminée et que votre nouveau site est en ligne, il est inutile de garder le module, en production. En effet, un hacker peut utiliser un script dans un module même si celui-ci n’est pas installé !

5.   Bien choisir l’hébergeur                

Le choix de l’hébergeur est élément souvent négligé pour des raisons de coûts, pourtant le choix de celui-ci n’est pas à prendre à la légère. Les bonnes pratiques en matière de ce choix seront développées dans un article sur le sujet.

Notre accompagnement pour votre site PrestaShop

Pour l’ensemble des opérations énumérées, OHweb peut vous accompagner.

OHweb lance un abonnement mensuel pour le suivi et la veille sécurité pour votre site PrestaShop.

Parmi les actions que nous proposons ;

  • L’équipe d’OHweb participe à la cellule sécurité de Friends Of Presta et reste en veille sur des alertes.
  • L’équipe procède à l’installation sur votre PrestaShop d’un module qui nous permet de connaitre les modules (avec leur version) afin que la liste soit mise à jour régulièrement.

Si une alerte sécurité est éditée et que l’un de vos modules est concerné, l’équipe peut être réactive et propose une résolution. Nous nous chargeons ainsi d’appliquer le correctif de sécurité ou de vous avertir de la nécessité de mettre à jour le module.

  • Nous contrôlons tous les mois l’état de votre site et ses activités, via une analyse d’un échantillon de vos logs serveurs.
  • Nous vous accompagnons également cas de hack de votre site.

Contactez-nous pour plus d’information

 *L’acronyme CVE, pour Common Vulnerabilities and Exposures en anglais, désigne une liste publique de failles de sécurité informatique. Lorsque l’on parle d’une CVE, on fait généralement référence à une faille de sécurité à laquelle un identifiant CVE a été attribué.
Les avis de sécurité publiés par les fournisseurs et chercheurs mentionnent presque toujours au moins un identifiant CVE. Les CVE aident les professionnels à coordonner leurs efforts visant à hiérarchiser et résoudre les vulnérabilités, et ainsi renforcer la sécurité des systèmes informatiques.

Pensez à consulter les autres articles de notre blog PrestaShop.