Détecter et corriger les vulnérabilités d’un site WordPress

wpscan detecter les vulnerabilites site wordpress 1
wpscan detecter les vulnerabilites site wordpress 1

WPScan est un scanner de vulnérabilité pour WordPress, écrit en ruby. Il est capable de trouver les vulnérabilités présentes sur un site web WordPress, de lister les plugins utilisés et de vous donner les failles de sécurités associées. Vous pouvez également faire de la brute force sur l'interface d'administration.

Il est destiné aussi bien aux professionnels de la sécurité qu’aux administrateurs des sites sous WordPress.

Les principales fonctionnalités de WPscan

  • Énumération des utilisateurs,
  • crackage des mots de passes par force brute multithreadé,
  • détection de la version de WordPress,
  • détection et énumération des plugins vulnérables.

Installation de WPscan

WPscan fonctionne seulement sous Linux, si vous avez un ordinateur sous Windows je vous conseille d’utiliser une machine virtuel faisant tourner Kali Linux . Il suffit de télécharger VMware et une image de Kali Linux. WPScan est déjà pré-installé dessus. Et voici comment installer Kali Linux sur une machine Windows avec VMware.

Sinon  pour l'installer sur une autre distribution, consultez cette page: https://github.com/wpscanteam/wpscan

 Comment utiliser WPscan ?

Apres l'installation nous allons passer aux choses sérieuses,  la partie  la plus intéressante ! 🙂

 Utilisation simple :

Pour connaitre la version du WordPress et le nom du thème utilisé, ouvrez un terminal en root et tapez:

# ruby ./wpscan.rb --url www.example.com

 

Lister les utilisateurs :

Pour  lister tous les utilisateurs qui ont accès au blog, en se basant sur l’auteur des articles.

# ruby wpscan.rb --url www.example.com --enumerate u

Lister les plugins vulnérables

Pour lister les plugins utilisés sur un site et afficher les failles de sécurité en relation, exécutez la commande suivante :

# ruby ./wpscan.rb --url www.example.com --enumerate p

 

Vous pouvez voir sur l’image que wpscan a détecter un plugin vulnérable (comment-rating) avec un lien vers la faille de type injection SQL,  cette faille on peut l’exploiter pour avoir le contrôle total de la base donné FunInformatique . Ne vous inquiétez pas je l'ai désactiver.

 Cracker le mot de passe de l’administrateur

Pour avoir le mot de passe de l’administrateur,  nous allons utiliser de la brute force sur l'interface d'administration.

Pour cela, nul doute que nous aurons besoin de ce qu’on appelle un dictionnaire. Dans le cas d’une attaque par bruteforce, le dictionnaire présent la liste des possibilités que le générateur va tenter d’utiliser pour s’introduire sur le système distant. En résumé il s’agit de la liste des mots de passes testés.

Sous Kali Linux, par défaut, une liste existe mais libre à vous d’ajouter d’autres mots. Le dictionnaire présent par défaut sous Kali Linux est situé sous :

/pentest/passwords/wordlists/darkc0de.lst

Si vous avez une distribution différente de Kali Linux, Vous pouvez télécharger le dictionnaire ici et là.
Bref voici la commande qui fait appel au dictionnaire afin d’avoir le mot de passe de l’administrateur wordpress :

# ruby ./wpscan.rb --url www.example.com --wordlist
/pentest/passwords/wordlists/darkc0de.lst --username admin

Protéger son site WordPress

Pour parer toutes ces techniques, vous devez supprimer le readme.html à la racine de WordPress, maintenir WordPress et les plugins à jour, et utiliser un mot de passe long comportant une multitude de caractères différents. On pourra également installer un plugin comme User Locker qui permet de limiter le nombre de tentatives d'authentification.