Le scanner réseau détecte les systèmes d'exploitation. Scanners réseau

Quelques exemples de travail avec un merveilleux scanner réseau - NMAP

Analysez le réseau à la recherche d'hôtes actifs :

$ nmap -sn 192.168.1.0/24

Analyse d'une liste d'hôtes/réseaux à partir d'un fichier :

$ nmap -iL entrée.txt

Format de fichier:

Les entrées peuvent être dans n’importe quel format avec lequel Nmap fonctionne : ligne de commande(adresses IP, noms d'hôte, CIDR, IPv6 ou plages d'octets). Les entrées doivent être séparées par un ou plusieurs espaces, tabulations ou nouvelles lignes.

$ cat input.txt serveur.test.com 192.168.1.0/ 24 192.168.2.1,2 ,3 192.168.3.0-200

Scanner plusieurs adresses IP :

$nmap 192.168.1.1 192.168.1.2 192.168.1.3 $nmap 192.168.1.1,2,3


5. Exclusion des IP/hôtes/réseaux de l'analyse

Exclure les cibles de l'analyse Nmap :

$ nmap 192.168.1.0/ 24 --exclure 192.168.1.1 $ nmap 192.168.1.0/ 24 --exclure 192.168.1.1 192.168.1.5 $ nmap 192.168.1.0/ 24 --exclure 192.168.1.1,2 ,3

Exclure la liste des hôtes extraite du fichier :

$ nmap 192.168.1.0/ 24 --excludefile exclure.txt

6. Scanner des ports spécifiques

Scanner un port :

$ nmap -p 80 192.168.1.1

Scanner plusieurs ports :

$ nmap -p 80 443 192.168.1.1

Plage de ports de numérisation :

$ nmap -p 80 -1000 192.168.1.1

Analyser tous les ports :

$ nmap -p "*" 192.168.1.1

Analyser les ports ouverts

$ nmap -Pn 192.168.1.1

7. Détermination des protocoles IP pris en charge

Déterminez les protocoles IP (TCP, UDP, ICMP, etc.) pris en charge par l'hôte analysé :

$ nmap -sO 192.168.1.1

8. Analyse des ports TCP/UDP

Analysez tous les ports TCP :

$ nmap -sT 192.168.1.1

Analysez des ports TCP spécifiques :

$ nmap -p T:80 192.168.1.1

Analysez tous les ports UDP :

$ nmap -sU 192.168.1.1

Analyser des ports UDP spécifiques :

$ nmap -p U:53 192.168.1.1

Combinaison de l'analyse de différents ports :

$ nmap -p U:53,79,113,T:21 -25,80,443,8080 192.168.1.1

9. Analyse rapide

Activer Mode rapide analyse:

$ nmap -F 192.168.1.1

Afficher la cause de l'état du port

Montrez la raison pour laquelle Nmap pense qu'un port est dans un certain état :

$ nmap --raison 192.168.1.1

11. Afficher uniquement les ports ouverts

Afficher uniquement les ports ouverts (ou éventuellement ouverts) :

$ nmap --ouvrir 192.168.1.1

Afficher uniquement les 22e ports ouverts :

Nmap -p22 --ouvrir 192.168.1.1

12. Définition du système d'exploitation

Activer la détection du système d'exploitation :

$ nmap -O 192.168.1.1

* Identifie le système d'exploitation distant à l'aide de l'empreinte digitale de la pile TCP/IP.
13. Détermination de la version des services

Activer la détection de la version du service :

$ nmap -sV 192.168.1.1

* Détermine les versions des programmes exécutés sur le serveur distant.
14. Détection du pare-feu

Découvrez si votre ordinateur est protégé par des filtres de paquets ou un pare-feu :

nmap -oX sortie.xml 192.168.1.1

Nmap-A 192.168.1.2

Cette commande vous permettra d'exécuter tous les scripts et bien d'autres options, voici la description dans le menu d'aide : Activer la détection du système d'exploitation, la détection de version, l'analyse des scripts et le traceroute.
Par exemple, pour le service Samba (port 445), il affichera ce qui suit :

Résultats du script hôte :
| mode-sécurité-smb :
| account_used : invité
| niveau_authentification : utilisateur
| challenge_response : pris en charge
|_ message_signing : désactivé (dangereux, mais par défaut)

L'administrateur système s'imaginait être le dieu du réseau,
mais l'électricien a brutalement dissipé ce mythe.

Humour informatique

Introduction

L'analyse du réseau est l'une des premières étapes du processus de piratage ou de prévention, car elle vous permet de déterminer les ports ouverts les plus vulnérables et potentiellement dangereux sur un ordinateur. Étant donné que chaque ordinateur possède un ensemble de fonctionnalités spécifiques, à l'aide d'un scanner de ports, vous pouvez déterminer quels services (FTP, Web, serveur de courrier etc.) exécuté sur l’ordinateur, ainsi que le système d’exploitation qui le contrôle. Plus il y a de services exécutés sur un ordinateur, plus la probabilité qu'il soit piraté est élevée. Après tout, chaque logiciel présente des vulnérabilités.

Les scanners réseau sont conçus pour scanner un adresse réseau(adresses IP) ou adresses et identifier les ports ouverts et éventuellement non sécurisés sur l'ordinateur faisant l'objet de l'enquête. Néanmoins, ces programmes sont généralement utilisés par les pirates informatiques pour identifier d'éventuelles vulnérabilités et ensuite pirater un ordinateur, et en aucun cas pour assurer sa sécurité. Il s’avère que la sécurité et le piratage, bien qu’antipodes dans leur essence, permettent d’utiliser les mêmes moyens.

Bases de TCP

Pour comprendre comment se produit l'analyse, vous devez comprendre quel algorithme est utilisé pour établir une connexion TCP entre les ordinateurs. Pour établir une connexion TCP entre un client et un serveur, le client envoie une requête (paquet TCP) avec l'indicateur SYN défini pour initier la connexion. Si le serveur écoute sur ce port, il envoie un paquet au client avec les indicateurs SYN et ACK définis, accusant ainsi simultanément réception de la demande du client et lui demandant d'établir une connexion inverse. Le client envoie ensuite un paquet avec l'indicateur ACK défini, accusant réception de la demande du serveur SYN. Ensuite, des données sont transmises, pour confirmer la réception desquelles un paquet avec l'indicateur ACK est envoyé à chaque fois. Lorsque le serveur ou le client a complètement fini de transmettre des données, il envoie un paquet avec l'indicateur FIN activé, informant ainsi l'autre côté de mettre fin à la connexion. L'autre côté, après avoir reçu un paquet avec l'indicateur FIN, envoie un paquet de retour avec l'indicateur FIN activé, confirmant la fin de la connexion. Afin de mettre fin à la connexion, chaque côté peut envoyer un paquet avec l'indicateur RST. Le processus d'échange de paquets est présenté plus clairement dans le tableau. 1.

Tableau 1. Processus d'établissement de connexion et d'échange de paquets

La plupart des scanners reçoivent des informations sur les ports ouverts disponibles et la présence d'un ordinateur sur le réseau en fonction de cette séquence.

Scanner réseau Nmap et ses capacités

Étant donné que les systèmes basés sur Linux et BSD OS sont récemment devenus de plus en plus populaires, dans cette publication, nous examinerons le scanner de réseau le plus avancé pour les systèmes d'exploitation. Systèmes Linux-Nmap. Ce programme est l'un des plus courants parmi les utilisateurs de Linux et se distingue par des outils puissants et grande vitesse travail.

Le scanner réseau Nmap est apparu en 1997 pour systèmes d'exploitation basé sur UNIX et continue de s'améliorer à ce jour. À partir de programmes similaires pour OS sur Basé sur Windows il se distingue par de puissants outils intégrés, une vitesse élevée, divers utilitaires associés, une variété de méthodes de numérisation et une popularité, puisque presque tous Distribution Linuxéquipé de ce scanner sécurité Internet. Cependant, comme la plupart des programmes hautement spécialisés pour Linux, il ne dispose pas de shell accessible à l'utilisateur final et se lance depuis la ligne de commande. Bien entendu, il existe des interfaces supplémentaires pour gérer cet utilitaire, par exemple, comme Umit, Nmapfe, qui utilisent le moteur Nmap et génèrent des informations pour mode fenêtré, pas sur la ligne de commande. Néanmoins, cet utilitaire a été développé à l'origine pour fonctionner en ligne de commande, et les utilitaires « attachés » augmentent le temps de fonctionnement et présentent de nombreux inconvénients par rapport à l'original, y compris dans le style de conception. De plus, il existe une version de ce programme pour les systèmes d'exploitation basés sur Windows. Étant donné que les méthodes de travail et de nombreuses commandes pour les deux plates-formes sont identiques, cet article discutera de la version de Nmap 4.1 pour les systèmes Linux. Étant donné que Nmap est inclus dans presque toutes les distributions Linux, vous pouvez utiliser ce qu'on appelle des LiveCD pour analyser le réseau sans réinstaller le système d'exploitation. Disques de démarrage ce type ne nécessite pas d'installation et est chargé à partir d'un lecteur CD/DVD, sans avoir besoin de partitionner Disque dur et créez des partitions supplémentaires - disque dur dans ce cas la pièce sert mémoire vive ordinateur.

