Introduction : aller plus loin que les ports ouverts :
Après avoir appris à identifier les ports ouverts, comprendre les différents types de scans Nmap et détecter le système d’exploitation d’une cible, il est temps d’aborder l’une des étapes les plus importantes de l’analyse réseau : la découverte des versions des logiciels qui fonctionnent sur ces ports ouverts.
Cette étape est essentielle, car elle constitue un lien direct entre le scan réseau et l’identification de vulnérabilités potentielles.
Pourquoi la découverte des versions est-elle si importante ?
Savoir qu’un port est ouvert ne suffit pas toujours.
Par exemple, découvrir qu’un serveur utilise Apache sur le port 80 est une information utile, mais encore trop générale. Ce type de service peut exister sous des dizaines de versions différentes, chacune ayant ses propres failles de sécurité.
En identifiant la version exacte d’un service (par exemple Apache 2.2.8), nous pouvons :
- Rechercher des vulnérabilités connues pour cette version précise
- Vérifier si des correctifs (patchs) existent
- Tester si ces vulnérabilités sont exploitables sur la cible
La découverte des versions est donc une étape clé dans tout audit ou test de sécurité.
Principe de la découverte de versions avec Nmap
Nmap dispose d’une option spécifique pour identifier les versions des services : -sV (Service Version).
Cette option permet à Nmap d’effectuer une analyse plus approfondie des services détectés afin d’identifier :
- Le nom exact du logiciel
- Sa version
- Parfois même le système ou la distribution utilisée
Cette analyse est plus longue que les scans classiques, car Nmap interagit davantage avec chaque service.
Exécution d’un scan de versions
Pour effectuer une découverte de versions, nous ouvrons le terminal et utilisons la commande suivante :
- L’option
-sVpour la détection des versions - L’adresse IP de la machine cible (par exemple : 192.168.1.4)
- Des privilèges administrateur avec
sudo, car ce scan en a besoin
Ce type de scan peut prendre plus de temps, car il analyse les services en profondeur. Il est donc normal de voir une progression (par exemple 82 %) avant la fin du scan.
Analyse des résultats du scan :
Une fois le scan terminé, nous remarquons une nouvelle colonne : Version.
Contrairement aux scans précédents qui affichaient seulement :
- Le numéro du port
- L’état (open)
- Le service
Nous obtenons maintenant des informations bien plus précises.
Exemples de résultats courants
- Port 21 (FTP) : identification exacte du logiciel FTP utilisé
- Port 22 (SSH) : OpenSSH version 4.6 sous Debian
- Port 80 (HTTP) : Apache version 2.2.8
- Ports 139 et 445 (SMB) : Samba version comprise entre 3.x et 4.x
Ces informations sont extrêmement précieuses pour la suite de l’analyse.
Exploitation des informations de version
Une fois les versions identifiées, l’étape suivante consiste à :
- Copier le nom du service et sa version
- Rechercher sur Internet les vulnérabilités connues associées
- Tester ces vulnérabilités sur la cible (dans un cadre légal et autorisé)
Il est important de noter que certaines failles peuvent avoir été corrigées, donc tous les résultats doivent être vérifiés.
Ajuster l’intensité de la détection de versions
Nmap permet également de régler l’intensité de la détection de versions grâce à l’option :

Points clés à retenir
- L’intensité peut aller de 0 à 9
- La valeur par défaut est 7
- Une intensité plus élevée augmente la précision
- Une intensité élevée prend plus de temps
Dans 99 % des cas, la valeur par défaut est largement suffisante. Augmenter l’intensité est surtout utile lorsque les résultats sont imprécis ou incomplets.
Trouver le bon équilibre entre précision et rapidité
Lors d’un scan, il est important de trouver un compromis entre :
- La précision des informations obtenues
- Le temps nécessaire pour effectuer le scan
Sur un réseau local, un scan intensif reste relativement rapide. En revanche, sur une cible réelle distante, un scan trop agressif peut prendre beaucoup de temps et être plus facilement détecté.
L’option agressive -A : tout-en-un
Nmap propose également l’option -A, appelée option agressive.
Cette option active automatiquement :
- La détection du système d’exploitation
- La découverte des versions
- Le scan de scripts Nmap (NSE)
C’est une option très puissante, mais aussi très intrusive. Elle ne doit être utilisée que sur des cibles que vous êtes autorisé à scanner.
Sur une machine de test comme Metasploitable (192.168.1.4), cette option permet d’obtenir une grande quantité d’informations en une seule commande, au prix d’un temps de scan plus long.
La découverte des versions avec Nmap est une étape essentielle pour passer d’un simple scan réseau à une analyse de sécurité approfondie.
Elle permet d’identifier précisément les services en cours d’exécution, de rechercher des vulnérabilités connues et de préparer les étapes suivantes d’un audit.
Dans la suite, nous verrons comment exploiter davantage Nmap, notamment pour contourner certains pare-feu et approfondir encore l’analyse des cibles.
🔹 Exemple 1 : Découverte simple des versions de services

Cette commande permet d’identifier les versions exactes des services qui fonctionnent sur les ports ouverts de la cible.
C’est l’option la plus utilisée pour la découverte de versions et elle offre un bon équilibre entre précision et rapidité.
🔹 Exemple 2 : Découverte des versions avec intensité élevée

Ici, l’intensité de la détection des versions est réglée au niveau maximal (9).
Cela augmente les chances d’identifier précisément un service, mais le scan sera plus lent.
Utile lorsque les résultats standards ne sont pas assez détaillés.
🔹 Exemple 3 : Scan agressif (OS + versions + scripts)

Cette commande active plusieurs fonctionnalités avancées :
- Détection du système d’exploitation
- Découverte des versions des services
- Exécution de scripts Nmap (NSE)
À utiliser uniquement sur des cibles autorisées, car ce scan est très intrusif.
