Rechercher
Fermer ce champ de recherche.
Porte fenêtre

Pourquoi MultiViews ruine la sécurité WordPress

Temps de lecture : 4 minutes

Dans cet article nous allons voir en quoi l’option MultiViews d’Apache (mod_negotiation) peut poser des problèmes à un site WordPress.

Si vous utilisez iThemes Security pour protéger votre site WordPress, attention : le réglage de cette extension qui permet de cacher l’accès à votre interface d’administration peut facilement être contourné chez certains hébergeurs, notamment OVH. En effet, il existe chez eux une fonctionnalité MultiViews qui donne accès, en cas d’erreur dans L’URL, à votre fichier wp-login.php.

Sécurité : vivons cachés

Une des premières mesures de sécurité sur un site WordPress consiste à cacher l’accès à l’interface d’administration. Cela permet, a minima, de déjouer les tentatives de piratage automatisées qui visent des sites WordPress non sécurisés.

Porte FenetrePlusieurs extensions permettent de faire cela : Move Login et WPS Hide Login sont dédiés à cette fonction (un petit cocorico pour ces deux extensions françaises), tandis qu’iThemes security l’inclut dans ses réglages avec « Hide Login Area ».

Alors que Move Login opère un masquage complet, le réglage d’iThemes peut être contourné par une configuration côté serveur.

Option MultiViews

Chez certains hébergeurs comme OVH (et il n’est pas le seul), l’option MultiViews est activée par défaut.

Qu’est ce que c’est que l’option MultiViews ?

Fonctionnalité par défaut d’Apache (mod_negotiation), elle met en œuvre la négociation de contenu. Le « content negotiation »est une spécification W3C du protocole HTTP/1.1.

Most HTTP responses include an entity which contains information for interpretation by a human user. Naturally, it is desirable to supply the user with the « best available » entity corresponding to the request. Unfortunately for servers and caches, not all users have the same preferences for what is « best, » and not all user agents are equally capable of rendering all entity types. For that reason, HTTP has provisions for several mechanisms for « content negotiation » — the process of selecting the best representation for a given response when there are multiple representations available.

En résumé, cela permet, en appelant une URL comme www.example.com/page, de retourner le fichier le plus approprié.Effet MutliViews

Si le fichier www.example.com/page.html existe, il va être retourné, sinon le serveur va rechercher www.example.com/page.php. Il s’agit de réécriture (rewriting) intelligente.

Faille de sécurité

Cette option serait confortable… si elle n’en faisait pas trop. Le réglage d’iThemes permet en effet de masquer le fichier wp-login.php. S’il est appelé, iThemes redirige vers une page d’erreur.iThemes cache wp-login.php

Par contre, il ne traite pas un appel au fichier wp-login. Normal, ce fichier n’existe pas. Heureusement MutliViews se charge de corriger l’erreur et redirige vers le fichier wp-login.php à la barbe de iThemes Security.

MutliViews contourne iThemes Security

Arg !

Comment savoir si mon site est atteint ?

C’est simple. Ajoutez « wp-login » à la suite de l’adresse de votre site. Comme dans l’illustration ci-dessus. Si vous voyez apparaître la fenêtre de connexion de WordPress c’est que l’option est activée.

Fenêtre wp-login.php. Merci MultiViews.

Il y a toujours une solution

Pour désactiver l’option MultiViews, il suffit d’ajouter la ligne suivante dans le fichier .htaccess placé à la racine du site.

Options -Multiviews

Si vous aussi, vous avez constaté ce problème chez votre hébergeur, merci de le signaler dans les commentaires afin que chacun profite de l’info et de la solution.

Après avoir posté le problème sur le forum WordPress d’iThemes, j’ai signalé la faille à iThemes Security. Je ne manquerai pas d’ajouter leur réponse à cet article.

Après une semaine un début de réaction du côté d’iThemes au sujet de la faille MutliViews.

Tweet faille iTheme Security Multiviews

Un train peut en cacher un autre

Un problème vient de trouver une solution. C’est bien.

La modification d’un système informatique peut parfois avoir des conséquences inattendues. On appelle cela, de façon élégante, un « effet de bord ». Restons vigilant afin de ne pas subir les répercussions imprévues qui pourraient apparaître à l’avenir… ou pas.

Pour aller plus loin…

Toutes les catégories du blog note

WordPress et le Web

A propos de la communauté

Commentaires sur le métier