Conseils de protection pour WordPress. 12 conseils pour protéger votre site

Publié: 2019-07-11

WordPress est l'un des CMS les plus populaires au monde. Plus de 18,9% de tous les sites Internet l'utilisent et le nombre d'installations a dépassé 76,5 millions. Malheureusement, une telle popularité a ses inconvénients. Selon le rapport de Sucuri (website security & protection), WordPress est le CMS le plus piratable au monde. Cependant, si vous suivez les meilleures pratiques en la matière et mettez en œuvre quelques techniques de ce guide, vous vous rendrez compte que la protection de WordPress peut être facilement renforcée grâce à quelques étapes simples.

Ce dont vous allez avoir besoin

Avant de commencer, vérifiez les points suivants :

  • Accès au panneau de configuration WordPress ;
  • L'accès à votre compte d'hébergement (optionnel).

Contenu

Étape 1. Maintenir la version actuelle de WordPress ;
Étape 2. Utilisation d'identifiants de connexion non standard ;
Étape 3. Activation de l'authentification en deux étapes ;
Étape 4. Désactivation des rapports d'erreur PHP ;
Étape 5. N'utilisez pas de modèles annulés pour WordPress ;
Étape 6. Analyse de WordPress à la recherche de logiciels malveillants ;
Étape 7. Transfert de votre site Web vers un hébergement plus sécurisé ;
Étape 8. Sauvegardez vos données aussi souvent que possible ;
Étape 9. Désactivation de l'option d'édition de fichiers ;
Étape 10. Suppression des modèles et plug-ins inutilisés ;
Étape 11. Utilisation de .htaccess pour améliorer la sécurité de WordPress ;
Étape 12. Modification des préfixes de base de données WordPress standard pour empêcher l'injection SQL Conclusion

Étape 1. Maintenir la version actuelle de WordPress

Ce sera la première et la plus importante étape pour améliorer la sécurité de WordPress. Si vous avez besoin d'un site Web propre sans malware, vous devez vous assurer que la version de votre WordPress est à jour. Ce conseil peut sembler simple, mais seulement 22 % de toutes les installations de WordPress sont dans la dernière version.

WordPress a implémenté la fonctionnalité de mise à jour automatique dans la version 3.7 mais cela ne fonctionne que pour les petites mises à jour de sécurité. Alors que les grandes mises à jour de clé doivent être installées manuellement.

Si vous ne savez pas comment mettre à jour WordPress, consultez ceci.

Étape 2. Utilisation d'identifiants de connexion non standard

Utilisez-vous "admin" comme nom d'administrateur dans WordPress ? Si la réponse est «oui», alors vous réduisez considérablement la sécurité de WordPress et facilitez le piratage de votre panneau de contrôle. Il est fortement recommandé de changer le nom d'utilisateur de l'administrateur pour autre chose (voir ce tutoriel si vous ne savez pas comment faire cela) ou de créer un nouveau compte administrateur avec des données différentes.

Suivez ces étapes si vous préférez la deuxième option :

  • Connectez-vous au panneau de configuration WordPress ;
  • Trouvez la section "Utilisateurs" et cliquez sur le bouton "Ajouter un nouveau" ;
  • Créez un nouvel utilisateur et attribuez des droits d'administrateur ;
  • Connectez-vous à WordPress avec vos nouvelles données ;
  • Revenez à la section Utilisateurs et supprimez le compte Admin par défaut.

Un bon mot de passe joue un rôle clé dans la sécurité de WordPress. Il est beaucoup plus difficile de déchiffrer un mot de passe composé de chiffres, de lettres majuscules et minuscules et de symboles spéciaux. Des outils comme LastPass et 1Password peuvent vous aider à créer et à gérer des mots de passe complexes. De plus, si jamais vous avez besoin de vous connecter à votre panneau de contrôle WordPress lorsque vous vous connectez à un réseau non sécurisé (par exemple, cafés, bibliothèques publiques, etc.), n'oubliez pas d'utiliser un VPN sécurisé qui protège vos informations de connexion.

Étape 3. Activer l'authentification en deux étapes

L'authentification en deux étapes ajoute une couche de sécurité supplémentaire à votre page d'autorisation. Une fois le nom d'utilisateur confirmé, il ajoute une autre étape que vous devez effectuer pour vous authentifier avec succès. Vous l'utilisez probablement déjà pour accéder à votre courrier électronique, à votre banque en ligne et à d'autres comptes contenant des informations confidentielles. Pourquoi ne pas l'utiliser également dans WordPress ?

Bien que cela puisse sembler compliqué, activer l'authentification en deux étapes dans WordPress est très simple. Tout ce que vous avez à faire est d'installer une application pour l'authentification en deux étapes et de la configurer pour votre WordPress. Vous pouvez trouver des informations plus détaillées sur la façon d'activer l'authentification en deux étapes sur WordPress ici.

