Metsploit est un outil pour le développement et l’exécution d’exploits contre une machine distante, il permet de réaliser des audits en sécurité, de tester et développer ses propres exploits. Créé à l’origine en langage de programmation Perl, Metasploit Framework a été complètement réécrit en langage Ruby.
Il est utilisé souvent par les administrateurs systèmes pour tester les vulnérabilités des systèmes informatiques afin de les protéger, ou par les hackers à des fins de piratage.
Dans cet article, nous allons voir comment fonctionne le Framework Metasploit, puis nous verrons comment l’installer et bien l’utiliser. Pour information, Metasploit est pré-installer sur la distribution Linux Backtrack.
Installer Metasploit sous Linux
Première méthode :
- Pour installer Measploit sur une distribution à base de Debian, ouvrez un terminal en root et tapez la commande suivante :
sudo apt-get install build-essential subversion ruby libruby irb rdoc libyaml-ruby libzlib-ruby libopenssl-ruby libdl-ruby libreadline-ruby libiconv-ruby rubygems sqlite3 libsqlite3-ruby libsqlite3-dev
- Pour installer Metasploit sur une distribution à base de RPM, lancez la commande suivante :
yum install subversion ruby ruby-libs ruby-devel ruby-irb ruby-rdoc readline rubygems ruby-sqlite3
Maintenant, il reste à installer Metasploit depuis la version SVN, pour cela tapez cette commande :
La commande svn up, lancée depuis le répertoire d’installation, permettra de maintenir Metasploit à jour facilement.
Deuxième méthode :
Allez sur http://www.metasploit.com/framework/download/
Télécharger « framework-3.4.0-linux-***.run »
Allez sur http://www.metasploit.com/framework/download/
Télécharger « framework-3.4.0-linux-***.run »
- Donner les droits d’exécution
- Lancer l’installation dans un terminal
- Metasploit est maintenant installé sur votre machine.
Installer Metasploit sous Windows
Le Framework Metasploit est entièrement disponible sur la plate-forme Windows. Pour l’installer, il suffit de télécharger la dernière version à partir du lien suivant :http://metasploit.com/framework/download, puis lancez l’exécutable,
ensuite cliquez sur le traditionnel « suivant » jusqu’à obtenir le bouton »Finish ».
ensuite cliquez sur le traditionnel « suivant » jusqu’à obtenir le bouton »Finish ».
Une fois terminé, vous pouvez accéder à l’interface msfconsole standard, à partir du menu Démarrer.
Pour faire une mis à jour sous Windows, il faut simplement lancer la console Metasploit et cliquer sur le menu File -> New Tab -> Développement – Metasploit Update.
Qu’est ce qu’on peut faire avec Metasploit
Le Framework permet de faire énormément de chose comme :
- Le scan et collecte l’ensemble d’informations sur une machine
- Repérage et l’exploitation des vulnérabilités
- Escalade de privilèges et vol de données
- Installation d’une porte dérobée
- Fuzzing
- Echapper à l’antivirus
- Suppression des logs et des traces
Architecture du Framework Metasploit
Le Framework est structuré de la manière suivante :
A première vu de l’image, on constate que l’architecture est modulaire et qu’il fonctionne sous diverses interfaces (Graphique, WEB, CLI et Console).
Dans la suite de l’article, nous allons utiliser l’interface console, c’est l’interface la plus adaptée à l’utilisation complète du MSF(metasploit Framework).
L’avantage majeur du Framework : c’est cette modularité qui permet de combiner n’importe quel exploit avec n’importe quel payload. Il facilite la tâche de l’attaquant, des développeurs d’exploits, et des développeurs de payloads.
Module Exploit
C’est des scripts ruby qui nous permettent d’exploiter une vulnérabilité sur une machine distante. On peut dire que l’exploit nous donne la possibilité de se connecter à une machine vulnérable.
Module Payload
C’est le code exécuté après s’être introduit dans la machine cible, il nous permet de contrôler la machine d’une victime. Comme par exemple : l’ouverture d’un port sur la machine relié à un shell ou encore l’ouverture d’une session VNC.
C’est le code exécuté après s’être introduit dans la machine cible, il nous permet de contrôler la machine d’une victime. Comme par exemple : l’ouverture d’un port sur la machine relié à un shell ou encore l’ouverture d’une session VNC.
Modules Axillaires
C’est des modules utilisés pour diverses taches comme le scan de port, sniffing, scan de services.
Une fois l’exploit et le Payload sont exécutés sur une machine vulnérable, on peut faire ce qu’on veut sur le système comme télécharger les données de la cible, mise en place d’un malware, capture d’ecran, etc.
C’est des modules utilisés pour diverses taches comme le scan de port, sniffing, scan de services.
Une fois l’exploit et le Payload sont exécutés sur une machine vulnérable, on peut faire ce qu’on veut sur le système comme télécharger les données de la cible, mise en place d’un malware, capture d’ecran, etc.
Comment utiliser Metasploit ?
On passe maintenant à la partie la plus intéressant, c’est l’utilisation de Metasploit.
Voici les étapes basiques pour l’exploitation d’un système avec Metasploit:
- Collecter des informations sur la cible tel que la version du système d’exploitation, et les services réseaux installés. Ces informations peuvent être récupérées grâce à des outils de scan de port et de Footprinting comme Nmap, Maltego et Nessus;
- Choisir et configurer un exploit;
- Vérifier si le système cible visée est sensible à l’exploit choisi;
- Choisir et configurer un payload ;
- Exécuter l’exploit.
Pour l’instant nous allons commencer par quelques commandes de base.
Coté Exploit
- Comment afficher tous les exploits disponibles sur Metasploit : Show exploits
- Pour chercher un exploit : Search nom_exploit
- Pour sélectionner un exploit : Use nom_exploit
- Avoir des informations sur un exploit : Info nom_exploit
- Voir les options d’un exploit : Show options
Coté Payload
- Afficher tous les payloads disponibles sur Metasploit : Show payload
- Choisir le payload que l’on va utiliser : set PAYLOAD nom_payload
- Voir les options du payload pour une configuration : Show options
En général
- Pour obtenir de l’aide : help
- Si vous voulez connaître la version de Metasploit : version
- Si l’on veut lister l’intégralité des exploits, modules, playloads : search
- Pour quitter Metasploit : quit
Exemple d’utilisation
Nous allons maintenant passer à la pratique et exploiter une faille dans un des logiciels de la société Adobe.
C’est une vulnérabilité qui concerne Adobe Reader v9.0.0 (Windows XP SP3) et Adobe Reader v8.1.2 (Windows XP SP2). L’ouverture d’un fichier pdf avec ces versions provoque un « Buffer overflow » et permet ainsi à une personne malveillante de prendre le contrôle d’une machine à distance.
Pour réaliser ce test, tout d’abord, télécharger la version 9.0.0 d’Adobe Reader. Le module exploit permettant de reproduire cette faille est connu sous le nom de « adobe_jbig2decode« . Voici comment l’exploiter :
Lancer msfconsole. Au bout de quelques secondes vous voyez apparaître une console. Maintenant Tapez les commandes suivante:
Ici, on charge le payload « reverse_tcp ». Ce bout de shellcode sera exécuté sur la machine cible une fois la vulnérabilité exploitée. Une connexion de type TCP inversée sera alors initialisée et vous permettra d’ouvrir une session distante (même à travers un firewall).
Remarque :
L’adresse IP 192.168.230.128, c’est l’adresse de ma machine virtuel Backtrack, en fait c’est l’adresse du serveur qui contiendra le fichier PDF infecté .
Le module est correctement configuré, on peut lancer l’attaque avec la commande suivante :
Un serveur web temporaire est alors démarré avec l’adresse IP suivante : http://192.168.230.128, il reste maintenant d’envoyer cette adresse à une victime en utilisant l’ingénierie sociale. Lorsque la vicitme cliquera sur le lien, un fichier PDF malveillant sera alors proposé au téléchargement. Si la personne accepte son ouverture avec Adobe Reader,Metasploit vous indiquera quelque chose comme ceci :
Il faut savoir que l’adresse IP 192.168.230.1 c’est l’adresse de la victime.
Il ne nous reste plus qu’à ouvrir une session Meterpreter à distance sur l’ordinateur de la victime :
Nous avons désormais le contrôle total de l’ordinateur du victime. Nous pouvons faire ce que nous voulons sur sa machine. Par exemple : Nous pouvons faire des captures d’écran à distance en utilisant l’extension Espia de Meterpreter :
Ou démarrer un keylogger afin de capturer tout ce qui est saisi au clavier :
Ou sniffer le réseau de la victime :
Ou encore ouvrir une boîte de dialogue MS-DOS :
Quelques Astuces Meterpreter
« run enum_firefox » permet de récupérer toues les informations liées à Firefox (cookies, historique, mot de passe enregistré)
« run get_application_list » pour connaitre les applications installées sur le poste de la victime.
« run killav » : Désactive l’antivirus.
“run kitrap0cd” : Automatise l’élévation de privilège
Il en existe une centaine qui peuvent s’avérer très utiles…
Bien entendu, la méthode décrite ci-dessous peut-être utilisée pour d’autres failles touchant des différentes logiciels. Il est possible de lister l’ensemble des exploits connus avec la commande suivante : Show exploits
Bien entendu, la méthode décrite ci-dessous peut-être utilisée pour d’autres failles touchant des différentes logiciels. Il est possible de lister l’ensemble des exploits connus avec la commande suivante : Show exploits
Vous pouvez faire un autre test avec une vulnérabilité plus récente, c’est la faille Zero Day sur Internet Explorer.
Conclusion
Il faut savoir que l’utilisation de Metasploit ne se limite pas à la faille d’abobe ou à la faille d’internet explorer. Des centaines d’exploits sont également disponibles et permettront d’attaquer tout type de machines. Bref, Metasploit est un outil puissant qui n’a pas fini de faire parler de lui. Je pense qu’en lisant ce tutoriel, vous avez pu utiliser les commandes de base de ce Framework .
Si vous avez des ajouts pour rendre cette page une base de donnée concernant Metasploit, n’hésitez pas à poster votre commentaire !
A bientôt !
Pour plus de nouveautés, merci de vous abonner à la newsletter du blog ou à son flux RSS. N’hésitez pas aussi à faire un tour sur Twitter, Google+ ou encore Facebook pour d’autres news.
0 commentaires:
Enregistrer un commentaire