← Toutes les vérifications
SécuritéSévérité typique: Moyen

Scanner de listage de répertoires

Vérifie si des dossiers comme /uploads ou /backup affichent la liste de tous leurs fichiers.

Ce qu'elle vérifie

Ce scanner vérifie si des dossiers comme /uploads ou /backup affichent une liste navigable de tous les fichiers qu'ils contiennent. Ça arrive quand le serveur génère un index automatique faute de page par défaut. Le scanner regarde seulement si cette liste est visible.

Pourquoi ça compte

Une liste ouverte permet à n'importe qui de parcourir tes fichiers et de découvrir des documents, des sauvegardes ou des ressources que tu n'avais jamais voulu montrer. Elle transforme des dossiers privés en un répertoire public facile à explorer. Elle révèle souvent des fichiers dont tu avais oublié l'existence.

Comment la corriger

Désactive la liste des répertoires dans la configuration de ton serveur, une option qu'on appelle en général autoindex ou directory browsing. Place un fichier d'index par défaut dans les dossiers qui doivent rester accessibles. Et évite de garder des fichiers privés dans des chemins servis publiquement.

Comment fonctionne cette vérification

Scanaris demande sept dossiers courants de ton domaine : /uploads/, /images/, /assets/, /files/, /backup/, /static/ et /media/. Si l'un d'eux répond avec une page dont le titre ou l'en-tête est « Index of … », le format que génèrent Apache, nginx et la plupart des serveurs quand ils listent un répertoire, il ouvre un constat de sévérité moyenne avec le chemin. Un simple 200 n'est pas signalé : une application monopage qui renvoie son HTML sur toutes les routes ne correspond pas au motif.

Pourquoi c'est important

Un listage transforme un dossier en catalogue navigable de tout ce qu'il contient, y compris ce que tu n'as jamais lié depuis aucune page : sauvegardes, exports, documents envoyés par des utilisateurs, anciennes versions de fichiers, images de produits pas encore publiés. Pas besoin de deviner des noms ; le serveur les livre triés et datés. Et c'est le premier endroit où regarde un scanner automatique, parce que trouver un listage ouvert mène souvent à pire dans le même dossier.

Pourquoi ça arrive

Le serveur web, face à une requête vers un dossier sans index.html, a deux options : répondre 403 ou générer une liste. Apache et certains panneaux d'hébergement mutualisé arrivent avec la liste activée ; nginx l'a désactivée sauf si quelqu'un l'a allumée avec autoindex on. Dans les applis Express, un serve-index oublié ou un express.static avec des options de listage fait la même chose.

Comment corriger

  • nginx : cherche autoindex on dans la configuration et passe-le à off (ou supprime-le ; désactivé est la valeur par défaut).
  • Apache : dans le VirtualHost ou dans un .htaccess à la racine, Options -Indexes.
  • Express : retire tout usage de serve-index et vérifie que express.static ne pointe que vers le dossier de build.
  • Hébergement mutualisé : le panneau a généralement une option « Index Manager » ou « Directory browsing » ; règle-la sur « No indexing » pour le domaine.
  • Vercel, Netlify et similaires ne génèrent pas de listages ; si tu vois le constat là, le dossier appartient à un autre serveur qui répond sous ton domaine.

Ensuite, vérifie ce qu'il y avait dans les dossiers listés : tout ce qui s'y trouvait était public même si la liste n'est plus visible. S'il y avait des sauvegardes ou des données d'utilisateurs, considère-les comme téléchargées et agis en conséquence. Et déplace le privé hors du répertoire servi par le serveur ; les vérifications fichiers sensibles et sauvegardes exposées couvrent les cas les plus graves.

Vérifie que c'est corrigé

for d in uploads images assets files backup static media; do
  printf "%-10s " "$d"; curl -s "https://tondomaine.com/$d/" | grep -c "Index of"
done

Tous doivent renvoyer 0. Essaie aussi tout autre dossier dont tu sais qu'il existe sur ton serveur, comme /wp-content/uploads/ ou /docs/.

Questions fréquentes

Mon dossier d'images est public de toute façon. Qu'importe qu'il soit listé ?

La différence est entre quelqu'un qui peut voir une image dont il connaît l'URL et quelqu'un qui peut toutes les voir, y compris celles envoyées pour une campagne pas encore lancée ou celles d'un client précis. Le listage révèle aussi des noms de fichiers qui contiennent parfois des données personnelles.

Pourquoi ne tester que sept dossiers ?

Ce sont ceux qui concentrent la majorité des listages ouverts sur les sites réels. Si ton serveur a le listage activé, il l'est normalement pour tous, donc la correction dans la configuration le ferme partout.

Un listage sur un dossier vide est-il un problème ?

Mineur, mais il indique que le listage est activé sur le serveur. Désactive-le quand même : le dossier ne restera pas vide éternellement.

Vérifie-le sur ton site

Analyse ton site gratuitement et vois si celle-ci et 44 autres vérifications passent, avec un fix prompt pour chaque problème.

Analyser mon site gratuitement

Vérifications liées