Détection de version avec Nmap
Dans cette étape, nous allons apprendre les capacités de détection de version de Nmap. Avant de commencer, comprenons pourquoi cela est important. La détection de système d'exploitation nous aide à déterminer quel système d'exploitation une cible utilise. Cependant, la détection de version se concentre sur la découverte des versions spécifiques des services qui s'exécutent sur les ports ouverts. Cela est crucial car de nombreuses vulnérabilités logicicielles sont liées à des versions spécifiques. En connaissant les versions exactes des services, nous pouvons identifier plus précisément les risques de sécurité potentiels.
Comprendre la détection de version
La détection de version, également connue sous le nom de détection de service, tente de répondre à plusieurs questions clés. Premièrement, elle vise à déterminer quelle application s'exécute sur un port ouvert. Deuxièmement, elle essaie de découvrir la version spécifique de cette application. Parfois, elle peut même révéler des niveaux de correctifs ou d'autres détails supplémentaires. Cette information est extrêmement précieuse car de nombreuses vulnérabilités de sécurité sont spécifiques à certaines versions de logiciels. Si nous savons exactement quelles versions de logiciels s'exécutent sur une cible, nous pouvons rapidement identifier les problèmes de sécurité potentiels.
Effectuer une détection de version
Maintenant, exécutons un scan de détection de version sur notre serveur local. Nous allons utiliser la commande suivante :
sudo nmap -sV localhost -p 4444 > scan_results/version_scan.txt
Décortiquons cette commande. L'option -sV
active la détection de version. Cela indique à Nmap d'essayer de déterminer les versions des services s'exécutant sur les ports cibles. localhost
est notre cible, ce qui signifie que nous sommes en train de scanner notre propre machine locale. L'option -p 4444
spécifie que nous ne scannons que le port 4444. Le symbole >
redirige la sortie du scan vers un fichier nommé version_scan.txt
dans le répertoire scan_results
. De cette manière, nous pouvons examiner les résultats plus tard.
Analyser les résultats de la détection de version
Après avoir exécuté le scan, examinons les résultats. Nous allons utiliser la commande cat
pour afficher le contenu du fichier :
cat scan_results/version_scan.txt
Vous devriez voir une sortie similaire à ceci :
Starting Nmap 7.80 ( https://nmap.org ) at 2023-09-10 12:00 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000024s latency).
PORT STATE SERVICE VERSION
4444/tcp open netcat?
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 6.29 seconds
Remarquez que Nmap essaie d'identifier quel service s'exécute sur le port 4444. Dans ce cas, nous utilisons netcat, qui ne fournit pas d'informations spécifiques sur la version. C'est pourquoi Nmap affiche "netcat?" avec un point d'interrogation, indiquant qu'il n'est pas sûr du service exact et de sa version.
Ajuster l'intensité de la détection de version
Nmap vous permet de contrôler l'intensité du processus de détection de version. Vous pouvez utiliser l'option --version-intensity
pour cela. Le niveau d'intensité va de 0 (le scan le plus léger) à 9 (le scan le plus agressif). Exécutons un scan plus intensif :
sudo nmap -sV --version-intensity 7 localhost -p 4444 > scan_results/intensive_version_scan.txt
Un scan plus intensif comme celui - ci enverra plus de sondes à la cible. Il essaiera plus fort d'identifier le service s'exécutant sur le port. Cependant, cela prendra également plus de temps. Mais l'avantage est qu'il pourrait vous donner des résultats plus détaillés.
Vérifions les résultats de ce scan intensif :
cat scan_results/intensive_version_scan.txt
Combiner la détection de version et la détection de système d'exploitation
Dans les situations réelles, vous aurez souvent besoin à la fois des informations sur le système d'exploitation et sur la version d'une cible. Combinons ces deux techniques de scan en utilisant la commande suivante :
sudo nmap -sV -O localhost -p 4444 > scan_results/combined_scan.txt
L'option -sV
active la détection de version, et l'option -O
active la détection de système d'exploitation. Cette approche combinée vous donne des informations complètes à la fois sur le système d'exploitation et sur les services s'exécutant sur la cible.
Vérifions les résultats de ce scan combiné :
cat scan_results/combined_scan.txt
La sortie contient maintenant à la fois des informations sur le système d'exploitation et sur la version du service. Cela fournit une image plus complète du système cible, ce qui est essentiel pour une évaluation de sécurité approfondie.
Comprendre à la fois le système d'exploitation et les versions spécifiques des services s'exécutant sur une cible est crucial pour une analyse de sécurité efficace. Dans l'étape suivante, nous explorerons comment utiliser ces techniques dans des scénarios pratiques.