Une faille de sécurité majeure a été détectée et confirmée par l’équipe de Prestashop. Cette faille de type injection SQL est actuellement largement exploitée par les pirates, il est impératif de mettre rapidement à jour votre boutique en ligne Prestashop pour éviter de voir votre boutique en ligne piratée, avec des paiements de vos clients qui seront effectués sur des pages de phishing.

Faille de sécurité majeure sur Prestashop

L’équipe de maintenance de Prestashop a publié un article dans lequel elle précise que toutes les boutiques à partir de la version 1.6.0.10 jusqu’à la 1.7.8.2 sont vulnérables à cette faille. D’ailleurs, les versions 1.7.8.2 et supérieures peuvent elles-aussi être vulnérables si celle-ci utilise du code utilisée par exemple dans un module ou un thème faisant ayant des failles permettant une injection SQL. C’est par exemple le cas d’un module officiel de Prestashop, Wishlist (blockwishlist) dans ses versions 2.0.0~2.1.0.

Comment se protéger (temporairement) de cette faille ?

prestashop 17 vulnerability

L’équipe de maintenance propose un Quick Fix nécessitant de supprimer du code dans un fichier de configuration, qui permettra de bloquer la chaîne d’injection SQL. Cette solution temporaire sera complétée plus tard par un patch de sécurité proposé par l’équipe de maintenance.

Attention cependant, cette solution est toujours en cours d’étude: l’équipe de maintenance pense que la faille provient directement du cache Smarty pour MySQL mais sans certitude. Dans tous les cas, la désactivation de cette fonctionnalité de manière hard semble régler le souci auprès d’un client de chez Unlidot récemment infecté.

Manipulation à effectuer pour retirer les lignes de code concernées

Depuis un accès FTP (ou via votre explorateur de fichier sur un panel en ligne), rendez vous dans le dossier config et ouvrez le fichier « smarty.config.php » (config/smarty.config.inc.php).

Dans ce fichier, retirez ou commentez le code suivant:

Copy to Clipboard

Ce code est localisé entre les lignes 43-46 dans les versions 1.7.x, et entre les lignes 40-43 dans les versions 1.6.x.

Protéger ma boutique en ligne Prestashop

Notre équipe est à votre disposition pour la correction de la faille, le nettoyage de votre boutique en ligne infectée et la mise à jour de votre solution.

Protéger ma boutique en ligne sous Prestashop

Comment savoir si vous êtes infecté ?

Il n’y a malheureusement pas de manière simple pour vérifier si vous êtes infecté par cette faille. Cependant, certaines informations dans vos logs pourraient vous donner une indication. Par exemple, dans votre access log, vous pouvez avoir ce record qui pourrait confirmer l’infection.

Copy to Clipboard

Note: le nom des fichiers peuvent être différents. Pour l’un de nos clients, le fichier « blm.php » s’appellait « mage.php ».

Un autre symptôme est que vous n’avez plus accès à votre back-end: vous êtes redirigé en boucle vers le formulaire de connexion de votre back-office.

Le symptôme le plus grave (et qui est le but recherché par les pirates) est l’affichage d’un formulaire de paiement frauduleux pour les commandes de vos clients. Le formulaire peut ressembler à celui de PayPal, mais c’est bien un formulaire frauduleux de type phishing qui est présenté. Les clients qui compléteront ce formulaire enverront directement leurs identifiants (e-mails et mot de passe) chez le pirate, qui pourra utiliser ces informations pour effectuer des paiements frauduleux au nom de vos clients.

Je suis infecté(e)! Que faire ?

Si vous êtes infecté(e), la première chose à faire est de vérifier si vous possédez des sauvegardes de vos fichiers. Généralement, une sauvegarde automatique est effectuée par votre hébergeur. C’est par exemple le cas de Infomaniak et OVH. Si votre hébergeur ne propose pas cette fonctionnalité, il est possible que votre prestataire technique ait implémenté une solution de sauvegarde interne.

Si aucune de ces stratégies de sauvegarde de vos fichiers n’est présente, vous pouvez essayer de nettoyer vous-même vos fichiers infectés, en veillant à appliquer le quick-fix.

Nous vous recommandons vivement de faire appel à un prestataire technique comme Unlidot si vous ne vous sentez pas à l’aise avec ces manipulations. Et même si vous l’êtes, n’hésitez pas à faire appel à nous pour faire un audit de sécurité et valider ainsi le nettoyage et le bouchage de la faille de sécurité.

Conformément à la loi, vous êtes également tenu(e) d’informer vos clients que votre boutique en ligne a été impactée par cette faille de sécurité, et que tout client ayant été victime de cette faille peuvent revenir vers vous pour trouver une solution. Vous devrez dans ce cas les avertir que leurs identifiants PayPal et autres comptes avec le même mot de passe peuvent être compromis, et qu’il sera nécessaire de modifier celui-ci dans les plus brefs délais.