Méthodologie : en février 2026, on a échantillonné aléatoirement 2 400 sites WordPress en .fr et .com via le scrapping de l'index Wappalyzer. Pour chacun, on a testé l'accès direct à 18 chemins sensibles connus. Aucune intrusion, juste des HTTP GET publics. Résultats agrégés ci-dessous.
1. /wp-config.php.bak ou .old
Taux d'exposition : 9,1 %.
Quand un dev modifie wp-config.php, beaucoup font un cp wp-config.php
wp-config.php.bak "au cas où". Le souci : Apache/Nginx ne sert PHP qu'aux fichiers
.php. Un fichier .bak est servi en clair → tout le monde voit votre
mot de passe BDD, vos clés Anthropic, vos SALTS WP.
Fix : supprimer le backup, ne JAMAIS le laisser dans webroot. Plus
sain encore : déplacer wp-config.php un niveau au-dessus de webroot.
2. /.env
Taux d'exposition : 3,4 %.
Apparu avec la mode des stacks "modernes" qui imitent Node/Laravel. Contient typiquement
clés API tierces (Stripe, Anthropic, AWS), tokens GitHub, secrets JWT. Découverte facile :
beaucoup de scanners automatisés tentent /.env en premier.
Fix : bloquer via .htaccess :
<Files ".env"> Require all denied </Files>. Encore mieux :
placer .env hors de webroot.
3. /wp-content/debug.log
Taux d'exposition : 7,8 %.
Activé via WP_DEBUG_LOG dans wp-config. Loggue absolument tout — y compris des
chemins absolus, des stacks traces avec credentials, des erreurs SQL avec table names. Un
attaquant qui lit votre debug.log a une cartographie complète de votre site.
Fix : désactiver WP_DEBUG_LOG en prod, ou rediriger les
logs hors de webroot avec ini_set('error_log', '/path/hors/webroot/wp-errors.log').
4. /wp-content/uploads/[YEAR]/[MONTH]/index-of/
Taux d'exposition : 22,6 %.
Le directory listing Apache. Si vous n'avez pas d'index.html ou index.php
dans /wp-content/uploads/, le serveur affiche la liste complète des fichiers.
Pas une faille majeure mais permet un OSINT facile (factures PDF clients, images privées
uploadées, etc.).
Fix : Options -Indexes dans .htaccess. Alesta le fait
automatiquement via le module Cache & .htaccess.
5. /readme.html de WordPress
Taux d'exposition : 71,2 % (!).
Ce fichier livré par défaut affiche la version exacte de WordPress installée (ex: "Version 6.5.2"). Un attaquant lit ça en 1 seconde, croise avec un CVE pour cette version exacte, et tente l'exploitation.
Fix : supprimer readme.html du webroot. Ou bloquer via
.htaccess.
6. /wp-content/uploads/wpallimport/files/
Taux d'exposition : 1,9 % (mais critique sur les e-commerce).
Le plugin WP All Import stocke les fichiers temporaires d'import (souvent des CSV avec données clients, commandes, parfois mots de passe en clair). Plugin populaire chez les sites WooCommerce.
Fix : bloquer ce dossier en .htaccess, ou configurer WP All Import pour stocker les fichiers hors webroot.
7. /wp-content/uploads/aiowps_backups/
Taux d'exposition : 2,1 %.
Le plugin All-in-One WP Security & Firewall stocke ses backups BDD ici. Si vous l'avez installé puis désinstallé, le dossier reste avec des dumps SQL accessibles.
Fix : supprimer le dossier après désinstallation, ou utiliser un plugin de backup qui stocke hors webroot par défaut (UpdraftPlus, BackupBuddy).
Comment tester votre site en 2 minutes
Méthode manuelle : ouvrez les 7 URLs ci-dessous dans votre navigateur sur votre propre domaine. Une réponse 200/403 visible avec contenu = problème. 404 ou 403 propre = sain.
https://votre-site.com/wp-config.php.bak
https://votre-site.com/.env
https://votre-site.com/wp-content/debug.log
https://votre-site.com/wp-content/uploads/
https://votre-site.com/readme.html
https://votre-site.com/wp-content/uploads/wpallimport/files/
https://votre-site.com/wp-content/uploads/aiowps_backups/
Méthode automatisée : le module Fichiers sensibles d'Alesta teste ces 18 chemins + 30 autres connus chaque semaine, et vous alerte par email + dashboard quand quelque chose change.
Bonus — la liste complète des 18 chemins testés par Alesta
/wp-config.php.bak·.old·.save·~/.env·/.env.local·/.env.production/wp-content/debug.log·/error_log/readme.html·/license.txt/wp-content/uploads/wpallimport/·/wp-content/uploads/aiowps_backups//wp-content/backup-db/·/wp-content/uploads/backupwordpress//.git/config·/.git/HEAD(catastrophique si exposé)/composer.json·/package.json
Conclusion
38 % des sites WordPress exposent au moins un de ces fichiers. C'est la base, ce sont des fichiers à 0 € pour les attaquants — un scanner automatique les trouve en moins d'une minute. Fermer ces portes-là, c'est dimanche après-midi avec un .htaccess et ça suffit pour passer en-dessous du radar de 95 % des bots.