Étape 4. Désactivation des rapports d'erreur PHP

Les rapports d'erreur PHP peuvent être très utiles si vous développez un site Web et que vous voulez vous assurer que tout fonctionne correctement. Cependant, montrer les erreurs à tout le monde est une grave omission dans la sécurité de WordPress.

Vous devriez résoudre ce problème dès que possible. Ne vous inquiétez pas, vous n'avez pas besoin d'être un programmeur pour désactiver les rapports d'erreur PHP sur WordPress. La plupart des fournisseurs de services d'hébergement proposent cette option dans le panneau de configuration. Sinon, ajoutez simplement les lignes suivantes à votre fichier wp-config.php. Vous pouvez utiliser le client FTP ou le gestionnaire de fichiers pour modifier le fichier wp-config.php.

rapport_erreur(0);
@ini_set('display_errors', 0);

Étape 5. N'utilisez pas de modèles annulés pour WordPress

N'oubliez pas que "le seul fromage gratuit est dans la souricière". Il en va de même pour les modèles et plugins annulés.

Il existe des milliers de plug-ins et de modèles annulés sur Internet. Les utilisateurs peuvent les télécharger gratuitement, en utilisant différents partages de fichiers ou fichiers torrent. Ils ne savent pas que la plupart d'entre eux sont infectés par des logiciels malveillants ou des liens vers des méthodes d'optimisation des moteurs de recherche noirs.

Arrêtez d'utiliser des plugins et des modèles annulés. Non seulement cela est contraire à l'éthique, mais cela nuit également à la sécurité de votre WordPress. Finalement, vous paierez plus à un développeur pour nettoyer votre site Web.

Étape 6. Analyse de WordPress à la recherche de logiciels malveillants

Les pirates utilisent souvent des trous dans les modèles ou les plugins pour infecter WordPress. Par conséquent, il est important de consulter votre blog plus souvent. Il existe de nombreux plugins bien écrits disponibles à cet effet. WordFence se démarque de la foule. Il offre un guide d'utilisation et la possibilité de tester automatiquement, ainsi qu'un tas d'autres paramètres différents. Vous pouvez même récupérer des fichiers modifiés/infectés en quelques clics. Il est disponible gratuitement. Ces faits devraient vous suffire pour l'installer dès maintenant.

Autres plugins populaires pour améliorer la sécurité de WordPress :

  • Sécurité à l'épreuve des balles . Contrairement à WordFence, dont nous avons parlé précédemment, BulletProof n'analyse pas vos fichiers mais vous fournit un pare-feu, une protection de base de données, etc. Une particularité est la possibilité de configurer et d'installer le plugin en quelques clics.
  • Sucuri Sécurité . Ce plugin vous protège des attaques DDOS, dispose d'une liste noire, analyse votre site Web à la recherche de logiciels malveillants et contrôle votre pare-feu. S'il trouve quoi que ce soit, vous serez averti par e-mail. Google, Norton, McAfee - ce plugin inclut toutes les listes noires de ces programmes.

Étape 7. Transférer votre site Web vers un hébergement plus sécurisé

Ce conseil peut sembler étrange, mais les statistiques montrent que plus de 40 % des sites Web WordPress ont été piratés en raison de failles de sécurité dans leurs comptes d'hébergement. Ces statistiques devraient vous inciter à migrer WordPress vers un hébergement plus sécurisé. Quelques faits clés à garder à l'esprit lors du choix d'un nouvel hébergement :

  • S'il s'agit d'un hébergement partagé, assurez-vous que votre compte est isolé des autres utilisateurs et qu'il n'y a aucun risque d'infection par d'autres sites Web sur le serveur.
  • L'hébergement a une fonction de sauvegarde automatique ;
  • Le serveur dispose d'un pare-feu tiers et d'un outil d'analyse.

Étape 8. Sauvegardez vos données aussi souvent que possible

Même les plus grands sites Web sont piratés chaque jour, malgré le fait que leurs propriétaires dépensent des milliers d'euros pour améliorer la sécurité de WordPress.

Même si vous suivez les meilleures pratiques dans ce domaine et avez appliqué les conseils de cet article, vous devez toujours effectuer des sauvegardes régulières de votre site Web.

Il existe plusieurs façons de créer une sauvegarde, par exemple, vous pouvez télécharger manuellement les fichiers du site et exporter la base de données, ou utiliser les outils proposés par votre hébergeur. Une autre façon consiste à utiliser les plugins WordPress. Les plus populaires d'entre eux sont :

  • VaultPress ;
  • Sauvegarde WordPress ;
  • BackupGuard.