Actuellement, les scanners réseau vous permettent de déterminer de nombreux paramètres supplémentaires de l'ordinateur analysé. Nmap peut détecter la plupart des paramètres de base Adaptateur de réseau: Adresse MAC, nom de l'ordinateur dans le domaine, ports ouverts, ports fermés par un pare-feu, le fabricant du chipset de la carte réseau de l'ordinateur étudié, version du système d'exploitation et services. Notez que les informations sur les adresses MAC et le fabricant du chipset ne peuvent être obtenues que pour les ordinateurs situés sur le même sous-réseau que le PC d'analyse. Pour apprécier tous les avantages de ce programme, regardons les touches les plus couramment utilisées pour son fonctionnement.

Comme déjà mentionné, Nmap se lance depuis la ligne de commande. Lorsque vous exécutez le programme sans aucun commutateur ou avec ou sans le commutateur Nmap -h (--help), une liste s'affichera à l'écran. clés disponibles et paramètres spécifiés (Fig. 1).

Riz. 1. Liste des commutateurs lors de la saisie de la commande Nmap

La syntaxe d'exécution du programme est la suivante : Nmap (spécification cible), où au lieu de Type d'analyse, le type d'analyse est indiqué (par défaut, si cet espace est laissé vide, Nmap analysera ouvertement les ports disponibles). En tant qu'options, toutes sortes de clés et de paramètres d'analyse sont saisis, et à la place de la spécification de la cible - soit l'adresse IP de l'ordinateur, soit une plage d'adresses IP (qui est déterminée par le masque de sous-réseau), soit le nom d'hôte.

Masques de sous-réseau

Très probablement, les utilisateurs qui s'occupaient des paramètres des adaptateurs réseau ont dû gérer un paramètre tel que le masque de sous-réseau (Netmask). Cependant, tout le monde ne comprend pas de quoi il s’agit.

Comme vous le savez, une adresse IP se compose de quatre valeurs entières (octet) et est représentée sous la forme xxx.xxx.xxx.xxx, où xxx peut prendre des valeurs de 0 à 254. Mais l'adresse IP en elle-même est pas suffisant, et pour qu'un périphérique réseau puisse déterminer à quel sous-réseau appartient un ordinateur, il a également besoin d'un masque de sous-réseau pour indiquer quelle partie de l'adresse IP est l'ID de réseau et quelle partie est l'ID d'hôte. L'ID de réseau est essentiellement l'adresse du réseau lui-même et l'ID d'hôte est l'adresse du nœud lui-même sur le réseau. Considérons un hôte avec une adresse IP de 10.242.10.242 et un masque de sous-réseau de 255.0.0.0 - dans ce cas, l'ordinateur appartient au réseau 10.0.0.0. Ici, l'ID réseau est 10.0.0.0 et l'ID d'hôte est 242.10.242. Pour obtenir une adresse réseau, connaissant l'adresse IP et le masque de sous-réseau, vous devez leur appliquer l'opération de conjonction au niveau du bit. Le résultat est effectué par bit à bit entre l'adresse IP et le masque de sous-réseau :

Par exemple, dans le cas d’un masque plus complexe :

Adresse IP : 00001100 00100010 00111000 1001110 (12.34.56.78)

Masque de sous-réseau : 11111111 11111111 11100000 0000000 (255.255.224.0)

Adresse réseau : 00001100 00100010 00100000 0000000 (12.34.32.0)

Cependant, afin d'analyser le réseau tout en écrivant moins de texte, vous pouvez utiliser une autre entrée de masque de sous-réseau utilisant des préfixes. Dans la plupart des cas pour réseaux simples vous pouvez vous limiter à de simples masques de sous-réseau tels que 255.0.0.0, 255.255.0.0 et 255.255.255.0. Le masque de sous-réseau est souvent écrit avec l'adresse IP au format « Adresse IP/nombre d'un bit dans le masque ». Par exemple, l'adresse IP 12.34.56.78 avec un masque de 255.255.224.0 (c'est-à-dire composé de 19 uns et 13 zéros) peut être écrite sous la forme 12.34.56.78/19. Pour les trois types considérés, il existe une saisie alternative de la forme ip/8, ip/16 et ip/24, qui permet de réduire le nombre de chiffres saisis lors de la saisie sur la ligne de commande. Pour l'exemple ci-dessus, le masque de sous-réseau pourrait être écrit comme ceci : 10.242.10.242/8, ce qui est nettement plus court que le masque 10.242.10.242 255.0.0.0. Par conséquent, la plage d’adresses IP du réseau 10.0.0.0 peut être écrite sous la forme 10.0.0.0/8.

Premières tentatives de numérisation

Revenons au scanner réseau Nmap. Comme déjà mentionné, en tant que spécification de cible, vous pouvez spécifier une adresse IP, une plage d'adresses et un nom d'hôte. Si vous devez analyser de nombreuses adresses IP et hôtes différents, il n'est pas très pratique de tout saisir manuellement dans la ligne de commande (surtout si le nombre d'adresses dépasse 20) - pour cela, Nmap prend en charge le chargement d'un fichier avec des adresses. Dans le tableau 2 répertorie les clés possibles associées à la saisie des adresses numérisées.

Tableau 2. Clés responsables de la saisie des adresses

Il est à noter que le fichier contenant la liste des adresses doit être formaté sous forme de texte. La nouvelle adresse ou plage d'adresses doit commencer par nouvelle ligne. Des exemples de saisie d'adresses numérisées sont présentés dans la Fig. 2 et 3.

Riz. 2. Utilisation de la saisie d'adresses en ligne de commande

Sachant comment définir les adresses des ordinateurs étudiés, voyons ce qui est finalement affiché à l'écran. Recruter une équipe Nmap 10.0.0.62 10.0.0.53 pour analyser les ports ouverts sur les ordinateurs avec ces adresses.

Riz. 3. Spécification des adresses numérisées à partir d'un fichier

Résultats de l'analyse et leur analyse

En figue. La figure 4 montre la sortie des résultats de l'analyse. Tout d'abord, à l'aide du serveur DNS, Nmap essaie de déterminer si le nom correspond à l'adresse IP analysée. Si l'opération a réussi, Nmap indique au tout début le vrai nom de l'ordinateur. Comme le montre la figure, l'adresse IP 10.0.0.62 correspond au nom pakhomov.computerpresspublishing.ru. Mais pour la prochaine adresse examinée - 10.0.0.53 - une telle correspondance n'existe pas. Ensuite, Nmap affiche des informations sur les ports fermés ou bloqués (1674 ports fermés non affichés), puis affiche (en trois colonnes) les ports qui ont un statut différent. La première colonne indique le numéro de port actuel, la seconde peut prendre différentes valeurs qui indiqueront l'état du port déterminé par Nmap :

  • ouvrir( port ouvert) - le port est ouvert et le service accepte les connexions TCP ou UDP sur ce port (ce port est le plus vulnérable au piratage) ;
  • filtré - le port est fermé par un pare-feu, un autre programme ou service de blocage (règles de routeur, pare-feu matériel, etc.) ;
  • fermé - le port est fermé car aucun service ou autre programme n'écoute sur ce port sur l'ordinateur.

Riz. 4. Résultat de l'analyse

Si un port est défini comme non filtré, cela suggère que Nmap n'a pas pu déterminer avec précision si le port est ouvert ou fermé, ce qui est généralement attribué par une analyse ACK (discuté plus tard). Il existe également deux valeurs valides : open|filtered et close|filtered - dans les deux cas, Nmap n'a pas pu déterminer l'état du port. Pour déterminer plus précisément la valeur du premier cas, vous devez utiliser la méthode d'analyse FIN, Null, Xmas ou UDP. Il est probable que ces méthodes de numérisation fourniront davantage des informations détaillées. Quant à la valeur fermée|filtrée, elle n'apparaît que si la méthode d'analyse Idlescan est utilisée.

La dernière colonne donne quelques informations sur le service prévu utilisant ce port. Disons que si le port numéro 80 est ouvert, Nmap vous informe que ce port est habituellement utilisé par les serveurs web (http). A noter que pour plus de sécurité, certains services ne sont pas lancés sur leur port standard, mais sur un autre, il est donc impossible de dire que le serveur web tourne sur le port 80 (pour une détermination plus précise du service en cours d'exécution, la méthode d'analyse de version est prévue). Après avoir affiché une liste des ports ouverts, Nmap affiche l'adresse physique (MAC) du périphérique réseau et détermine également, si possible, le fabricant du chipset de la carte réseau du PC examiné et, dans certains cas, même son nom.

Méthodes de recherche de la présence d'un ordinateur sur un réseau

Les exemples discutés ci-dessus sont assez simples et ne nécessitent pas la saisie de clés supplémentaires, mais conviennent généralement à la plupart des ordinateurs du réseau. Cependant, pour une analyse agressive afin d'obtenir le maximum d'informations possibles sur l'ordinateur examiné, il est nécessaire de définir correctement les paramètres d'analyse. Pour déterminer quels ordinateurs fonctionnent sur un réseau, Nmap vous permet d'utiliser plusieurs méthodes d'analyse réseau, qui relèvent toutes de la section Découverte d'hôtes.

