WordPress : une faille permet de réinitialiser le mot de passe de l’admin
En juillet 2016, Dawid Golunski repère une faille sur WordPress. Il prévient alors les équipes du CMS, qui ne réagissent pas (aucun patch de sécurité n’a été déployé). Aujourd’hui, il décide de présenter cette faille au grand public. Il s’agit d’une faille 0day, elle est donc présente sur toutes les versions (jusqu’à WordPress 4.7.4).
Une faille zero day pour récupérer le mot de passe de l’admin
Sur ce billet de blog, il indique que la vulnérabilité (baptisée CVE-2017-8295) provient de la fonctionnalité de réinitialisation du mot de passe de l’administrateur. Dans certains cas, il est possible d’obtenir le lien de réinitialisation du mot de passe à la place de l’admin – et donc de le modifier pour prendre le contrôle du site WordPress. Le CMS utilise des données non-vérifiées pour envoyer l’email de réinitialisation. En modifiant la variable SERVER_NAME, des personnes mal intentionnées peuvent réinitialiser le password. La faille se situe dans le fichier pluggable.php. Cependant, l’exploitation de cette faille dépend de deux conditions : la configuration du serveur mail utilisé et l’état de la boîte de réception de l’administrateur.
Avant de transmettre le lien de réinitialisation à l’adresse mail du hackeur, WordPress va, dans tous les cas, essayer de l’envoyer à l’administrateur. Celle-ci doit donc être indisponible pour que WordPress renvoie un email au hackeur. Ce dernier doit saturer la boîte mail de l’administrateur au préalable (envoi de nombreux emails ou d’emails avec des pièces jointes volumineuses pour atteindre le quota maximal autorisé, attaque du DNS..). On peut également envoyer plusieurs emails de réinitialisation du mot de passe, en espérant que l’admin clique sur « Répondre » pour demander des explications. Dans ce cas, l’email de réponse est envoyé au hackeur – qui récupère ainsi le lien pour réinitialiser le mot de passe de l’admin.
Comment sécuriser son site WordPress ?
Pour le moment, aucun patch n’a été déployé par WordPress pour sécuriser le CMS. Rappelons qu’il est utilisé par plus d’un site sur quatre et que cette faille touche toutes les versions de WordPress, jusqu’à la 4.7.4. Seul motif de satisfaction : les hackeurs ne pourront pas exploiter cette faille sur tous les serveurs (seuls les sites accessibles par adresse IP sont vulnérables, ceux hébergés sur un serveur mutualisés bien configurés sont protégés). Aussi, vous pouvez paramétrer UseCanonicalName pour attribuer une valeur statique à SERVER_NAME.
Plus d’informations sur cette faille et sur les mesures de protection sur le blogpost de Dawid Golunski, en attendant une prochaine correction des équipes WordPress.
Community managers : découvrez les résultats de notre enquête 2025
Réseaux, missions, salaire... Un webinar pour tout savoir sur les CM, lundi 29 septembre à 11h !
Je m'inscris
Pour ceux qui ont un hébergement de type vps ou dédier il faut aller dans /etc/apache2 et éditer le fichier apache2.conf et ajouter UseCanonicalName On.
Commandes pour la plus part des cas :
– cd /etc/apache2
– nano apache2.conf
– Mettre « UseCanonicalName On » dans le fichier.
– Ctrl + X et Yes pour quitter et sauvegarder.