Metasploit est un cadriciel (framework) modulaire développé pour faciliter la pénétration de systèmes.  Il est très puissant et permet de lancer des exploits sur la machine cible dans le but de la compromettre et d’obtenir un accès.

Metasploit possède plus de 1000 modules d’exploitation (code pour exploiter les vulnérabilités) et plus de 300 paylods (code à exécuter suite à l’exploitation d’une vulnérabilité). D’autres modules sont aussi disponibles : auxiliaires, post, encodeurs (éviter la détection par les antivirus) et NOPs.

Ces modules peuvent être des scripts Ruby, Perl, Python, Php ou du code source C et C++ (devra être modifié et compilé avec gcc avant l’exécution).

logo de metasploit

Lancer la console Metasploit

Lancez msfconsole et vérifiez que la page d’accueil s’affiche. Vous y trouverez des statistiques sur les exploits disponibles.

$ service postgresql start

$ msfdb init

$ msfconsole

Maintenant que nous avons la confirmation que Metasploit est fonctionnel, trouvons une cible à attaquer.

Metasploitable2 - Linux

Metasploitable2 est une machine virtuelle bourrée de failles, une cible idéale pour les débutants. Elle permet de mettre votre expertise du cadriciel Metasploit à l’épreuve.
Télécharger et configurer la VM :

Une fois lancée, vérifiez que les deux machines sont sur le même réseau.

$ ifconfig
$ ping

Accès pour Metasploitable2

Voici le nom d'utilisateur et le mot de passe pour la machine virtuelle Metasploitable2 :

  • Utilisateur : msfadmin
  • Mot de passe : msfadmin

Problème de lancement de Metasploitable2

Bad CPU solution

Settings > System > Processor et cocher  Enable PAE/NX.

Metasploitable3 - Windows 2008

Metasploitable3 est une machine virtuelle basée sur Windows Serveur 2008. Contrairement à Metasploitable2, la procédure est plus complexe (Packer, Vagrant et VirtualBox). Voici le lien GitHub avec toute la documentation nécessaire :

Reconnaissance active avec nmap

À partir de Kali, lancez nmap sur la machine Metasploitable2

$ namp -sV [ip-metasploitable]

-sV : Analyse les ports ouverts et tente de déterminer le nom du service ainsi que sa version.

Exploitation d’une faille avec Metasploit

Rechercher une faille

Parmi les services ouverts identifiés à l’étape précédente, lancez la commande search afin d’identifier des exploits possibles.

$ msf> search  [mot-clé]

Afficher l’information d’une faille

Affiche de l’info supplémentaire sur l’exploit. Il est recommandé de tenter sa chance avec l’exploit ayant le plus haut rang (rank). La section des options vous permettra de voir les variables (ex : RHOST, RPORT) qui devront être configurées (avec la commande SET) avant la phase d’exploitation.

$ msf> info [nom-exploit]

Activer et configurer un exploit

$ msf> use [nom-exploit]

Définir les valeurs de variables

$ msf exploit(nom_exploit)> SET RHOST [ip-metasploitable]
$ msf exploit(nom_exploit)> SET RPORT [port-metasploitable]

Lancer l’exploit

Finalement lancer l’exploit avec la commande exploit.

$ msf exploit(nom_exploit)> exploit

Si l’exploit est réalisé avec succès, vous pourriez obtenir un accès à la ligne de commande de la machine cible.

Exécutez les commandes suivantes :

$ whoami
$ hostname
$ uname -a
$ id
$ ifconfig

Exercice

  • Tenter d’exploiter la machine Metasploitable2 avec le module exploit/multi/samba/usermap_script.

Exercice

  1. Tenter d’exploiter la machine Metasploitable2 avec le module exploit/multi/samba/usermap_script.
  2. Tenter d'exploiter Metasploitable2 avec d'autres failles. Faire la liste des failles exploitables.

Liste de distribution

Restez informés! Techno, programmation, et cybersécurité.

Pour terminer en beauté, merci de partager!

Comments

comments