Détection d'un ordinateur à l'aide de la méthode Ping

La méthode la plus simple consiste à détecter les ordinateurs en cours d’exécution à l’aide de Ping. Pour ce faire, vous devez utiliser le commutateur -sP sur la ligne de commande. Le scanner de réseau de Nmap envoie des requêtes d'écho ICMP à une ou plusieurs adresses IP données et attend une réponse. Si une réponse est reçue, cela signifie que l'ordinateur en cours d'analyse fonctionne, ce qui est affiché comme résultat de l'analyse. En figue. La figure 5 montre le résultat de l'utilisation de cette méthode.

Riz. 5. Résultat de l'analyse à l'aide de -sP

Cependant, aujourd'hui, de nombreux ordinateurs dotés d'au moins une sorte de pare-feu ont tendance à bloquer les requêtes ICMP. Ainsi, même si l'ordinateur est allumé, Nmap signalera que l'ordinateur n'existe pas sur le réseau. Dans ce cas, Nmap utilise une méthode différente pour déterminer si un ordinateur est sur le réseau. L'exemple d'analyse Ping présenté est basé sur le tableau de séquence d'établissement de connexion fourni.

Découverte à l'aide de paquets SYN/ACK et UDP

Si un service écoute sur un port et que Nmap essaie d'établir une connexion avec lui (envoie un paquet avec l'indicateur SYN), le service peut répondre avec un paquet avec les indicateurs SYN/ACK, ce qui indiquera que l'ordinateur existe sur le port. réseau. Mais s'il n'y a aucun service sur ce port, le serveur répond avec un paquet avec le drapeau RST, qui indique également qu'il y a un ordinateur à l'adresse IP donnée. Si rien n'a été reçu du serveur en réponse au paquet SYN envoyé, cela signifie que soit l'ordinateur est éteint, soit le trafic est bloqué par un pare-feu. Pour contourner le blocage du pare-feu, une autre méthode d'analyse a été développée. Le scanner Nmap envoie généralement des paquets avec des indicateurs SYN/ACK et un paquet UDP sur le port standard 80, qui est le plus souvent utilisé pour le trafic Web et est donc très rarement bloqué par un pare-feu. À l'aide des commutateurs -PS, -PA et -PU, vous pouvez spécifier quel paquet sera envoyé au serveur et sur quel port. Un exemple de ces commandes est présenté sur la Fig. 6. À propos, le nom du port est écrit avec le type de paquet : -PS80,81.

Riz. 6. Résultat de l'analyse à l'aide de -PA, -PS et -PU

Détection d'un ordinateur à l'aide de divers paquets ICMP

La méthode ci-dessus ne permet pas de déterminer avec précision la présence d'un ordinateur sur le réseau. Le scanner réseau Nmap a une autre capacité à déterminer la présence d'un ordinateur sur le réseau. Pour utiliser cette fonctionnalité, vous devez spécifier les commutateurs supplémentaires -PE, -PP ou -PM. La première méthode utilise des requêtes d'écho ICMP, cependant, comme mentionné, le trafic ICMP est souvent bloqué, donc cette méthode n'est pas toujours applicable, mais selon la spécification ICMP, il existe également des requêtes d'horodatage et des requêtes de masque d'adresse). En utilisant ces méthodes, vous pouvez également obtenir une réponse de ordinateur distant, cependant, ils ne donnent souvent pas le résultat souhaité. Pour utiliser la méthode d'écho ICMP, vous devez spécifier la clé -PE, pour les deux autres méthodes décrites - les clés -PP et -PM, respectivement. En figue. La figure 7 montre les tentatives d'analyse utilisant trois méthodes.

Riz. 7. Résultat de l'analyse à l'aide des touches -PE, -PP et -PM

Désactiver la détection de l'ordinateur lors de la numérisation

En règle générale, il est impossible de déterminer avec précision si un ordinateur se trouve sur le réseau ou, s'il existe, son analyse peut être bloquée par un pare-feu. À cet égard, l'option -P0 a été introduite, dans laquelle l'ordinateur examiné n'est pas analysé pour sa présence sur le réseau (c'est-à-dire qu'il ne reçoit pas de ping du tout), mais seuls les ports de l'ordinateur sont analysés. Lorsque vous utilisez cette option, Nmap suppose automatiquement que les adresses IP analysées se trouvent sur le réseau et n'envoie pas de requêtes pour déterminer la présence de l'ordinateur sur le réseau, ce qui augmente considérablement la vitesse d'analyse. Cette option est généralement utilisée pour une analyse secrète à l'aide des méthodes décrites ci-dessous, car dans ce cas, aucune information sur les demandes d'écho ICMP ne reste sur l'ordinateur examiné.

Par défaut, lors de l'analyse d'une adresse IP, Nmap obtient les informations sur le nom de l'ordinateur à partir du DNS du système. Pour augmenter la vitesse d'analyse, vous pouvez désactiver cette option en ajoutant le commutateur -n. À propos, dans presque tous les programmes et services qui sont d'une manière ou d'une autre connectés à l'environnement réseau, le commutateur -n est utilisé dans ce sens même (netstat -n, route -n, etc.). Il existe également plusieurs options qui vous permettent d'obtenir le nom de l'ordinateur en utilisant non seulement le DNS système, mais également le DNS externe. Serveurs DNS. Pour activer cette option, vous devez lancer Nmap avec la clé --serveurs-dns , où serv1 et serv2 sont des adresses de serveur DNS. De plus, vous pouvez utiliser le commutateur -R. Comme mentionné, par défaut, Nmap utilise le DNS du système pour obtenir le nom de l'ordinateur. Pour spécifier cette option manuellement, vous devez saisir la clé --système-dns. En figue. La figure 8 montre des exemples d'utilisation des commutateurs -n et -R --dns-servers.

Riz. 8. Utilisation des commutateurs -n et -R --dns-servers

Méthodes d'analyse des ports sur un ordinateur distant

Le scanner réseau Nmap implique l'utilisation de diverses méthodes d'analyse pour obtenir les informations nécessaires. Cependant, réservons que de nombreuses méthodes impliquent diverses manipulations avec les indicateurs de paquets TCP à un niveau bas et nécessitent donc l'autorité root (superutilisateur) du système pour fonctionner. Les méthodes utilisées ne peuvent fonctionner que séparément les unes des autres ; seule l'analyse des ports UDP peut être effectuée simultanément avec d'autres méthodes d'analyse. L'analyse des ports est basée sur la même méthode d'envoi de paquets avec des indicateurs modifiés lors du lancement de connexions TCP et UDP.

Numérisation à l'aide de la méthode SYN

