Article original : Metasploit for Beginners — A Guide to the Powerful Exploitation Framework

Si vous commencez votre voyage dans les tests d'intrusion, vous avez probablement entendu parler de Metasploit.

Metasploit est l'un des outils les plus polyvalents en cybersécurité. Il aide à simplifier les tests de vulnérabilité et l'exploitation.

Metasploit nous aide à trouver et à corriger les faiblesses avant que des acteurs malveillants ne les exploitent. Dans ce tutoriel, vous apprendrez ce qu'est Metasploit, pourquoi il est utile et comment l'utiliser.

Qu'est-ce que Metasploit ?

Metasploit est un framework open-source pour les tests d'intrusion.

Vous pouvez l'utiliser pour trouver des vulnérabilités, les exploiter et obtenir un accès à la cible.

Metasploit fournit une collection d'exploits, de charges utiles et d'outils d'aide. Il est souvent appelé le "couteau suisse" pour les testeurs d'intrusion.

Au lieu d'écrire vos propres scripts pour exploiter les vulnérabilités, Metasploit vous donne des modules pré-construits pour automatiser une grande partie de votre travail.

Un module est un morceau de code qui effectue une action. Ces actions peuvent inclure le balayage, l'exploitation ou tout ce qui aide à simplifier un test d'intrusion.

Pourquoi Metasploit est-il utile pour les testeurs d'intrusion ?

Les testeurs d'intrusion tentent d'attaquer des réseaux, des applications et des systèmes pour vérifier leur sécurité. Metasploit aide à rendre ce travail plus facile de plusieurs manières.

Tout d'abord, il simplifie l'exploitation. Metasploit dispose d'une grande bibliothèque d'exploits qui nous permet d'attaquer rapidement les faiblesses connues dans les logiciels et les systèmes.

Ensuite, il aide à la reconnaissance et au balayage. Les outils de balayage de Metasploit recueillent des informations sur une cible, telles que les ports ouverts, les services en cours d'exécution et les vulnérabilités probables.

Après avoir pénétré, Metasploit fournit des fonctionnalités post-exploitation. Des outils comme Meterpreter permettent aux testeurs d'intrusion de maintenir l'accès, de collecter des données et de tester davantage les défenses.

Metasploit est également très flexible. Nous pouvons construire ou modifier des modules pour répondre à nos besoins spécifiques.

En bref, Metasploit nous permet de réaliser des tests de sécurité complets, de la recherche de vulnérabilités à leur exploitation.

Que sont les modules auxiliaires de Metasploit ?

Les modules auxiliaires sont des outils d'aide dans Metasploit qui effectuent des tâches autres que l'exploitation.

Ils sont utilisés pour la reconnaissance, le balayage, le forçage brutal et plus encore. Ces modules flexibles peuvent vous aider à recueillir des informations précieuses sur une cible.

Par exemple, un module auxiliaire peut balayer un réseau à la recherche de ports ouverts, vérifier les services vulnérables ou tenter une connexion par force brute sur une application.

Voici une liste d'exemples de modules auxiliaires de Metasploit :

Modules auxiliaires de Metasploit

Vous pouvez voir que Metasploit dispose d'une gamme de modules auxiliaires, des scanners aux modules de force brute, qui aident à révéler et à exploiter les failles de sécurité.

Que sont les exploits de Metasploit ?

Les exploits sont des scripts ou des programmes qui tirent parti des vulnérabilités dans les systèmes.

Ils aident un attaquant à obtenir un accès ou à effectuer des activités malveillantes. La bibliothèque de Metasploit comprend des centaines d'exploits, couvrant une large gamme de plateformes et de services.

Par exemple, si un système cible exécute une version obsolète de Samba, Metasploit peut avoir un exploit spécialement conçu pour exploiter cette vulnérabilité.

Que sont les charges utiles de Metasploit ?

Les charges utiles sont des scripts qui s'exécutent sur le système cible après qu'un exploit a été exécuté avec succès.

Ils déterminent ce qui se passe ensuite — que vous ouvriez un shell inverse, ajoutiez une porte dérobée ou effectuiez une autre tâche post-exploitation.

Il existe deux principaux types de charges utiles :

  1. Charges utiles uniques : Elles effectuent une seule tâche, comme la création d'un compte utilisateur sur la cible.

  2. Charges utiles étagées : Elles téléchargent une charge utile plus grande par étapes, permettant des actions plus complexes.

L'une des charges utiles les plus couramment utilisées est windows/meterpreter/reverse_tcp, qui vous donne un shell de commande sur le système cible.

Les testeurs d'intrusion et les experts en sécurité utilisent des exploits pour découvrir les points faibles des réseaux et des systèmes. En testant ces failles de manière contrôlée, ils peuvent trouver des défauts avant que les attaquants ne le fassent. Une fois trouvées, ces failles sont corrigées ou patchées pour prévenir les dommages. Cette approche aide à protéger les données et maintient les systèmes plus sécurisés.

