WORDPRESS
Sécurisation rudimentaire du dossier d’administration de WordPress
A l’instar d’autres CMS qui ont le nom du dossier d’administration connu, l’accès à la page de login /wp-admin/index.php de wordpress représente une cible de choix pour forcer le login et password afin de compromettre un site web.
L’idée n’est pas nouvelle, elle vient d’un article à l’origine rédigé pour Joomla : cookie et redirection.
Tout d’abord, la description :
- tout accès direct au dossier /wp-admin/ est refusé
- tout accès à un dossier connu de vous seul mène à la page de login de l’administration du site, par exemple le dossier /wp-my-secret-admin/
La mise en place :
1/ sécurisation du dossier /wp-admin/
On crée un fichier .htaccess contenant :
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/wp-admin
RewriteCond %{HTTP_COOKIE} !WordPressAdminSession=moncookiesecret
RewriteRule .* - [L,F]
Tout visiteur de /wp-admin/ ne possédant pas le cookie WordPressAdminSession de valeur moncookiesecret sera refusé.
2/ chargement du cookie par un administrateur
On créée un dossier dont le nom doit rester secret, par exemple /wp-my-secret-admin/ et contenant le fichier index.php suivant :
<?php
$admin_cookie_code="moncookiesecret";
setcookie("WordPressAdminSession",$admin_cookie_code,0,"/");
header("Location: /wp-admin/index.php");
?>
Tout visiteur du dossier /wp-my-secret-admin/ chargera un cookie WordPressAdminSession de valeur moncookiesecret et sera redirigé vers la page de connexion de WordPress.
Afin de garder votre protection efficace, à vous maintenant de choisir le nom du dossier secret, le nom et la valeur du cookie.