La méthode la plus courante, et celle par défaut, est l’analyse TCP SYN. Pour la plupart des ordinateurs étudiés, cette méthode est suffisante pour déterminer les ports ouverts. L'analyse TCP SYN est la plus rapide par rapport aux autres méthodes : elle peut analyser plusieurs centaines de ports par seconde, tout en gardant l'ordinateur d'analyse dans l'ombre, car elle ne met jamais fin à la connexion TCP (la plupart des utilitaires de surveillance n'enregistrent pas les données de connexion). Pour utiliser cette méthode, vous devez disposer des droits de superutilisateur (root). Le scanner Nmap envoie un paquet avec l'indicateur SYN à l'ordinateur étudié, comme s'il souhaitait ouvrir une connexion TCP standard, en suivant les règles données au début de l'article. Si une réponse (un paquet avec les indicateurs SYN/ACK) est reçue de l'hôte demandé, le port sera désigné comme ouvert, et si un paquet avec l'indicateur RST est reçu, il sera désigné comme fermé. Si l'ordinateur analysé ne répond pas, on suppose que ce port est filtré par le pare-feu. Pour utiliser cette méthode d'analyse, vous devez exécuter Nmap avec le commutateur -sS (Fig. 9).

Riz. 9. Numérisation à l'aide du commutateur -sS (numérisation TCP SYN)

Comme vous pouvez le voir sur l'image, la plupart des ports sont ouverts, mais certains sont bloqués par le pare-feu.

Numérisation à l'aide de la fonction système connect()

Il existe des situations où vous ne disposez pas des autorisations de superutilisateur, mais il est nécessaire d'analyser un ordinateur distant. Dans ce cas, Nmap utilise une méthode basée sur l'établissement d'une connexion à l'aide de la fonction système connect(), qui est utilisée par la plupart des applications - clients p2p, navigateurs et applications réseau. Dans ce cas, Nmap envoie une requête au système d'exploitation lui-même, qui établit une connexion TCP. Si la connexion est établie, le port est marqué comme ouvert et sinon, comme fermé. Après avoir déterminé l'état du port, Nmap met fin à la connexion, c'est-à-dire qu'en utilisant la fonction connect(), un paquet avec l'indicateur RST est envoyé. Cependant, cette méthode présente un inconvénient : puisque la connexion est entièrement établie, elle reste dans les journaux et journaux du système analysé, et donc les systèmes de surveillance détermineront presque toujours quel ordinateur a effectué l'analyse. À cet égard, cette méthode est rarement utilisée. Pour exécuter l'analyse ci-dessus, vous devez exécuter Nmap avec le commutateur -sT. Un exemple d'utilisation de la méthode de numérisation utilisant la fonction système connect() est illustré à la Fig. dix.

Riz. 10. Scannez à l'aide du commutateur -sT (scan TCP connect())

Analyse des ports UDP

N'oubliez pas les services UDP, qui sont presque aussi répandus que les services utilisant le protocole TCP. Les services les plus courants utilisant le protocole UDP sont DNS, SNMP et DHCP. L’analyse UDP étant plus complexe et plus lente que l’analyse TCP, de nombreux systèmes de sécurité la négligent et ignorent l’écoute (filtrage) sur ces ports. Mais dans ce cas, les services qui écoutent sur ces ports peuvent également être vulnérables au piratage, puisque Nmap permet de déterminer quels ports sont ouverts et quels services les écoutent. Étant donné qu'UDP est un protocole différent de TCP, la méthode d'analyse est différente de celles évoquées précédemment. Nmap envoie un paquet UDP avec un en-tête vide à tous les ports qu'il examine et attend une réponse. Si en réponse il reçoit un paquet ICMP avec l'erreur inaccessible, le port est considéré comme fermé. Lors de la réception de paquets contenant d'autres erreurs, Nmap suppose que le port est filtré par le pare-feu. Le paquet de réponse UDP reçu indique la présence du service et le port est marqué ouvert. Si aucune réponse n'est reçue après plusieurs tentatives, Nmap marque le port comme ouvert|filtré car il ne peut pas déterminer avec certitude si le port est ouvert ou si le pare-feu bloque le trafic sur ce port. De plus, de nombreux ordinateurs ne peuvent envoyer qu'un nombre limité de messages d'erreur ICMP par seconde. Ceci est fait pour se protéger contre la surcharge du réseau. Pour clarifier l'état d'un port, vous pouvez utiliser le commutateur -sV (dans ce cas, Nmap essaie de déterminer le service exécuté sur le port analysé et sa version), mais la vitesse d'analyse est alors réduite d'un ordre de grandeur. L'analyse UDP peut être exécutée simultanément avec n'importe quelle méthode d'analyse TCP, car elles utilisent des protocoles différents. L'analyse UDP est lancée lorsque le commutateur -sU est spécifié. Les différences de vitesse sont illustrées sur la Fig. 11, qui fournit des exemples séquentiels d'analyse sans l'option -sV et de son utilisation.

Riz. 11. Analyse UDP avec et sans le commutateur -sV

La figure montre que l'analyse à l'aide de l'option de détection de version du service a pris près de 10 fois plus de temps (54 secondes contre 4) que sans cette option. Mais cette option a permis de déterminer que les ports UDP 53 et 137 étaient ouverts, bien que l'analyse précédente n'ait pas pu déterminer avec précision leur état. Dans le même temps, même cette option ne permet pas toujours d'obtenir des informations fiables : sur neuf ports au statut incertain, seuls deux ont été identifiés avec précision (53e et 137e). Nmap vous permet également de définir le temps de réponse de l'ordinateur examiné, éliminant ainsi les hôtes lents et augmentant considérablement la vitesse d'analyse UDP. L'option responsable de la réponse de l'ordinateur analysé peut être utilisée non seulement avec l'analyse UDP, mais également avec toutes les autres méthodes. Pour utiliser cette option, vous devez entrer la clé --hosts-timeout , où sec est le temps de réponse en millisecondes.

Numérisation avec les méthodes FIN, Xmas et Null

Puisque la connexion TCP est basée sur la prise de contact à trois voies évoquée au début de l'article, en interrompant la séquence de connexion, il est également possible d'obtenir des informations sur les ports fermés et ouverts de l'hôte examiné. Il existe une méthode d'analyse FIN dans laquelle les paquets avec l'indicateur FIN sont envoyés à l'hôte distant, qui est généralement utilisée lors de la fermeture d'une connexion. Dans ce cas, le port informatique fermé, conformément à la spécification du protocole TCP, doit envoyer un paquet de réponse avec l'indicateur RST. Si le port est ouvert ou bloqué par un pare-feu, il n'y aura aucune réponse de sa part. Comme dans le cas de l'analyse SYN, la connexion n'est pas complètement établie, il se peut donc qu'aucune information ne reste dans les journaux système de l'hôte étudié, alors qu'en même temps la plupart des systèmes de surveillance peuvent enregistrer ce type d'analyse. Cette méthode est plus secrète que l'analyse de connexion TCP et vous permet de déterminer si un port est fermé ou ouvert (bloqué), il existe donc plusieurs modifications de cette méthode. Lors de l'utilisation de la méthode d'analyse nulle, au lieu d'un paquet avec un indicateur FIN, un paquet avec un en-tête vide (0 bits, tous les indicateurs désactivés) est envoyé. Cette méthode fonctionne selon le principe décrit ci-dessus. Une autre méthode dotée d'un algorithme de fonctionnement similaire est appelée analyse de Noël. Dans ce cas, un paquet est envoyé à l'hébergeur, coloré de plusieurs drapeaux (FIN, PSH et URG) à la manière d'un sapin de Noël. Chacune des méthodes considérées a ses propres clés : -sN, -sF et -sX (Null-, FIN- et Xmas-scanning, respectivement). En figue. 12 montre des exemples de balayage des trois types, et à titre de comparaison sur la Fig. 13 - Méthode de numérisation SYN.

Riz. 12. Numérisation à l'aide des commutateurs -sN, -sF et -sX

Lorsque l'on compare les résultats de l'analyse avec SYN et Null, FIN et Xmas, il est clair qu'avec leur aide, de nombreux ports n'ont pas été identifiés comme étant exactement ouverts, mais uniquement comme étant ouverts|filtrés. En effet, la plupart des systèmes d'exploitation Famille Windows, Cisco et d'autres périphériques réseau ne respectent pas toujours les spécifications, le résultat d'une telle analyse pour ces types de systèmes sera donc très probablement négatif. Dans le même temps, l'analyse avec ces trois méthodes permet d'identifier les ports ouverts sur les systèmes UNIX qui suivent la spécification du protocole TCP, et vous permet également de contourner de nombreux pare-feu et filtrage de paquets.

Riz. 13. Analyse SYN

Numérisation à l'aide de divers indicateurs

Nmap vous permet de définir des indicateurs qui seront utilisés pour ce type d'analyse, pour lesquels vous devez exécuter le programme avec le commutateur --scanflags. Dans ce cas, les types d'indicateurs peuvent être différents - URG, ACK, PSH, RST, SYN et FIN. La syntaxe de la commande est la suivante : Nmap --scanflags URGACKPSHRSTSYNFIN. En plus de cette commande, vous pouvez spécifier deux méthodes d'analyse : -sA et -sF (si elles ne sont pas spécifiées, la méthode d'analyse SYN est utilisée par défaut).

Analyse à l'aide des méthodes ACK et Window

