bullseye-arrowTargets

Dans Metasploit, les cibles (targets) représentent des identifiants uniques liés aux systèmes d’exploitation vulnérables. Chaque cible correspond à une version spécifique d’un OS ou d’un logiciel, permettant d’adapter le module d’exploitation choisi pour qu’il fonctionne correctement sur cette version particulière.

La commande show targets, utilisée au sein d’un module d’exploitation, affiche toutes les cibles vulnérables disponibles pour cet exploit. Si elle est utilisée depuis le menu principal (sans module sélectionné), Metasploit retournera un message demandant de sélectionner d’abord un exploit.


🔎 Affichage des cibles disponibles

Exemple 1 : sans exploit sélectionné

msf6 > show targets

[-] No exploit module selected.

Exemple 2 : avec un exploit sélectionné

msf6 exploit(windows/smb/ms17_010_psexec) > show targets

Exploit target:

   Id  Name
   --  ----
   0   Automatic

Dans ce cas, une seule cible est proposée : l’option Automatique.


⚙️ Sélection d’une cible

Certains exploits ne nécessitent qu’une cible générique (Automatic), tandis que d’autres disposent de plusieurs cibles précises correspondant à des combinaisons OS/version/navigateur.

Exemple : Exploit MS12-063 (Internet Explorer)

Ici, plusieurs versions précises d’Internet Explorer et de Windows sont disponibles.

👉 Par défaut, Automatic tentera de détecter la version cible avant exploitation.

👉 Si la version exacte est connue, on peut définir manuellement la cible :

Dans cet exemple, la cible sélectionnée correspond à IE 9 sur Windows 7.


🛠️ Types de cibles et paramètres

Chaque cible peut différer par :

  • Service Pack (SP)

  • Version de l’OS

  • Langue du système

Ces variations influencent directement le choix de l’adresse de retour utilisée dans l’exploitation.

📍 Variations possibles :

  • Un pack linguistique peut modifier certaines adresses mémoire.

  • Une version logicielle différente peut décaler ou changer les adresses.

  • Des mécanismes comme des hooks peuvent influer sur l’emplacement mémoire.

Le retour utilisé peut être :

  • jmp esp

  • Un saut vers un registre spécifique

  • Une séquence pop/pop/ret


🧩 Identification correcte d’une cible

Pour identifier précisément une cible, il est nécessaire de :

  1. Obtenir une copie des binaires de la cible (logiciel ou librairies vulnérables).

  2. Utiliser msfpescan pour localiser une adresse de retour adéquate.

  3. Vérifier la correspondance avec les paramètres définis dans le module d’exploitation.


📖Bonnes pratiques

  • Utiliser la commande info pour en savoir plus sur le module et la vulnérabilité associée.

  • Toujours auditer le code d’un module avant de l’utiliser afin de vérifier l’absence de comportements indésirables.

  • Privilégier l’option Automatic quand la version exacte n’est pas connue.


📚 Ressources utiles


Last updated