TL;DR : Un audit OSINT passif a permis d’identifier 7 logins de connexion et 12 profils actifs sans aucune tentative d’intrusion. En exploitant l’API REST de WordPress et les hashs Gravatar, un attaquant peut obtenir vos identifiants et emails personnels pour préparer une attaque ciblée. La solution ? Restreindre l’accès à l’API et activer le 2FA immédiatement.
La sécurité d’un site WordPress ne s’arrête pas à un mot de passe complexe. Lors de mes récents audits de sécurité passifs, j’ai constaté qu’une configuration par défaut de WordPress permet à n’importe quel attaquant de dresser une liste précise de vos utilisateurs en quelques secondes.
Voici comment cette faille fonctionne et comment la corriger définitivement.
1. Le problème : L'indiscrétion de l'API REST
Par défaut, WordPress expose une interface publique appelée API REST. L’un de ses points d’accès (endpoints) permet de lister tous les comptes ayant publié du contenu sans aucune authentification.
• La technique : En consultant simplement l’URL votre-site.com/wp-json/wp/v2/users, un attaquant reçoit un fichier JSON contenant les noms, les descriptions et surtout les logins (slugs) de vos collaborateurs.
• L’impact : Connaître le nom d’utilisateur réduit de 50 % le travail d’une attaque par brute force. L’attaquant n’a plus qu’à se concentrer sur le mot de passe.
2. Au-delà de l'API : Les archives d'auteurs
Même si l’API est restreinte, WordPress possède un autre mécanisme de navigation révélateur : les paramètres d’URL de type ?author=ID.
Example: https://[votre site]/?author=1
En testant numériquement les IDs (1, 2, 3…), un attaquant peut forcer le site à rediriger vers la page de profil de l’utilisateur. Lors de mon dernier audit, cette méthode a permis d’identifier l’ID 2, correspondant probablement au compte administrateur principal du fondateur.
3. Le danger des avatars (Gravatar) et des emails
C’est un point souvent négligé : les images de profil. WordPress utilise Gravatar, qui génère des images basées sur le hash SHA-256 de l’adresse email.
• Fuite de données : Ce hash est visible dans le code source public de vos pages.
• Reconstruction : Par une attaque par dictionnaire, il est possible de retrouver l’adresse email réelle derrière ce hash. Dans mon rapport d’audit, j’ai pu confirmer ainsi 5 adresses emails professionnelles et personnelles, ouvrant la porte à des campagnes de phishing très ciblées.
4. Plan d'action : Sécuriser votre installation
Pour réduire votre surface d’attaque sans modifier une seule ligne de code, voici les étapes à suivre :
Actions Immédiates (Moins de 30 min)
• Activer la Double Authentification (2FA) : C’est la protection la plus efficace contre l’exploitation de logins volés ou identifiés.
• Masquer la page de connexion : Utilisez des outils (comme le plugin WPS Hide Login) pour déplacer l’accès à /wp-admin vers une URL secrète.
Nettoyage Technique
• Restreindre l’API REST : Utilisez un plugin pour désactiver l’accès public à /wp-json/wp/v2/users.
• Gérer les redirections d’auteurs : Si vous utilisez Yoast SEO, désactivez les “Author archives” pour bloquer les scans par ID d’auteur.
• Protéger les emails : Désactivez Gravatar et hébergez les photos de vos collaborateurs localement pour ne plus exposer les hashs de leurs emails.
Conclusion L’énumération d’utilisateurs est une mine d’or pour la reconnaissance OSINT. En corrigeant ces fuites d’informations, vous transformez votre site d’une cible facile en une infrastructure robuste.
Vous souhaitez savoir si votre site expose actuellement vos données collaborateurs ?
Auteur: DamSecflow
Don’t Toast your Host