Pour déterminer quels ports d'un ordinateur sont à l'état filtré et lesquels sont à l'état non filtré, il existe un type d'analyse distinct : ACK. Il peut également être activé à l'aide du commutateur --scanflags ACK. Étant donné que de nombreux pare-feu examinent uniquement les paquets SYN sur un port spécifique, effectuant ainsi un filtrage, en envoyant des paquets avec l'indicateur ACK, il existe une forte probabilité de déterminer si un pare-feu existe sur l'ordinateur examiné ou non. Dans ce cas, le paquet avec l'indicateur ACK n'est pas envoyé dans le cadre de la connexion, mais séparément. Si le côté récepteur envoie un paquet de retour avec l'indicateur RST (par conséquent, le port n'est pas bloqué par un pare-feu), le port est marqué comme non filtré, mais si l'hôte ne répond pas au paquet, un pare-feu y est installé. et le port est dans l'état filtré. Pour activer cette méthode, vous devez exécuter Nmap avec le commutateur -sA. En figue. La figure 14 montre un exemple de cette méthode de numérisation.

Riz. 14. Scanner à l'aide de la méthode ACK

Puisqu'un ordinateur a déjà été examiné à l'aide d'une analyse SYN (voir Figure 13), nous pouvons dire qu'une analyse ACK ne peut déterminer l'état que de certains ports hôtes. Cette méthode a un analogue qui fonctionne sur le même principe, mais interprète légèrement différemment les résultats reçus de l’hôte. L'analyse de fenêtre TCP suppose que sur certains hôtes, les services utilisent un champ de fenêtre positif dans le paquet de réponse (et non zéro). C’est pourquoi, avec l’aide cette méthode Nmap analyse les en-têtes des paquets entrants avec l'indicateur RST, et si le paquet entrant contient une valeur de champ positive, alors Nmap marque ce port comme ouvert. Recevoir un paquet avec une valeur de champ nulle signifie que le port est fermé. Pour activer cette méthode d'analyse, vous devez entrer le commutateur -sW.

Numérisation de Maimon

Une autre méthode de numérisation basée sur une connexion à trois voies est la méthode décrite par un spécialiste nommé Uriel Maimon. Sa méthode est presque identique aux méthodes FIN, Xmas et Null, sauf que les paquets sont envoyés avec les indicateurs FIN/ACK. Ici, si le port est fermé, l'hôte doit répondre avec un paquet RST. Pour activer cette méthode d'analyse, vous devez entrer le commutateur -sM.

Toutes les méthodes ci-dessus sont basées sur la même méthode de connexion à trois voies pour une connexion TCP.

Analyse secrète à l'aide de l'algorithme Idlescan

Aucune des méthodes décrites ne vous permet de masquer complètement l'adresse IP de l'hôte d'analyse. Étant donné que l'usurpation de l'adresse IP d'un paquet sortant n'est pas si difficile, une méthode d'analyse a été trouvée dans laquelle l'hôte étudié ne peut pas déterminer l'adresse IP exacte de l'ordinateur à partir duquel l'analyse est effectuée. La méthode d'inactivité est presque identique au balayage SYN dans son algorithme de fonctionnement. Pour comprendre comment l'adresse IP de l'ordinateur d'analyse est masquée, vous devez savoir que chaque paquet IP possède son propre numéro d'identification de fragment (IPID). De nombreux systèmes d'exploitation incrémentent ce nombre pour chaque paquet ultérieur envoyé, afin que vous puissiez facilement déterminer le nombre de paquets envoyés par l'hôte. Il convient de noter que si un ordinateur reçoit un paquet avec les indicateurs SYN/ACK d'une adresse à partir de laquelle il n'a pas demandé de connexion, il enverra en réponse un paquet avec l'indicateur RST. Cette méthode implique l'utilisation d'un autre ordinateur « zombie », au nom duquel les paquets seront envoyés à l'ordinateur analysé. Ensuite, nous considérerons l'algorithme de la méthode ralentiscan.

Que l'ordinateur analysé soit l'attaquant, l'ordinateur zombie le zombie et l'ordinateur analysé la cible.

Le premier cas - le port examiné est ouvert :

  • l'attaquant envoie un paquet avec les indicateurs SYN/ACK à zombie, et en réponse, zombie envoie un paquet avec l'indicateur RST. Ce paquet possède par exemple un numéro d'identification (IPID) de 123 ;
  • l'attaquant envoie un paquet avec l'indicateur SYN sur le port souhaité au nom de l'ordinateur zombie ;
  • la cible envoie une demande de réponse avec des indicateurs SYN/ACK à l'ordinateur zombie. En réponse, zombie envoie un paquet avec l'indicateur RST à l'ordinateur cible, car zombie n'avait pas l'intention d'établir une connexion avec lui. Ce paquet a un numéro augmenté de un - IPID 124 ;
  • l'attaquant envoie un paquet avec l'indicateur SYN/ACK à l'ordinateur zombie, en réponse, le zombie envoie un paquet avec l'indicateur RST. Ce package a un IPID augmenté de deux - 125.

Deuxième cas - le port est fermé :

  • l'attaquant envoie un paquet avec les indicateurs SYN/ACK à zombie, en réponse, zombie envoie un paquet avec l'indicateur RST. Ce paquet possède par exemple un numéro d'identification (IPID) de 123 ;
  • l'attaquant envoie un paquet avec l'indicateur SYN sur le port souhaité au nom de l'ordinateur zombie ;
  • la cible envoie un paquet avec l'indicateur RST à l'ordinateur zombie. zombie n'envoie rien en réponse ;
  • l'attaquant envoie un paquet avec l'indicateur SYN/ACK à l'ordinateur zombie, en réponse, le zombie envoie un paquet avec l'indicateur RST. Ce paquet a un IPID augmenté de un, 124.

Ainsi, par une simple arithmétique, vous pouvez calculer si un port est ouvert ou fermé sur l'ordinateur étudié. Avantage cette méthode est qu'il est très difficile d'identifier l'adresse IP de l'ordinateur d'analyse, car l'ordinateur cible pense que l'analyse a été effectuée par l'ordinateur zombie et que les requêtes de l'ordinateur d'analyse restent uniquement dans les journaux zombies. Pour activer cette méthode de numérisation, vous devez entrer le commutateur -sI , où zombie est le nom ou l'adresse IP de l'ordinateur pour le compte duquel l'analyse sera effectuée, et port est le port de communication entre l'ordinateur d'analyse et le zombie (80 par défaut, car sur la plupart des ordinateurs, ce port est ouvert au trafic Web ). Un exemple de numérisation utilisant cette méthode est présenté sur la Fig. 15, un exemple de balayage SYN est également présenté à titre de comparaison.

Riz. 15. Numérisation à l'aide de la méthode Idlescan

Comme le montre la figure, l'ordinateur « zombie » était un PC avec une adresse IP de 10.0.0.79 et l'ordinateur analysé avait une adresse IP de 10.0.0.62. Après avoir analysé les résultats, on peut affirmer que la méthode ralentie ne détermine pas toujours correctement l'état d'un port (qu'il soit ouvert ou bloqué par un pare-feu). De plus, si l'on compare le temps d'analyse, la vitesse de la méthode SYN est beaucoup plus élevée, car lors de l'analyse inactive, Nmap doit parfois envoyer des paquets plusieurs fois, car un ordinateur zombie peut également travailler de manière intensive et échanger activement des paquets, renversant ainsi le Compteur IPID, que Nmap est calculé. Cette méthode est la plus préférable si vous devez masquer l'analyse, cependant, elle ne donne toujours pas une image précise des ports ouverts sur l'ordinateur examiné. Il est recommandé d'exécuter ce type d'analyse avec le commutateur -P0, car dans ce cas, Nmap n'interroge pas l'hôte avant l'analyse. Dans certains cas, si un ordinateur zombie se comporte de manière agressive et interfère avec la réception des résultats de l'analyse (impossible d'afficher les résultats de l'analyse) et qu'il est nécessaire d'obtenir des informations sur les ports ouverts, vous pouvez utiliser l'option -v -v (mode détaillé). Dans ce mode, Nmap affiche tous les services et informations reçues sur l'écran en ligne.

Rechercher des protocoles ouverts

Dans certains cas, il est nécessaire de définir des protocoles ouverts sur l'hôte distant. Étant donné que chaque protocole IP de couche de transport se voit attribuer son propre numéro de séquence et que chaque paquet IP possède un champ de protocole qui indique le type d'en-tête de paquet et le numéro de protocole, vous pouvez découvrir quels protocoles sont ouverts sur l'ordinateur que vous testez. Pour déterminer si un protocole est disponible sur un hôte, Nmap envoie plusieurs paquets avec des en-têtes vides contenant uniquement le numéro de protocole dans le champ protocole. Si le protocole n'est pas disponible, l'ordinateur renverra le message ICMP « protocole indisponible ». Si l'hôte ne répond avec aucun paquet, cela peut signifier que le protocole est disponible ou que le pare-feu bloque le trafic ICMP. Cette situation est très similaire à l'analyse UDP, où il est également impossible de déterminer avec précision si un port est ouvert ou filtré par un pare-feu. Pour activer l'analyse de protocole, vous devez utiliser le commutateur -sO. En figue. La figure 16 montre un exemple d'utilisation de cette méthode.

Riz. 16. Rechercher les protocoles disponibles

Nmap génère ainsi des protocoles ouverts et filtrés, car il peut déterminer avec précision cet état. Les protocoles analysés restants sont marqués comme ouverts|filtrés.

Analyse furtive à l'aide de la méthode de rebond FTP

Le scanner réseau Nmap prend en charge la méthode d'analyse par rebond FTP, dont l'essence est la capacité du serveur FTP à envoyer des fichiers à un tiers. Cette fonction étant très souvent utilisée à d’autres fins (scan, tentatives de piratage), de nombreux serveurs FTP ne la supportent plus ou la bloquent. La méthode de rebond FTP vous permet d'analyser les ports d'un ordinateur distant pour le compte d'un serveur FTP. L'ordinateur d'analyse envoie une demande au serveur FTP pour établir une connexion TCP sur un port spécifique avec l'ordinateur en cours d'analyse afin de transférer le fichier. L'analyse des erreurs reçues du serveur FTP permet à Nmap de déterminer si un port est ouvert ou fermé. Dans ce cas, le secret de la numérisation est assuré puisque pour l'ordinateur examiné, l'initiateur de la connexion est le serveur FTP, et non l'ordinateur de numérisation. Cette méthode est avant tout pratique car, en règle générale, le pare-feu laisse passer le trafic d'un serveur FTP connu, car ce dernier dispose généralement de plus de droits d'accès aux ressources réseau externes et internes. Ainsi, il devient possible de contourner les filtres de ports et les pare-feu qui n'autorisent pas le trafic lors de l'analyse par d'autres méthodes. Afin d'analyser un ordinateur à l'aide de cette méthode, vous devez trouver un serveur FTP approprié prenant en charge la fonction décrite et un identifiant/mot de passe pour vous connecter à ce serveur FTP. Pour exécuter Nmap lors de la numérisation avec cette méthode, vous devez spécifier la clé -b , où le nom d'utilisateur et le mot de passe sont le login et le mot de passe pour se connecter au serveur FTP, et server est le nom ou l'adresse IP du serveur. Par défaut, si vous n'utilisez pas la clé :port, Nmap tentera de se connecter au serveur ftp sur le port standard 21. En figue. La figure 17 montre un exemple de cette méthode.

Riz. 17. Numérisation à l'aide de la méthode de rebond FTP

Comme le montre la figure, la numérisation avec cette méthode a donné des résultats positifs. Cependant, scanner avec cette méthode n'est pas toujours possible, car très souvent le serveur FTP ne peut pas établir de connexion avec un ordinateur distant utilisant des ports privilégiés (inférieurs à 1024). Pour de telles erreurs, Nmap affiche la ligne votre serveur de rebond FTP n'autorise pas les ports privilégiés ou problème de réception du serveur de rebond FTP. Comme pour l'analyse ralentie, pour masquer la présence, il est recommandé de spécifier le commutateur -P0 afin que Nmap ne tente pas d'envoyer des requêtes d'écho ICMP à l'ordinateur en cours d'analyse. Cela vaut la peine d'y prêter attention gel fréquent Nmap lors de l'utilisation du rebond FTP vers des hôtes spécifiques. Afin d'obtenir toujours information nécessaire, vous devez exécuter Nmap avec les options -v -v, avec lesquelles le scanner réseau affichera les informations reçues en ligne.

Paramètres du port analysé

Le scanner Nmap possède de nombreux paramètres additionnels. Dans le tableau 3 décrit les paramètres concernant les ports d'analyse.

Tableau 3. Paramètres du port de numérisation

Par défaut, Nmap analyse tous les ports, y compris les ports privilégiés (0 à 1024) et les ports définis dans le fichier Nmap-services. Ce fichier est constamment mis à jour par les développeurs et inclut les ports utilisés par les applications et services courants. Le fichier contient le nom du service, sa description et le protocole qu'il utilise. Puisque Nmap vous permet d'analyser non seulement les ports TCP mais également UDP, en utilisant le commutateur -p, vous pouvez clairement spécifier le protocole et son port. L'analyse du 25ème port UDP et du 80ème port TCP ressemblera à ceci : Nmap -p U:25,T:80.

Détermination des versions des services en cours d'exécution

Comme indiqué au début de l'article, Nmap vous permet, avec un degré de probabilité élevé, de déterminer la version du système d'exploitation exécutée sur un ordinateur distant. Dans le même temps, Nmap peut également identifier les versions de services exécutés sur un PC distant, à condition que les ports d'un service particulier soient ouverts. Déterminer la version du système d'exploitation et des services vous aidera à avoir une idée plus claire de la vulnérabilité de l'ordinateur soumis à l'enquête et des failles des services qui peuvent rester ouvertes au piratage. Pour obtenir des informations sur la version du service en cours d'exécution ou du système d'exploitation, Nmap utilise sa base de données, qui comprend des balises spécifiques spécifiques à cette version particulière. logiciel. Les informations sont collectées après toute analyse en utilisant n'importe quelle méthode d'analyse des ports ouverts. La détermination des versions du programme ne donne pas toujours un résultat positif, mais dans la plupart des cas, les informations ainsi obtenues permettent de se faire une idée du système utilisé sur l'ordinateur distant. Dans le cas où Nmap reçoit des informations sur un hôte mais ne peut pas les faire correspondre à une description spécifique dans sa base de données, le programme affiche le résultat à l'écran. Si vous le souhaitez, si la version du système d'exploitation ou du service est connue, mais que Nmap n'a pas pu la déterminer, vous pouvez copier la sortie et l'envoyer au développeur - ce descripteur sera inclus dans la prochaine version du programme. Dans le tableau La figure 4 montre les clés permettant de déterminer les versions des services exécutés sur l'hôte distant.

Tableau 4. Paramètres d'analyse pour déterminer les versions de service

Le commutateur -allports, indiqué dans le tableau. 4 n'est généralement pas utilisé, car si cette option est activée, Nmap enverra également des paquets sur le port TCP 9100. En effet, de nombreuses imprimantes présentent l'inconvénient suivant : lorsqu'elles reçoivent des paquets sur le port 9100, elles impriment automatiquement les informations reçues et, pour Pour éviter des montagnes de papier endommagé, le port TCP 9100 est ignoré lors de la détermination de la version.

Détermination de la version du système d'exploitation sur un ordinateur distant

Bien entendu, l’une des options les plus intéressantes consiste à déterminer le système d’exploitation de l’ordinateur distant. Dans ce cas, une méthode modernisée est utilisée pour déterminer les versions des services en cours d'exécution. Nmap produit divers tests, envoyant des paquets via différents protocoles avec des conditions différentes à l'ordinateur étudié. En comparant les résultats obtenus avec les valeurs de référence spécifiées dans le fichier Nmap-os-fingerprints, le programme produit un résultat récapitulatif pour l'ordinateur. En fonction de la quantité et de la qualité des informations reçues, Nmap peut déterminer le fabricant du système d'exploitation, sa version approximative et le type d'équipement, puisque le résultat final de l'analyse n'est pas toujours un ordinateur - il peut aussi s'agir d'un routeur, d'un commutateur géré. , etc. Afin d'activer cette méthode d'analyse, vous devez spécifier le commutateur -O, ainsi que le commutateur -A, qui active la détection de la version du système d'exploitation et des versions des services en cours d'exécution. En figue. 18 montre un exemple de définition d'un système d'exploitation.

Riz. 18. Définition du système d'exploitation

Paramètres de temporisation

Une vitesse de fonctionnement élevée est temporairement déterminée s paramètres de réponses et d'envoi de paquets. Par défaut, Nmap utilise les paramètres de synchronisation les plus efficaces pour produire des résultats d'analyse plausibles. Cependant, les professionnels de la sécurité qui utilisent ce scanner peuvent avoir besoin de paramètres temporaires spéciaux pour certaines méthodes d'analyse. s x constantes À cet égard, les développeurs de Nmap ont prévu la définition manuelle de certaines constantes, ainsi que la possibilité de définir un « calendrier » d'analyse. Certains commutateurs utilisent un paramètre d'heure, qui est saisi par défaut en millisecondes, mais il est possible d'écrire l'heure sous la forme s, m et h - ces arguments littéraux sont ajoutés à la fin. valeur numérique, raccourcissant considérablement l'enregistrement et le simplifiant. Par exemple, 600 000, 600 s, 10 min indiquent la même heure. Note clés possibles temporaire s Les paramètres x et les performances sont donnés dans le tableau. 5.

Tableau 5. Paramètres de synchronisation et de performances

Planification de l'analyse

Comme indiqué ci-dessus, Nmap vous permet de définir un programme d'analyse pour tenter de cacher votre présence aux pare-feu et aux systèmes de sécurité. Il existe six programmes d'analyse : Paranoïaque, Sournois, Poli, Normal, Agressif et Insensé, le programme Normal étant celui par défaut. Temporaire s Les retards et autres facteurs associés sont indiqués dans le tableau. 6.

Tableau 6. Caractéristiques des différents plannings d'analyse

Options de ligne de commande supplémentaires

Presque tout le plus paramètres importants la ligne de commande sont décrites ci-dessus. Vous trouverez ci-dessous quelques paramètres couramment utilisés :

  • -S - en utilisant l'adresse IP de quelqu'un d'autre dans les paquets envoyés à l'ordinateur. Dans ce cas, le serveur renverra la réponse à l'adresse spécifiée ;
  • -e - n'utilisez que certains interface réseau, par exemple Nmap –e eth0 ;
  • -v; -d- affichage de l'état actuel de l'analyse en ligne. La directive -d active le mode débogage, qui affiche toutes les informations possibles sur l'état de fonctionnement actuel, ainsi que les erreurs et leurs codes ;
  • -g (alternative --port-source ) - vous permet de sélectionner le port source à partir duquel les paquets seront envoyés lors de l'analyse ;
  • -longueur des données - permet de définir la taille du paquet en octets. Les valeurs par défaut sont respectivement 40 et 28 pour les requêtes TCP et ICMP ;
  • -ttl - permet de régler l'heure d'un paquet IP dans le champ time-to-live ;
  • -usurpation-mac - vous permet de définir une adresse MAC (physique) différente pour les trames. Exemple d'application : Lien direct, 0, 01:02:03:04:05:06;
  • -mauvaise somme- envoie des paquets TCP et ICMP avec une somme de contrôle corrompue. Les pare-feu ou les systèmes de sécurité répondront généralement à un tel paquet ;
  • -6 - utiliser l'analyse des réseaux IPv6. Dans ce cas, vous devez spécifier une adresse IPv6 ou un nom d'hôte ;
  • -erreurs de journal- toutes les erreurs sont enregistrées dans un fichier journal ;
  • -sur; -oM; -oS ; -oA; -oG - enregistrement des scans dans un journal. Les types d'enregistrement diffèrent par la méthode de stockage des informations. L'option -oN enregistre une fois que les informations apparaissent à l'écran, et l'option -oA les enregistre toutes en même temps. formats possibles dans des fichiers portant le nom file et diverses extensions (*.xml, *.gNmap, *.Nmap).

Conclusion

Bien entendu, toutes les options de scanner n’ont pas été suffisamment prises en compte. La plupart des utilisateurs sont limités aux méthodes de numérisation standard. Le scanner Nmap est conçu non seulement pour les utilisateurs de réseau ordinaires, mais également pour administrateurs système et les développeurs de systèmes de sécurité et de nombreux outils leur seront utiles dans leur travail. Nmap est constamment mis à jour et amélioré. Puisque, comme beaucoup d’autres programmes pour systèmes Linux, il est gratuit, n’importe qui peut contribuer à son écriture.

En conclusion, je voudrais noter que les scanners réseau et autres programmes similaires sont créés principalement pour empêcher le piratage ou les attaques actives. En analysant votre ordinateur, il est tout à fait possible de détecter non seulement de nombreux ports ouverts, mais même un cheval de Troie qui n'a pas été remarqué par l'antivirus. Par conséquent, la possibilité de travailler avec de tels logiciels sera toujours utile dans la tâche difficile de lutter contre le piratage. Le scanner réseau considéré offre à l'utilisateur la plus large gamme de divers types numérisation et caractéristiques supplémentaires sur le suivi. En sélectionnant et en combinant différentes techniques de numérisation, vous pouvez trouver des informations sur votre ordinateur ou Périphérique réseau avec n’importe quel système d’exploitation.

Aujourd'hui, presque tous les utilisateurs peuvent répondre à la question de savoir ce qu'est un scanner de réseau IP. Il s'agit d'un programme de renifleur spécial qui identifie un terminal informatique spécifique dans réseau local ou lors de l'établissement d'une connexion Internet. Personne ne peut deviner comment ce système fonctionne. Qu'est-ce qu'un scanner réseau ? Classiquement, toutes commandes ou programmes de ce type peuvent être répartis en plusieurs classes en fonction des paramètres définis. Il doit être clair qu'un scanner de réseau logiciel doit fonctionner selon plusieurs modes, notamment déterminer les adresses IP externes et internes des appareils connectés, reconnaître réseaux sans fil, en lançant un système de diagnostic et en ayant accès à des ressources basées sur les protocoles HTTP et FTP.

Outils du système d'exploitation Windows pour l'analyse

Dans les systèmes d'exploitation de la famille Windows, il existe un remède spécial, qui est déjà intégré au système d'exploitation, les adresses IP sont généralement définies automatiquement par les fournisseurs lors de leur utilisation actuelle. paramètres réseau il vous suffit d'installer cette installation – Obtenez automatiquement l'habillage de l'iPad. Dans le même mode, la passerelle et le masque de sous-réseau sont définis. Les serveurs DNS principal et alternatif ne sont pas utilisés dans ce cas. Leurs adresses doivent dans certains cas être inscrites dans mode manuel, surtout si la configuration est effectuée via les services Google. Cependant, vous pouvez reconnaître n'importe quelle adresse interne en utilisant la commande ping la plus simple, qui doit être saisie depuis la console appropriée en indiquant l'adresse interne. ordinateur local ou un terminal qui se connecte à réseau d'entreprise. Pour afficher toutes les adresses des appareils qui se trouvent ce moment connecté à l'un des protocoles réseau, vous devez utiliser la commande ipconfig. De nombreux utilisateurs sous-estiment la ligne de commande. Mais c'est dans celui-ci que, en spécifiant un ajout à la commande principale sous forme de renouvellement ou de release6, vous pouvez postuler paramètres automatiques Protocole IPv6 ou même mettre à jour la configuration avec les paramètres du serveur DHCP.

Requête externe basée sur la commande ping

Quant aux requêtes externes reçues via la commande ping, elles sont faites pour la plupart uniquement par l'administrateur réseau ou le fournisseur. L’inconvénient de cette méthode est de déterminer l’adresse externe du périphérique IP connecté à Internet. Dans ce cas, l'adresse interne peut être masquée ou attribuée automatiquement. Lors de la vérification des réseaux WLAN virtuels, seul le ping du modem ou du routeur ADSL est effectué. Son adresse ne correspond en aucun cas à l'adresse du terminal informatique local.

Scanner de réseau Wi-Fi

Passons directement à l’examen des produits logiciels. Cela ne vaut probablement pas la peine de le mentionner. jeu de Google vous pouvez télécharger utilitaire gratuit, qui est capable de reconnaître réseaux virtuels, qui sont proches de l’utilisateur. Si vous effectuez une recherche approfondie sur Internet, vous pouvez trouver non seulement un scanner de réseau, mais également un progiciel complet qui vous permet de déchiffrer un mot de passe et même d'agir comme un anonymiseur. C'est un peu comme utiliser des proxys virtuels et des protocoles d'accès. L'essence de la question se résume à identifier une adresse inutilisée ou à s'y connecter. Ainsi, tout scanner d'adresses IP sur le réseau les détermine en fonction de celles allouées par le fournisseur. Le service lui-même, à condition qu'il utilise un serveur proxy virtuel, ne peut que deviner cela.

Les programmes les plus simples

Parmi toute la variété que l'on peut trouver sur Internet aujourd'hui, les plus populaires sont les produits logiciels suivants :

— scanner de réseaux sans fil publics Détecteur WiFi gratuit ;

— Net Scan du scanner de port local et d'adresse IP ;

- outil pour le sans fil Les réseaux InSSiDer;

— un système de contrôle des adresses libres non impliquées dans connexions locales– Scanner IP en colère.

Tous les scanners réseau du type mentionné ci-dessus fonctionnent sur le même principe. Il s'agit de déterminer l'adresse IP externe de l'appareil connecté, peu importe appareil mobile vous utilisez un ordinateur portable ou de bureau. Toutes les applications appartenant à la catégorie des programmes « Windows 7 Network Scanner » utilisent commande cachée ping, dont l'utilisateur n'est peut-être même pas conscient. Dans ce cas, la requête externe s'effectue non pas sous la forme d'une opération réalisée par Windows, mais sur la base de ses propres développements, en tenant compte du protocole utilisé et du serveur DHCP. Dans ce cas, des échecs peuvent survenir dans l'option de connexion au serveur proxy. Pour modifier ces paramètres, vous devez utiliser les paramètres du réseau ou de la carte réseau. Ils doivent être configurés pour interdire l’utilisation de proxys pour les adresses locales. Ce sont au moins les paramètres du protocole IPv4. Applications mobiles en même temps, ils sont très demandés. Dans la version la plus simple, l'exemple suivant peut être donné. Supposons qu'un utilisateur vienne dans un café et ait un besoin urgent d'envoyer e-mail ou écrivez un message. Il ne connaît pas le mot de passe pour accéder au réseau virtuel. Si l'application appropriée est installée sur votre tablette ou votre smartphone, le scanner réseau fonctionnera automatiquement. Il détectera le circuit sans fil le plus proche. En fonction de la produit logiciel, il peut également y avoir la possibilité d'un accès sans mot de passe au réseau. Cependant, cette option est illégale. Il n'est probablement pas nécessaire de rappeler une fois de plus qu'il existe aujourd'hui grande quantité les pirates informatiques, qui incluent parfois des applications de ce genre. Dans le même temps, personne ne comprend qu'un scanner d'adresses IP réseau détermine uniquement la source via laquelle la connexion Internet et l'accès au réseau sont établis.

Conclusion

Le pire, c'est qu'aucun programme de ce type, lors de l'analyse d'adresses externes et internes, ne peut contourner la configuration. fichier d'hôtes, qui stocke des informations sur les appels vers des adresses standard. Son contenu peut parfois comporter des entrées bloquant certaines ressources. L'accès à ces paramètres dans les systèmes d'exploitation de la famille Windows a une très haute priorité, même par rapport aux serveurs proxy et DNS. Par conséquent, lors de l'installation d'un scanner réseau, vous devez réfléchir à l'opportunité d'utiliser ce logiciel. Malheureusement, les applications du scanner qui ne sont pas contrôlées par le système d'exploitation Windows peuvent provoquer des conflits au niveau du système. Par exemple, le travail de certaines bibliothèques dynamiques nécessaires au bon fonctionnement de Windows et des pilotes de périphériques peut être bloqué. Vous devez également faire attention à la légalité de la pénétration de certains réseaux virtuels, sans parler de l'installation de logiciels provenant de sources non officielles.

Analyse TCP.

En utilisant la méthode de connexion TCP, nmap analysera la plage de ports (1-65535) de l'ordinateur avec l'adresse IP, l'option -sV est utilisée pour obtenir les versions les services en cours d'exécution:

$ nmap -sV xxx.xxx.xxx.xxx -p 1-65535

Il convient également de noter que nous avons SERVICE et ÉTAT sur le terrain.

Le champ SERVICE affiche toujours la valeur du fichier /etc/services correspondant au numéro de port. Cela ne signifie pas que le service spécifié dans le champ SERVICE sera disponible sur ce port. exécutez le serveur Web sur le port 22 et SSH sur le port 80, mais nmap écrira toujours que le port 22 est ssh et 80 est HTTP.

Dans le champ STATE - Dans un cas, le port ssh est ouvert, dans l'autre - filtré. La valeur Filtré signifie que le port rejette ou abandonne le trafic. Cela n'indique pas s'il y a un service sur ce port ou non.

T "Paranoïaque | Sournois | Poli | Normal | Agressif | Insensé" - modes temporaires. Avec "Paranoid", l'analyse prendra beaucoup de temps, mais vous aurez alors plus de chances de ne pas être détecté par les détecteurs d'analyse. Et vice versa, utilisez « Insane » lors de l'analyse de réseaux rapides ou faiblement protégés.

ON/-oM "logfile" - affiche les résultats dans un fichier journal sous forme normale (-oN) ou machine (-oM).

"Fichier journal" du système d'exploitation - cette option vous permet de reprendre l'analyse si elle a été interrompue pour une raison quelconque et que le résultat a été écrit (l'option -oN "fichier journal" ou -oM "fichier journal" a été activée). Pour continuer à travailler, vous devez exécuter Nmap en spécifiant uniquement cette fonction et le fichier dans lequel l'analyse précédente a été enregistrée (« fichier journal »).

Êtes-vous préoccupé par la sécurité de votre réseau ou de tout autre réseau ? Protéger votre routeur des connexions indésirables est essentiel pour assurer la sécurité de votre réseau. Un des méthodes simples est Nmap ou Network Mapper. Il s'agit d'un programme d'analyse qui vérifie quels ports sont ouverts et lesquels sont fermés, ainsi que d'autres détails. Les professionnels de la sécurité utilisent ce programme pour tester la sécurité du réseau. Pour savoir comment utiliser ce programme, voir l'étape 1.

Pas

Utiliser Zenmap

    Téléchargez le programme d'installation de Nmap. Vous pouvez trouver le programme d'installation sur le site Web des développeurs et le télécharger gratuitement. Il est recommandé de télécharger depuis le site Web des développeurs pour éviter tout risque de téléchargement de virus ou de fichiers falsifiés. En téléchargeant Nmap, vous obtenez également Zenmap, une interface graphique pour Nmap qui rend le programme facile à utiliser pour les débutants lorsqu'ils effectuent des analyses sans connaître les commandes.

    • Logiciel Zenmap disponible pour les salles d'opération Systèmes Windows, Linux et Mac OS X. Vous pouvez trouver des installateurs sur le site officiel de Nmap.
  1. Lancez le programme GUI « Nmap – Zenmap ». Si lors de l'installation, vous avez laissé tous les éléments intacts, l'icône du programme devrait apparaître sur votre bureau. Sinon, regardez dans le menu Démarrer et lancez Zenmap.

    Entrez le but de votre analyse. Zenmap fait de l'analyse réseau un processus très simple. Tout d’abord, sélectionnez la cible d’analyse. Vous pouvez saisir le domaine (exemple.com), l'adresse IP (127.0.0.1), le réseau (192.168.1.0/24) ou une combinaison de ceux-ci.

    • En fonction de votre téléchargement et du but de votre analyse, l'utilisation de Nmap peut enfreindre les politiques d'utilisation de votre FAI. Vérifiez toujours les règles des utilisateurs locaux lorsque vous utilisez Nmap lors d'une numérisation en dehors de votre propre réseau.
  2. Sélectionnez votre profil. Les profils sont un groupe de modifications qui modifient la structure d'analyse. Les profils vous permettent de sélectionner rapidement différents types analyse sans avoir besoin d’un ensemble de modifications sur la ligne de commande. Choisissez le profil le mieux adapté à vos besoins :

    • Analyse intense- une numérisation approfondie. Comprend le système d'exploitation, la version, la reconnaissance de script, le traçage et un temps d'analyse agressif.
    • Analyse ping- Cette analyse détermine l'état en ligne de la cible de votre analyse et n'analyse pas les ports.
    • Scan rapide- analyse plus rapidement qu'une analyse classique avec un temps d'analyse et un échantillonnage de ports agressifs.
    • Analyse régulière- il s'agit d'une analyse Nmap standard sans aucune modification. Le résultat inclut le ping et les ports ouverts.
  3. Cliquez sur Numériser pour lancer la numérisation. Les résultats de l'analyse active seront affichés dans l'onglet Sortie Nmap. La durée de l'analyse dépendra du profil sélectionné, de la distance physique par rapport à la cible et de la configuration du réseau.

    Consultez vos résultats. Une fois l'analyse terminée, vous verrez le message « Nmap est terminé » au bas de l'onglet Sortie Nmap. Vous pouvez maintenant vérifier vos résultats, en fonction du type d'analyse que vous avez sélectionné. Tous les résultats sont collectés dans l'onglet Sortie, mais en sélectionnant d'autres onglets, vous pouvez étudier le résultat obtenu plus en détail.

    • Ports/hôtes- Cet onglet affichera les analyses de ports, y compris les services exécutés sur ces ports.
    • Topologie- Affiche la trace de l'analyse effectuée. Vous pouvez voir combien de « sauts » sont nécessaires pour que vos données atteignent l'objectif souhaité.
    • Détails de l'hôte- montre informations complètes sur l'objectif, le nombre de ports, les adresses IP, les noms d'hôtes, les systèmes d'exploitation, etc.
    • Analyses- cet onglet enregistre l'historique de vos analyses précédentes. De cette façon, vous pouvez redémarrer rapidement une analyse effectuée dans le passé avec un ensemble spécifique de paramètres.

Utiliser la ligne de commande

  1. Installez Nmap. Nmap n'est pas grand et programme gratuit. Vous pouvez télécharger le programme depuis le site Web du développeur. Suivez les instructions en fonction de votre système d'exploitation :

    Ouvrez votre invite de commande. Les commandes Nmap fonctionnent à partir de la ligne de commande et affichent les résultats juste en dessous de la commande. Vous pouvez utiliser les options pour modifier la structure de l'analyse. Vous pouvez exécuter des analyses depuis n'importe quel endroit spécifié dans votre ligne de commande.

  2. Scannez les ports dont vous avez besoin. Pour démarrer une analyse simple, écrivez nmap . Cela commencera à envoyer une requête ping à la cible sélectionnée et aux ports d'analyse. Ce scan est très facile à reconnaître. Les résultats seront visibles sur votre écran. Vous devrez peut-être faire défiler vers le haut pour voir les résultats complets.

    • Selon le téléchargement et le but de votre analyse, l'utilisation de Nmap peut être contraire aux règles de votre FAI. Vérifiez toujours les règles des utilisateurs locaux lorsque vous utilisez Nmap lors d'une numérisation en dehors de votre propre réseau.
  3. Effectuez une analyse modifiée. Vous pouvez utiliser des variables de commande pour modifier les paramètres d'analyse, ce qui entraîne une analyse plus ou moins étendue. Vous pouvez ajouter plusieurs variables en laissant un espace entre chacune. Les variables sont placées avant la cible : nmap

    • -sS- Ceci est un scan SYN secret. Cette analyse est plus difficile à détecter qu’une analyse ordinaire, mais peut prendre plus de temps. La plupart des pare-feu les plus récents peuvent détecter l'analyse –sS.
    • -sn- C'est un scan ping. Cette analyse n'utilise pas la détection de port et vérifie uniquement l'état en ligne de la cible.
    • -O- Cette analyse détermine le type de système d'exploitation de la cible.
    • -UN- Cette variable inclut la détection d'informations plus complètes : système d'exploitation, version, scripts et trace.
    • -F- permet une analyse rapide et réduit le nombre de ports analysés.
    • -v- cette variable montre grande quantité les résultats de votre analyse, les rendant ainsi lisibles.
  4. Envoyez les résultats de votre analyse vers Fichier XML. Vous pouvez configurer la sortie des résultats de votre analyse dans un fichier XML et, par la suite, les ouvrir facilement dans n'importe quel navigateur Web. Pour ce faire, utilisez une variable -bœuf avec le nom du fichier pour sortir les données. La commande complète ressemble à ceci : nmap –oX ScanResults.xml .

    • Votre fichier XML sera enregistré dans le répertoire courant de votre ligne de commande.
  • Vous vous demandez comment se déroule l'analyse ? Appuyez sur la barre d'espace ou sur n'importe quel bouton pendant l'analyse pour afficher la progression de Nmap.
  • La cible ne répond pas ? Essayez d'ajouter la variable « -P0 » à votre analyse. En conséquence, l'analyse de Nmap commencera son travail même si le programme « pense » que la cible n'existe pas. Cela peut être utile lorsque l'ordinateur est protégé par un pare-feu.
  • Si votre analyse prend beaucoup de temps (plus de 20 minutes), essayez d'ajouter la variable « -F » afin que l'analyse Nmap n'affecte que les ports récemment utilisés.
Partager