Commandes Nmap et données collectées avec la détection sans informations d'identification

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 8 minutes de lecture
  • Nmap s'exécute par phases lors de la collecte de données, et exécute un ensemble contrôlé de commandes sécurisées avec deux modèles pour explorer les applications et les appareils.

    Données renvoyées par Nmap à partir de la détection d'hôte

    Nmap renvoie les données suivantes pour un hôte dont il détermine qu'il est actif :
    • Famille de système d'exploitation : si la famille de système d'exploitation est l'une des six familles de système d'exploitation de serveur prises en charge, un CI hôte associé à la classe de serveur appropriée est utilisé pour créer ou mettre à jour le CI hôte. Si la famille de système d'exploitation renvoyée par Nmap n'est pas l'un des systèmes d'exploitation de serveur pris en charge, un CI hôte est créé ou mis à jour à l'aide de la classe Matériel de base [cmdb_ci_hardware].
    • Adresse MAC : si l'hôte analysé se trouve sur le même sous-réseau que l'hôte MID Server Windows qui exécute les commandes Nmap, Nmap renvoie l'adresse MAC de l'hôte distant.

    Commandes exécutées par Nmap pendant la détection d'hôte

    Le MID Server transmet l'adresse IP d'un hôte distant à la commande Nmap et à un ensemble de ports, extraits de la table Service IP. Nmap doit signaler que l'hôte est actif. L'hôte est actif si l'état du port renvoyé par Nmap est ouvert ou ouvert/filtré. Si l'hôte est signalé comme étant actif, la famille de système d'exploitation renvoyée est examinée pour déterminer la classe utilisée pour créer ou mettre à jour le CI hôte.
    Commande Description
    -PS L'option SYN TCP détermine si l'hôte est en ligne. Cette option envoie un paquet TCP vide et brut avec le marqueur SYN défini sur tous les ports spécifiés sur la liste d'analyse. Nmap signale que l'hôte est en ligne si un paquet TCP SYN/ACK est renvoyé et si un RST est renvoyé, indiquant que le port est fermé. La machine hôte Nmap désactive la connexion naissante avec un paquet RST au lieu d'un paquet ACK, puisque la réponse SYN/ACK est inattendue de son point de vue. Si plusieurs sondes de port sont spécifiées, elles sont envoyées en parallèle.
    Conditions requises :
    • Privilèges de paquet brut.
    • Doit s'exécuter en tant que racine sur UNIX.
    • Privilèges d'administrateur sur Windows.
    -PA Détecte les appareils de filtrage de paquets. Cette option est une détection d'hôte TCP ACK, qui utilise une liste spécifiée de ports. Si aucune liste n'est définie, le port par défaut 80 est utilisé.

    Nmap envoie un paquet TCP vide et brut avec le marqueur ACK défini. Cette action reconnaît les données sur une connexion TCP établie, ce qui entraîne la réponse de l'hôte distant avec un paquet RST. Si l'hôte distant répond avec un paquet RST, Nmap sait que l'hôte est en ligne. La sonde Ping ACK peut obtenir le filtrage des paquets SYN TCP par filtrage de paquets sans état, entités réseau (telles que les pare-feu), routeurs et tables d'acheminement d'hôtes/logiciels de pare-feu. Les pare-feu avec état suppriment les paquets inattendus, ce qui entraîne la suppression du paquet ACK et augmente la probabilité que la sonde TCP SYN aboutisse.

    Conditions requises :
    • Privilèges de paquet brut.
    • Doit s'exécuter en tant que racine sur UNIX.
    • Privilèges d'administrateur sur Windows.
    Remarque :
    les types de paquets Ping SYN (-PS) et Ping ACK (-PA) peuvent être configurés ensemble dans la même tentative d'analyse.
    -O Cette commande active la détection du système d'exploitation par rapport à un hôte distant indiquant le nom du fournisseur, le système d'exploitation sous-jacent, la génération du système d'exploitation et le type d'appareil, par exemple un routeur ou un commutateur.

    Nmap utilise l'empreinte digitale de la pile TCP/IP pour déterminer la famille de système d'exploitation en cours d'exécution sur l'hôte. Nmap envoie une série de paquets TCP et UPD à l'hôte et examine les réponses. Après avoir testé les réponses de manière approfondie, Nmap compare les résultats à sa base de données nmap-os-db et affiche les détails du système d'exploitation, si une correspondance est trouvée. Si Nmap n'est pas en mesure de deviner le système d'exploitation, et qu'au moins un port ouvert et un port fermé ont été trouvés, il génère une empreinte digitale et une URL à soumettre à nmap.org.

    La détection du système d'exploitation n'utilise pas de scripts du moteur NSE (Nmap Scripting Engine). La détection du système d'exploitation s'exécute après la détection de version de l'application/du service, ce qui contribue à la précision de la détection. Cependant, les résultats des deux types d'analyses peuvent être contradictoires. La détection du système d'exploitation s'exécute sur la couche de transport TCP, tandis que la détection de la version de l'application/du service s'exécute à un niveau supérieur dans la pile TCP.

    Conditions requises :
    • Privilèges de paquet brut.
    • Doit s'exécuter en tant que racine sur UNIX.
    • Privilèges d'administrateur sur Windows.
    -p Liste des ports à analyser.
    -T4 Modèle de minutage agressif Nmap.
    -v Activez les informations détaillées. Cette commande sert normalement à fournir des indications de progression aux visionneuses de sortie standard. Elle peut toutefois inciter les scripts NSE (NMAP Scripting Engine) à fournir des détails supplémentaires.
    -Pn Désactivez le ping par défaut. Cette commande ignore la phase d'analyse de détection de l'hôte Nmap initiale et traite tous les hôtes comme s'ils étaient en ligne. Utilisez cette commande si vous souhaitez effectuer une analyse de port, même si l'ensemble de ports exécutés par les sondes de détection par défaut ne trouvera aucun port ouvert.
    -r Analysez les ports de façon consécutive, sans randomisation.
    --reason Cette commande explique pourquoi Nmap a classifié un port avec un état spécifique.
    --system-dns Utilisez le résolveur DNS du système d'exploitation pour la recherche DNS inversée, plutôt que les serveurs de noms DNS. Cette option est plus lente que l'utilisation de serveurs DNS, car elle ne peut résoudre qu'une seule adresse IP à la fois, tandis que plusieurs demandes rDNS sont effectuées en parallèle. Toutefois, la valeur renvoyée correspond à la valeur renvoyée par le MID Server utilisé pour créer des CI hôtes.
    -X - Redirige stdout vers un fichier XML.
    2> <file-path> Redirige les messages d'erreur écrits par Nmap sur stderr vers le fichier spécifié.

    Données renvoyées par Nmap pendant la détection d'application

    Nmap renvoie les données d'application suivantes à partir d'un hôte dont il détermine qu'il est actif :
    • État du port :
      • ouvert : une application accepte activement les paquets TCP (ou UDP) sur le port.
      • ouvert|filtré : Nmap ne peut pas déterminer si le port est ouvert ou filtré. Un port ouvert ne peut pas renvoyer de réponse lors de l'utilisation des analyses UDP, protocole IP, FIN, NULL et Xmas de Nmap.
    • Nom du service : nom du service acceptant activement les paquets TCP (ou UDP) sur le port de service.
    • Produit de service : nom de l'application en cours d'exécution sur le port ouvert, tel qu'identifié par Nmap.
    • Informations supplémentaires sur le service : toutes les informations supplémentaires renvoyées par Nmap que Discovery peut utiliser pour identifier l'application.

    Commandes exécutées par Nmap pendant la détection d'application

    Le MID Server transmet une adresse IP pour un hôte distant à la commande Nmap et un port à analyser. Nmap tente d'identifier l'application qui écoute activement sur le port, puis détermine si elle doit créer un nouveau CI ou mettre à jour un CI existant. Nmap doit signaler que l'hôte est actif.

    Nmap utilise ces informations pour déterminer la procédure à suivre :
    • Produit de service
    • Nom de service
    • Informations supplémentaires sur le service
    • État du port analysé
      Remarque :
      Les valeurs de produit de service et de nom de service ne peuvent pas être nulles, et le nom de service ne peut pas se terminer par un point d'interrogation. Nmap ajoute un point d'interrogation à un nom de service lorsqu'il détermine l'application qui écoute sur le port analysé. L'instance ne crée ni ne met à jour un CI d'application si Nmap ne peut pas récupérer le nom de l'application à partir de son fichier de registre nmap-services statique.
    Commande Description
    -sS Analyse du port SYN TCP (furtif). Il s'agit de l'option d'analyse par défaut, qui ne termine jamais les connexions TCP. Les analyses peuvent différencier les ports ouverts, fermés ou filtrés.

    L'analyse SYN TCP procède à une réinitialisation à moitié ouverte qui annule la demande avant que la connexion puisse être établie. Le port est ouvert (l'application écoute) si un paquet SYN/ACK est renvoyé. Le port est fermé si un paquet RST est renvoyé. Si aucune réponse n'est reçue après plusieurs retransmissions, le port est marqué comme filtré. Le port est également marqué comme filtré lors de la réception d'une erreur d'inaccessibilité ICMP (type 3, code 1,2,3,9,10,13).

    Conditions requises :
    • Privilèges de paquet brut
    • Doit s'exécuter en tant que racine
    • Privilèges d'administrateur Windows
    -sV Les sondes ouvrent les ports pour déterminer le protocole de service, le nom d'application, le numéro de version, le nom d'hôte, le type d'appareil, la famille de système d'exploitation et diverses informations telles que la version du protocole SSH.
    Lorsque Nmap reçoit une réponse qu'il ne peut pas mettre en correspondance avec la base de données, il génère une empreinte digitale et une URL à soumettre à nmap.org. Il recherche le numéro de port dans son fichier de registre nmap-services statique pour déterminer le nom d'un service d'application susceptible d'écouter activement sur le port. Le nom de service renvoyé par Nmap est ajouté avec un point d'interrogation, indiquant que Nmap devait deviner son identité. L'instance ne crée ni ne met à jour un CI d'application lorsque Nmap devine l'application en cours d'exécution sur un port ouvert.
    Remarque :
    Cette commande ne nécessite pas de privilèges de paquet brut.
    --datadir Chemin d'accès au répertoire contenant l'ensemble sécurisé de scripts Nmap à exécuter pendant la détection de l'application/de la version.
    -p Port unique à analyser.
    -T4 Modèle de minutage agressif Nmap.
    -v Activez les informations détaillées. Cette commande sert normalement à fournir des indications de progression aux visionneuses de sortie standard. Elle peut toutefois inciter les scripts NSE (NMAP Scripting Engine) à fournir des détails supplémentaires.
    -Pn Désactivez le ping par défaut. Cette commande ignore la phase d'analyse de détection de l'hôte Nmap initiale et traite tous les hôtes comme s'ils étaient en ligne. Utilisez cette commande si vous souhaitez effectuer une analyse de port, même si l'ensemble de ports exécutés par les sondes de détection par défaut ne trouvera aucun port ouvert.
    -r Analysez les ports de façon consécutive, sans randomisation.
    --reason Cette commande explique pourquoi Nmap a classifié un port avec un état spécifique.
    --system-dns Utilisez le résolveur DNS du système d'exploitation pour la recherche DNS inversée, plutôt que les serveurs de noms DNS. Cette option est plus lente que l'utilisation de serveurs DNS, car elle ne peut résoudre qu'une seule adresse IP à la fois, tandis que plusieurs demandes rDNS sont effectuées en parallèle. Toutefois, la valeur renvoyée correspond à la valeur renvoyée par le MID Server utilisé pour créer des CI hôtes.
    -X - Redirige stdout vers un fichier XML.
    2> <file-path> Redirige les messages d'erreur écrits par Nmap sur stderr vers le fichier spécifié.