Les blogs WordPress sont régulièrement la cible d’attaques distribuées et répétitives. Les fichiers « wp-login.php » et « xmlrpc.php » sont particulièrement visés par des attaques de type brute force.
Nous vous proposons 2 solutions efficace à mettre en place sur votre blog WordPress.
1/ Sécuriser wp-login.php
À la racine de votre blog, au même niveau que le fichier « wp-login.php », créez un fichier avec le nom de votre choix.
Pour l’exemple, nous choisissons de créer le fichier « wp-connex.php ». Placez le contenu suivant dans le fichier :
<?php
setcookie("wp-connex", 0123456789);
header("Location: wp-login.php");
Modifiez ensuite le fichier « .htaccess » de votre WordPress, en plaçant tout en haut le contenu suivant :
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_COOKIE} !^.*wp\-connex=0123456789.*$ [NC]
RewriteRule wp-login.php - [F]
</IfModule>
Modifiez librement la valeur du cookie (0123456789), son nom (wp-connex) et le nom du fichier créé (wp-connex.php).
La valeur du cookie et son nom doit être identique dans le fichier « wp-connex.php » et le fichier « .htaccess ».
À présent, pour vous connecter à l’admin WordPress, rendez-vous directement sur le fichier « wp-connex.php ». Les requêtes directes vers « wp-login.php » seront refusées. Votre accès WordPress est sécurisé.
2/ Sécuriser xmlrpc.php
Si vous n’utilisez pas XML-RPC sur votre installation WordPress, la meilleure chose à faire est d’interdire toute requête sur ce fichier. Pour cela, placez le code ci-dessous tout en haut de votre fichier « .htaccess » :
# Block WordPress xmlrpc.php requests
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>