Qu'est-ce que Metasploit Meterpreter ?

Meterpreter est une charge utile avancée et interactive dans Metasploit. Il vous permet d'interagir avec le système cible après l'avoir exploité.

Meterpreter est chargé directement dans la mémoire de la cible, ce qui le rend plus furtif que les charges utiles traditionnelles.

En utilisant Meterpreter, vous pouvez recueillir des détails sur le système d'exploitation, transférer des fichiers entre l'attaquant et la cible, et même exécuter des commandes directement sur la machine cible.

Vous pouvez également configurer une porte dérobée persistante pour maintenir l'accès même après un redémarrage du système.

Meterpreter est un outil puissant pour les activités post-exploitation, vous donnant un contrôle complet sur le système compromis.

Comment travailler avec msfconsole

Obtenons une expérience pratique avec Metasploit.

msfconsole est l'interface en ligne de commande (CLI) pour Metasploit. C'est le moyen principal d'interagir avec le framework.

Metasploit est préinstallé dans Kali Linux. Si vous utilisez Kali Linux, vous pouvez trouver les instructions d'installation ici.

Après avoir installé Metasploit, lancez la console en tapant :

msfconsole

Une fois chargé, vous verrez une invite comme celle-ci

msfconsole

C'est ici que vous taperez des commandes pour interagir avec Metasploit. Essayons quelques commandes de base pour vous aider à démarrer.

Commandes Metasploit

  1. help : Si vous n'êtes pas sûr de ce qu'il faut faire, commencez par taper help. Cela affiche une liste des commandes disponibles ainsi que de brèves descriptions. Par exemple :

commande d'aide de Metasploit

  1. search : La commande de recherche nous aide à trouver des modules spécifiques, tels que des exploits ou des auxiliaires (modules d'aide). Par exemple, si vous cherchez des modules liés au balayage, vous taperiez :
msf6 > search scanner

Recherche Metasploit

Metasploit affichera tous les modules qui correspondent au mot-clé scanner.

  1. info : Vous pouvez utiliser la commande info pour en savoir plus sur un module, y compris ses options et son fonctionnement. Par exemple :
msf6 > info auxiliary/scanner/portscan/tcp

Sortie de la commande info de Metasploit

  1. use : Pour utiliser un exploit ou un auxiliaire, nous pouvons simplement taper use avec le nom du module. Utilisons le module de balayage auxiliary/scanner/portscan/tcp qui balayera les ports TCP ouverts sur un serveur.
msf6> use auxiliary/scanner/portscan/tcp
  1. options : Une fois que vous avez chargé un module avec la commande use, vous pouvez voir la liste des options en utilisant la commande options. Elle vous donnera la liste des options que vous pouvez définir pour ce module.

Commande options de Metasploit

Par exemple, le paramètre RHOSTS est utilisé pour définir l'adresse IP de la cible pour le balayage. scanme.nmap.org nous permet d'exécuter des balayages de ports sur ce serveur, alors utilisons-le pour exécuter un balayage.

Obtenons l'adresse IP du serveur. Nous allons émettre une simple commande ping pour obtenir l'adresse IP du serveur.

Commande ping

Nous pouvons voir que l'adresse IP du serveur est 45.33.32.156 (elle peut changer lorsque vous exécutez la commande ping). Maintenant, utilisons cette IP comme entrée pour le paramètre RHOSTS. Nous allons utiliser la commande set pour définir l'adresse IP.

msf6 auxiliary(scanner/portscan/tcp)> set RHOSTS 45.33.32.156
  1. run : Pour exécuter un module, nous utilisons la commande run. Maintenant que nous avons défini l'adresse IP de la cible, exécutons le module pour voir si des ports sont ouverts.

Balayage de ports Metasploit

Comme vous pouvez le voir, nous avons trouvé 3 ports — 22, 80 et 9929. Des outils comme Nmap sont meilleurs pour le balayage de ports en profondeur, mais Metasploit offre des modules pour presque tous les segments d'un audit de cybersécurité.

  1. exit : Lorsque vous avez terminé d'utiliser Metasploit, tapez simplement exit pour quitter la console.

La msfconsole est conviviale une fois que vous avez compris ces commandes de base. Prenez votre temps pour explorer et expérimenter avec l'aide de la commande help.

Conclusion

Metasploit est l'un des outils les plus puissants dans la boîte à outils d'un testeur d'intrusion.

À mesure que vous vous familiarisez avec Metasploit, vous débloquerez tout son potentiel et obtiendrez des informations plus approfondies sur la manière dont les attaquants exploitent les systèmes — et comment vous pouvez vous défendre contre eux. Continuez à apprendre, restez curieux et utilisez toujours Metasploit de manière responsable !

Rejoignez notre Newsletter Hebdomadaire pour plus de tutoriels sur le Hacking Éthique. Pour des tutoriels vidéo sur la cybersécurité, consultez notre Chaîne YouTube.