Pour réinitialiser le mot de passe administrateur de PrestaShop, utilisez le lien « Mot de passe oublié » de la page de connexion si vous recevez encore les e-mails. Si ce n’est pas possible, la procédure passe par la base de données, avec une sauvegarde préalable. Après un piratage, changer le mot de passe ne suffit pas : supprimez aussi les comptes administrateurs que vous ne reconnaissez pas, car l’attaquant peut en avoir créé un.
Avant de commencer
- Sauvegardez les fichiers et la base de données, même si la boutique est déjà compromise.
- Identifiez le compte concerné. Dans la liste des employés, le superadministrateur est celui qui a le profil principal. Notez son adresse e-mail.
- Mettez la boutique en maintenance le temps de la récupération, pour éviter une nouvelle intrusion pendant les manipulations.
Cas 1 : le back-office et l’e-mail fonctionnent
C’est le cas le plus simple. Depuis la page de connexion, cliquez sur « Mot de passe oublié », saisissez votre adresse et suivez le lien reçu par e-mail. Vérifiez aussi le dossier spam : c’est une cause fréquente de non-réception.
Cas 2 : l’adresse e-mail n’est plus accessible
Si l’adresse du superadministrateur est perdue, ou si l’attaquant l’a changée, il faut modifier l’adresse dans la base de données, puis passer par « Mot de passe oublié ». Dans la table ps_employee, l’adresse se trouve sur la ligne dont id_profile vaut 1. Pour cibler un compte précis, utilisez son identifiant :
UPDATE ps_employee SET email = 'votre-adresse@exemple.fr' WHERE id_employee = 1;
Remplacez 1 par l’identifiant de votre compte, et l’adresse par une adresse qui vous appartient. Vérifiez le résultat avant d’enregistrer, car une erreur sur cette table touche l’accès à la boutique.
Cas 3 : le back-office est inaccessible
Si vous ne pouvez plus vous connecter du tout, il faut agir par FTP et par la base de données. Le centre d’aide PrestaShop décrit une procédure où l’on récupère la clé de cookie dans le fichier de configuration, puis où l’on met à jour le hachage du mot de passe dans la base. Le chemin du fichier dépend de la version : config/settings.inc.php pour la 1.6, app/config/parameters.php pour les versions 1.7 et 8.
Ne modifiez pas la clé de cookie pendant cette procédure. Le centre d’aide précise qu’elle sert aussi à protéger les mots de passe des comptes clients.
Suivez la procédure officielle pas à pas. Si vous n’êtes pas à l’aise avec la base de données, demandez l’aide de votre hébergeur ou d’un développeur.
Après la récupération : le plus important
Récupérer l’accès ne ferme pas la porte. Dans l’ordre :
- Supprimez les comptes administrateurs inconnus. Ouvrez la liste des employés du back-office et vérifiez chaque compte. Un compte créé par l’attaquant lui donne un accès durable.
- Changez les mots de passe du FTP, du SFTP, de la base de données et du compte de l’hébergeur.
- Révoquez les clés SSH que vous ne reconnaissez pas.
- Vérifiez les modules et fichiers modifiés : une porte dérobée peut survivre à un changement de mot de passe. Notre article sur la boutique PrestaShop piratée détaille la démarche complète.
- Surveillez la réinfection. Si la boutique est de nouveau compromise, lisez notre article sur la réinfection après nettoyage.
La clé de cookie
Changer la clé de cookie déconnecte toutes les sessions, mais la documentation la présente aussi comme une protection des comptes clients. Ne la modifiez donc pas à la légère, et ne le faites pas pendant une récupération d’accès. Après une compromission, demandez conseil à votre hébergeur ou à un développeur avant de la changer.
Questions fréquentes
Le mot de passe oublié fonctionne-t-il si l’attaquant a changé mon e-mail ?
Pas directement. Il faut d’abord rétablir l’adresse dans la base de données, puis demander la réinitialisation.
Dois-je réinstaller PrestaShop après un piratage ?
Pas forcément. Une réinstallation propre peut être plus sûre qu’un nettoyage, mais elle demande une restauration soigneuse des données. Consultez un prestataire si la boutique est lourde.
Puis-je éviter ce problème à l’avenir ?
Oui : un mot de passe administrateur long et unique, une adresse e-mail de récupération sûre, la limitation des comptes administrateurs, et une revue régulière de la liste des employés.
Sources
- Centre d’aide PrestaShop, « Recover your admin password » : help-center.prestashop.com
- Centre d’aide PrestaShop, « Logging into the Back Office » : help-center.prestashop.com
- La procédure du cas 3 est résumée d’après le centre d’aide ; elle varie selon la version et doit être suivie à la lettre sur une copie.