Vous pouvez même automatiser le processus de création et de stockage des sauvegardes WordPress dans Dropbox.

Étape 9. Désactivation de l'option d'édition de fichiers

Comme vous le savez probablement, WordPress possède un éditeur intégré qui vous permet d'éditer des fichiers PHP. Cette fonctionnalité est aussi utile qu'elle est susceptible d'être nuisible. Si des pirates accèdent à votre panneau de contrôle, la première chose qu'ils remarqueront est l'éditeur de fichiers. Certains utilisateurs de WordPress préfèrent désactiver complètement cette fonctionnalité. Il peut être désactivé en éditant le fichier wp-config.php en y ajoutant le code suivant :

définir ('DISALLOW_FILE_EDIT', vrai);

C'est tout ce dont vous avez besoin pour désactiver cette fonctionnalité dans WordPress.

IMPORTANT. Si vous souhaitez réactiver cette fonctionnalité, utilisez le client FTP ou le gestionnaire de fichiers de votre hébergement et supprimez ce code du fichier wp-config.php.

Étape 10. Suppression des modèles et plugins inutilisés

Nettoyez votre site Web sur WordPress et supprimez tous les modèles et plug-ins inutilisés. Les pirates utilisent souvent des modèles et des plug-ins désactivés et obsolètes (même des plug-ins WordPress officiels) pour accéder à votre panneau de contrôle ou pour télécharger du contenu malveillant sur votre serveur. En supprimant les plugins et les modèles que vous avez cessé d'utiliser (et que vous avez peut-être oublié de mettre à jour) il y a longtemps, vous réduisez les risques et rendez votre site WordPress plus sécurisé.

Étape 11. Utiliser .htaccess pour améliorer la sécurité de WordPress

.htaccess est un fichier nécessaire au bon fonctionnement des liens WordPress. Sans les entrées correctes dans le fichier .htaccess, vous obtiendrez beaucoup de 404.

Peu d'utilisateurs savent que .htaccess peut être utilisé pour améliorer la protection de WordPress. Par exemple, vous pouvez bloquer l'accès ou désactiver l'exécution de PHP dans des dossiers spécifiques.

IMPORTANT. Avant d'apporter des modifications au fichier, sauvegardez l'ancien fichier .htaccess. Pour ce faire, vous pouvez utiliser le client FTP ou le gestionnaire de fichiers.

Désactivation de l'accès à la partie administrative de WordPress

Le code ci-dessous vous permettra d'accéder à la partie administrative de WordPress uniquement depuis certaines IP.

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "Contrôle d'accès administrateur WordPress"
Type d'authentification de base

ordre refuser, autoriser.
refuser de tous
autoriser à partir de xx.xx.xx.xx.xxx
autoriser à partir de xx.xx.xx.xx.xxx

