Définitions WordPress
Retrouvez tous les termes qui définissent l'univers du CMS Open Source WordPress
Le directory listing est une fonctionnalité des serveurs web qui permet d’afficher le contenu d’un répertoire lorsque aucun fichier d’index (comme index.php
ou index.html
) n’est présent. Concrètement, si cette option est activée, un utilisateur peut voir une liste de tous les fichiers et dossiers situés dans un répertoire donné, directement depuis son navigateur.
Bien que cela puisse sembler inoffensif, il s’agit en réalité d’une faille de sécurité majeure pour les sites web, notamment ceux créés sous WordPress. Il est donc essentiel de comprendre ce qu’est le directory listing, pourquoi il peut représenter un danger, et comment le désactiver pour protéger votre site.
Le directory listing expose les fichiers et répertoires sensibles d’un site web. Pour un site WordPress, cela peut révéler des informations cruciales, telles que la structure de fichiers, les plugins utilisés, ou même des fichiers de configuration comme wp-config.php
. Des attaquants pourraient alors utiliser ces informations pour exploiter des failles de sécurité ou accéder à des données confidentielles.
L’exposition des fichiers augmente également le risque de vol de ressources (images, scripts) et facilite l’accès aux scripts ou fichiers non protégés.
Selon l’OWASP (Open Web Application Security Project), le directory listing ne figure pas dans leur dernier top 10 des vulnérabilités web, mais il reste un sujet de préoccupation en matière de sécurité des applications web.
Sur la plupart des serveurs, le directory listing est désactivé par défaut. Cependant, dans certains cas, cette option peut être activée, notamment sur des serveurs mal configurés. Voici comment le désactiver sur les serveurs les plus courants.
Si vous utilisez Apache, l’une des manières les plus simples de désactiver le directory listing est de modifier le fichier .htaccess
à la racine de votre site WordPress. Ajoutez simplement cette ligne :
Cela empêche l’affichage des répertoires si aucun fichier d’index n’est trouvé. Si cette ligne est déjà présente, vérifiez qu’elle ne soit pas désactivée ou surchargée par d’autres configurations.
Pour Nginx, la désactivation du directory listing se fait via le fichier de configuration du serveur. Vous devrez localiser le bloc correspondant au répertoire concerné et ajouter ou modifier la directive suivante :
Une fois cette modification effectuée, redémarrez le serveur Nginx pour appliquer les changements.
Un fichier d’index (index.php
, index.html
) est essentiel pour empêcher le directory listing. Ce fichier sert de page d’accueil à chaque répertoire de votre site web. Lorsqu’un utilisateur tente d’accéder à un répertoire, le serveur web affiche automatiquement ce fichier au lieu de lister le contenu du dossier. Si ce fichier est absent et que le directory listing est activé, les visiteurs pourront voir directement tous les fichiers du répertoire.
Du point de vue du SEO (optimisation pour les moteurs de recherche), le directory listing peut avoir des conséquences négatives. Google et d’autres moteurs de recherche peuvent indexer des fichiers et répertoires qui n’ont pas vocation à être publics, ce qui peut non seulement encombrer l’indexation mais aussi exposer des fichiers sensibles.
En bloquant l’accès aux répertoires inutiles ou non sécurisés, vous améliorez non seulement la sécurité de votre site, mais aussi sa performance SEO en empêchant les robots d’exploration de perdre du temps sur des pages sans contenu pertinent.
Outre la désactivation du directory listing, voici quelques bonnes pratiques à suivre pour renforcer la sécurité de vos répertoires WordPress :
.htaccess
: En plus de désactiver l’indexation des répertoires, vous pouvez interdire l’accès à certains fichiers sensibles en ajoutant des règles dans votre fichier .htaccess
.Vous souhaitez travailler avec notre agence ?