Notez que "xx.xx.xx.xx.xxx" est votre adresse IP. Vous pouvez utiliser ce site Web pour vérifier votre adresse IP actuelle. Si vous utilisez plusieurs connexions pour gérer le site sur WordPress, assurez-vous d'avoir écrit d'autres adresses IP (ajoutez autant d'adresses que nécessaire). Il n'est pas recommandé d'utiliser ce code si vous avez une adresse IP dynamique.

Désactiver l'exécution de PHP dans des dossiers spécifiques

Les pirates aiment télécharger des scripts de porte dérobée dans le dossier de téléchargement de WordPress. Par défaut, ce dossier est uniquement utilisé pour stocker des fichiers multimédias. Par conséquent, il ne doit contenir aucun fichier PHP. Vous pouvez facilement désactiver l'exécution de PHP en créant un nouveau fichier .htaccess dans /wp-content/uploads/ avec ces règles :

refuser de tous

Protection du fichier wp-config.php

Le fichier wp-config.php contient le noyau de configuration WordPress et les détails de la base de données MySQL. C'est donc le fichier le plus important de WordPress. Par conséquent, il devient souvent la cible principale des pirates WordPress. Cependant, vous pouvez facilement le sécuriser en utilisant les règles .htaccess suivantes :

ordonnance autoriser, refuser.
refuser de tous

Étape 12. Modification des préfixes de base de données WordPress standard pour empêcher l'injection SQL

La base de données WordPress contient et stocke toutes les informations clés nécessaires au fonctionnement de votre site Web. En conséquence, il devient une autre cible pour les pirates et les spammeurs qui exécutent du code automatisé pour la mise en œuvre du code SQL. Lors de l'installation de WordPress, de nombreuses personnes ne prennent pas la peine de modifier le préfixe standard de la base de données wp_. Selon WordFence, 1 piratage de WordPress sur 5 est lié à la mise en œuvre du code SQL. Étant donné que wp_ est l'une des valeurs standard, les pirates commencent par celle-ci. À ce stade, j'envisagerai brièvement de protéger un site Web sur WordPress contre de telles attaques.

Modification de la table des préfixes d'un site WordPress existant

IMPORTANT. La sécurité d'abord! Avant de commencer, assurez-vous d'avoir une sauvegarde de votre base de données MySQL.

Partie un. Changer le préfixe dans wp-config.php

Trouvez votre fichier wp-config.php en utilisant le client FTP ou le gestionnaire de fichiers et trouvez la ligne avec $table_prefix.

Vous pouvez ajouter des chiffres, des lettres ou des traits de soulignement supplémentaires. Après cela, enregistrez vos modifications et passez à l'étape suivante. Dans ce guide, j'utiliserai wp_1secure1_ comme nouveau préfixe de table.

Pendant que vous êtes dans votre fichier wp-config.php, trouvez le nom de votre base de données pour savoir lequel changer. Regardez dans la section define('DB_NAME'.

Deuxième partie. Mise à jour de toutes les tables de la base de données

Vous devez maintenant mettre à jour tous les enregistrements de votre base de données. Cela peut être fait en utilisant phpMyAdmin.

Trouvez la base de données définie dans la première partie et connectez-vous à celle-ci.

Par défaut, l'installation de WordPress comporte 12 tableaux et chacun d'eux doit être mis à jour. Cependant, cela peut être fait plus rapidement en utilisant la partition SQL dans phpMyAdmin.

La modification manuelle de chaque table prendra énormément de temps, utilisez donc des requêtes SQL pour accélérer le processus. La syntaxe suivante vous permettra de mettre à jour toutes les tables de votre base de données :

RENOMMER la table `wp_commentmeta` TO `wp_1secure1_commentmeta` ;
RENOMMER la table `wp_comments` TO `wp_1secure1_comments` ;
RENOMMER la table `wp_links` TO `wp_1secure1_links` ;
RENOMMER la table `wp_options` TO `wp_1secure1_options` ;
RENOMMER la table `wp_postmeta` TO `wp_1secure1_postmeta` ;
RENOMMER la table `wp_posts` TO `wp_1secure1_posts` ;
RENOMMER la table `wp_terms` TO `wp_1secure1_terms` ;
RENOMMER la table `wp_termmeta` TO `wp_1secure1_termmeta` ;
RENOMMER la table `wp_term_relationships` TO `wp_1secure1_term_relationships` ;
RENOMMER la table `wp_term_taxonomy` TO `wp_1secure1_term_taxonomy` ;
RENOMMER la table `wp_usermeta` TO `wp_1secure1_usermeta` ;
RENOMMER la table `wp_users` TO `wp_1secure1_users` ;

Certains modèles ou plugins WordPress peuvent ajouter des tables supplémentaires à la base de données. Si vous avez plus de 12 tables dans votre base de données MySQL, ajoutez manuellement les tables restantes à votre requête SQL et exécutez-la.

Partie trois. Vérification des options et des tables de métadonnées personnalisées

Selon le nombre de plugins installés, certaines valeurs de votre base de données doivent être mises à jour manuellement. Vous pouvez le faire en exécutant des requêtes SQL distinctes pour les tables d'options et de métadonnées.

Pour le tableau des options, utilisez :

SELECT * FROM `wp_1secure1_options` WHERE `option_name` LIKE `%wp_%`

Pour la table de métadonnées :

SELECT * FROM `wp_1secure1_usermeta` WHERE `meta_key` LIKE `%wp_%`

Lorsque vous recevez les résultats de la requête, mettez simplement à jour toutes les valeurs de wp_ vers votre préfixe nouvellement configuré. Dans la table de métadonnées de l'utilisateur, vous devez modifier le champ meta_key, tandis que pour la table des options, vous devez modifier la valeur option_name.

Sécuriser les nouvelles installations WordPress

Si vous envisagez d'installer de nouveaux sites Web WordPress, vous n'avez pas à tout recommencer. Vous pouvez facilement changer les préfixes des tableaux WordPress pendant le processus d'installation.

Toutes nos félicitations! Vous avez réussi à améliorer la sécurité de votre base de données.

Conclusion

Bien que WordPress soit le CMS le plus piratable au monde, il n'est pas si difficile d'améliorer sa protection. Dans ce guide, je vous ai donné 12 conseils à suivre pour assurer la sécurité de WordPress.

Biographie de l' auteur : Roy est un passionné de technologie, un père de jumeaux aimant, un programme dans une société de logiciels personnalisés, rédacteur en chef du lecteur gourmand TheHomeDweller.com et un jardinier.