Il s'agit de la commande nmap qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
nmap - Outil d'exploration de réseau et scanner de sécurité/port
SYNOPSIS
nmap [Scanner Type...] [Options] {l'objectif spécification}
DESCRIPTION
Nmap ("Network Mapper") est un outil open source pour l'exploration et la sécurité du réseau
l'audit. Il a été conçu pour analyser rapidement les grands réseaux, bien qu'il fonctionne bien contre
hôtes uniques. Nmap utilise des paquets IP bruts de nouvelles manières pour déterminer quels hôtes sont disponibles
sur le réseau, quels services (nom et version de l'application) ces hôtes offrent,
quels systèmes d'exploitation (et versions de système d'exploitation) ils exécutent, quel type de paquet
des filtres/pare-feu sont utilisés, et des dizaines d'autres caractéristiques. Alors que Nmap est généralement
utilisé pour les audits de sécurité, de nombreux administrateurs système et réseau le trouvent utile pour
tâches de routine telles que l'inventaire du réseau, la gestion des calendriers de mise à niveau des services et
surveillance de la disponibilité de l'hôte ou du service.
La sortie de Nmap est une liste de cibles scannées, avec des informations supplémentaires sur chaque
selon les options utilisées. La clé parmi ces informations est les « ports intéressants
table”.. Cette table répertorie le numéro de port et le protocole, le nom du service et l'état. le
l'état est soit ouvert, filtré, fermé ou non filtré. Ouvert. signifie qu'une demande
sur la machine cible écoute les connexions/paquets sur ce port. Filtré. veux dire
qu'un pare-feu, un filtre ou un autre obstacle réseau bloque le port de sorte que Nmap
ne peut pas dire s'il est ouvert ou fermé. Fermé. les ports n'ont aucune application à l'écoute
eux, bien qu'ils puissent s'ouvrir à tout moment. Les ports sont classés comme non filtrés. lorsque
ils répondent aux sondes de Nmap, mais Nmap ne peut pas déterminer s'ils sont ouverts ou
fermé. Nmap rapporte les combinaisons d'état open|filtered. et fermé|filtré. quand cela
ne peut pas déterminer lequel des deux états décrit un port. La table des ports peut également inclure
les détails de la version du logiciel lorsque la détection de la version a été demandée. Lorsqu'un protocole IP
l'analyse est demandée (-donc), Nmap fournit des informations sur les protocoles IP pris en charge plutôt que
ports d'écoute.
En plus de la table des ports intéressante, Nmap peut fournir de plus amples informations sur
cibles, y compris les noms DNS inversés, les suppositions du système d'exploitation, les types d'appareils et le MAC
Adresses.
Une analyse Nmap typique est illustrée dans l'exemple 1. Les seuls arguments Nmap utilisés dans cet exemple
-A, pour activer la détection du système d'exploitation et de la version, l'analyse des scripts et la traceroute ; -T4 pour
exécution plus rapide ; puis le nom d'hôte.
Exemple 1. A représentant Nmap balayage
# nmap -A -T4 scanme.nmap.org
Rapport d'analyse Nmap pour scanme.nmap.org (74.207.244.221)
L'hôte est en hausse (latence 0.029s).
Enregistrement rDNS pour 74.207.244.221 : li86-221.members.linode.com
Non illustré: 995 ports fermés
VERSION SERVICE DE L'ÉTAT DU PORT
22/tcp ouvert ssh OpenSSH 5.3p1 Debian 3ubuntu7 (protocole 2.0)
| ssh-hostkey: 1024 8d:60:f1:7c:ca:b7:3d:0a:d6:67:54:9d:69:d9:b9:dd (DSA)
|_2048 79:f8:09:ac:d4:e2:32:42:10:49:d3:bd:20:82:85:ec (RSA)
80/tcp ouvert http Apache httpd 2.2.14 ((Ubuntu))
|_http-title : Allez-y et ScanMe !
ldp filtré 646/tcp
1720/tcp filtré H.323/Q.931
9929/tcp ouvert nping-echo Nping echo
Type d'appareil : à usage général
Exécution : Linux 2.6.X
OS CPE : cpe:/o:linux:linux_kernel:2.6.39
Détails du système d'exploitation : Linux 2.6.39
Distance du réseau : 11 sauts
Informations sur le service : système d'exploitation : Linux ; CPE : cpe:/o:linux:kernel
TRACEROUTE (en utilisant le port 53/tcp)
ADRESSE HOP RTT
[Coupez les 10 premiers sauts par souci de concision]
11 17.65 ms li86-221.members.linode.com (74.207.244.221)
Nmap done: 1 adresse IP (1 hôte en place) scannée en 14.40 secondes
La dernière version de Nmap peut être obtenue à partir de https://nmap.org. La dernière version de
cette page de manuel est disponible sur https://nmap.org/book/man.html. Il est également inclus en tant que
chapitre de Nmap Network Scanning: The Official Nmap Project Guide to Network Discovery and
Analyse de sécurité (voir https://nmap.org/book/).
OPTIONS RÉSUMÉ
Ce résumé des options est imprimé lorsque Nmap est exécuté sans arguments et la dernière version
est toujours disponible sur https://svn.nmap.org/nmap/docs/nmap.usage.txt. ça aide les gens
mémoriser les options les plus courantes, mais ne remplace pas la documentation approfondie dans
le reste de ce manuel. Certaines options obscures ne sont même pas incluses ici.
Nmap 7.01 (https://nmap.org)
Utilisation : nmap [Type(s) de numérisation] [Options] {spécification de la cible}
SPÉCIFICATION CIBLE :
Peut transmettre des noms d'hôtes, des adresses IP, des réseaux, etc.
Exemples : scanme.nmap.org, microsoft.com/24, 192.168.0.1 ; 10.0.0-255.1-254
-iL : Entrée de la liste des hôtes/réseaux
-iR : Choisissez des cibles aléatoires
--exclure : Exclure les hôtes/réseaux
--excludefile : Exclure la liste du fichier
HTE DÉCOUVERTE :
-sL: List Scan - répertorie simplement les cibles à analyser
-sn: Ping Scan - désactiver l'analyse des ports
-Pn : traiter tous les hôtes comme en ligne – ignorer la découverte des hôtes
-PS/PA/PU/PY[portlist] : découverte TCP SYN/ACK, UDP ou SCTP vers des ports donnés
-PE/PP/PM : sondes de découverte de demande d'écho, d'horodatage et de masque de réseau ICMP
-PO [liste de protocoles] : ping du protocole IP
-n/-R : Ne jamais faire de résolution DNS/Toujours résoudre [par défaut : parfois]
--dns-serveurs : Spécifiez des serveurs DNS personnalisés
--system-dns : utiliser le résolveur DNS du système d'exploitation
--traceroute : tracer le chemin de saut vers chaque hôte
TECHNIQUES DE NUMÉRISATION :
-sS/sT/sA/sW/sM : scans TCP SYN/Connect()/ACK/Window/Maimon
-sU : analyse UDP
-sN/sF/sX : scans TCP Null, FIN et Noël
--scanflags : Personnaliser les indicateurs d'analyse TCP
-si : Balayage inactif
-sY/sZ : scans SCTP INIT/COOKIE-ECHO
-sO : analyse du protocole IP
-b : analyse de rebond FTP
SPÉCIFICATION DU PORT ET ORDRE DE NUMÉRISATION :
-p : analyser uniquement les ports spécifiés
Exemple : -p22 ; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
--exclude-ports : exclure les ports spécifiés de l'analyse
-F : Mode rapide - Scanne moins de ports que le scan par défaut
-r : analyse les ports consécutivement - ne pas randomiser
--top-ports : Analyse ports les plus courants
--port-ratio : Scan des ports plus courants que
DÉTECTION DE SERVICE/VERSION :
-sV : sonde les ports ouverts pour déterminer les informations sur le service/la version
--version-intensité : Réglez de 0 (clair) à 9 (essayez toutes les sondes)
--version-light : limite aux sondes les plus probables (intensité 2)
--version-all : essayez chaque sonde (intensité 9)
--version-trace : affiche l'activité d'analyse de version détaillée (pour le débogage)
NUMÉRISATION DE SCRIPT :
-sC : équivalent à --script=default
--script= : est une liste séparée par des virgules de
répertoires, fichiers de script ou catégories de script
--script-args= : fournir des arguments aux scripts
--script-args-file=filename : fournir les arguments du script NSE dans un fichier
--script-trace : affiche toutes les données envoyées et reçues
--script-updatedb : met à jour la base de données de scripts.
--script-help = : Affiche l'aide sur les scripts.
est une liste de fichiers script séparés par des virgules ou
script-catégories.
DÉTECTION DU SE :
-O : Activer la détection du système d'exploitation
--osscan-limit : limite la détection du système d'exploitation aux cibles prometteuses
--osscan-guess : Devinez le système d'exploitation de manière plus agressive
CALENDRIER ET PERFORMANCE :
Des options qui prennent sont en secondes, ou ajoutez 'ms' (millisecondes),
's' (secondes), 'm' (minutes) ou 'h' (heures) à la valeur (par exemple 30m).
-T<0-5> : définir le modèle de synchronisation (plus élevé est plus rapide)
--min-hostgroup/max-hostgroup : tailles des groupes d'analyse d'hôtes parallèles
--min-parallelism/max-parallelism : Parallélisation de la sonde
--min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout : spécifie
temps d'aller-retour de la sonde.
--max-tentatives : Limite le nombre de retransmissions de sonde de balayage de port.
--host-timeout : Abandonner la cible après ce long
--scan-delay/--max-scan-delay : Ajuster le délai entre les sondes
--min-taux : envoyer des paquets pas plus lentement que par seconde
--taux-max : envoyer des paquets pas plus vite que par seconde
ÉVASION PARE-FEU/IDS ET Usurpation d'identité :
-F; --mtu : fragments de paquets (éventuellement avec le MTU donné)
-RÉ : Masquer un scan avec des leurres
-S : Adresse source falsifiée
-e : Utiliser l'interface spécifiée
-g/--port-source : Utiliser le numéro de port donné
--proxy : Relayer les connexions via des proxys HTTP/SOCKS1
--Les données : ajouter une charge utile personnalisée aux paquets envoyés
--chaîne-de-données : ajouter une chaîne ASCII personnalisée aux paquets envoyés
--données-longueur : ajouter des données aléatoires aux paquets envoyés
--ip-options : envoyer des paquets avec les options IP spécifiées
--ttl : Définir le champ de durée de vie IP
--spoof-mac : usurper votre adresse MAC
--badsum : envoyer des paquets avec une fausse somme de contrôle TCP/UDP/SCTP
SORTIE:
-oN/-oX/-oS/-oG : Scan de sortie en normal, XML, s|
et Grepable, respectivement, au nom de fichier donné.
-oA : Sortie dans les trois principaux formats à la fois
-v : augmente le niveau de verbosité (utilisez -vv ou plus pour un meilleur effet)
-d : augmente le niveau de débogage (utilisez -dd ou plus pour un meilleur effet)
--reason : affiche la raison pour laquelle un port est dans un état particulier
--open : affiche uniquement les ports ouverts (ou éventuellement ouverts)
--packet-trace : affiche tous les paquets envoyés et reçus
--iflist : imprime les interfaces et les routes de l'hôte (pour le débogage)
--append-output : ajouter plutôt que supprimer les fichiers de sortie spécifiés
--continuer : reprendre une analyse interrompue
--feuille de style : feuille de style XSL pour transformer la sortie XML en HTML
--webxml : feuille de style de référence de Nmap.Org pour un XML plus portable
--no-stylesheet : empêche l'association de la feuille de style XSL avec la sortie XML
MISC:
-6 : Activer l'analyse IPv6
-A : Activer la détection du système d'exploitation, la détection de la version, l'analyse des scripts et la traceroute
--datadir : Spécifiez l'emplacement du fichier de données Nmap personnalisé
--send-eth/--send-ip : envoyer en utilisant des trames Ethernet brutes ou des paquets IP
--privileged : suppose que l'utilisateur est pleinement privilégié
--unprivileged : suppose que l'utilisateur n'a pas les privilèges de socket brut
-V : Imprimer le numéro de version
-h : imprime cette page récapitulative de l'aide.
EXEMPLES:
nmap -v -A scanme.nmap.org
nmap -v -sn 192.168.0.0/16 10.0.0.0/8
nmap -v -iR 10000 -Pn -p 80
VOIR LA PAGE DE MAN (https://nmap.org/book/man.html) POUR PLUS D'OPTIONS ET D'EXEMPLES
CIBLE CARACTÉRISTIQUES
Tout sur la ligne de commande Nmap qui n'est pas une option (ou un argument d'option) est traité
comme spécification d'hôte cible. Le cas le plus simple est de spécifier une adresse IP cible ou
nom d'hôte pour l'analyse.
Parfois, vous souhaitez analyser tout un réseau d'hôtes adjacents. Pour cela, Nmap prend en charge
à la CIDR. adressage. Vous pouvez ajouter /nombres vers une adresse IPv4 ou un nom d'hôte et Nmap
analysera chaque adresse IP pour laquelle le premier nombres sont les mêmes que pour la référence
IP ou nom d'hôte donné. Par exemple, 192.168.10.0/24 analyserait les 256 hôtes entre
192.168.10.0 (binaire : 11000000 10101000 00001010 00000000) et 192.168.10.255 (binaire :
11000000 10101000 00001010 11111111), inclus. 192.168.10.40/24 analyserait exactement le
mêmes cibles. Étant donné que l'hôte scanme.nmap.org. est à l'adresse IP 64.13.134.52, le
la spécification scanme.nmap.org/16 analyserait les 65,536 64.13.0.0 adresses IP entre XNUMX et
64.13.255.255. La plus petite valeur autorisée est /0, qui cible l'ensemble d'Internet. le
la plus grande valeur est /32, qui analyse uniquement l'hôte nommé ou l'adresse IP car toutes les adresses
les bits sont fixes.
La notation CIDR est courte mais pas toujours assez flexible. Par exemple, vous voudrez peut-être numériser
192.168.0.0/16 mais ignorez toutes les adresses IP se terminant par .0 ou .255 car elles peuvent être utilisées comme sous-réseau
adresses réseau et de diffusion. Nmap prend en charge cela via l'adressage par plage d'octets. Plutôt
que de spécifier une adresse IP normale, vous pouvez spécifier une liste de nombres séparés par des virgules ou
plages pour chaque octet. Par exemple, 192.168.0-255.1-254 ignorera toutes les adresses dans le
plage qui se termine par .0 ou .255, et 192.168.3-5,7.1 analysera les quatre adresses
192.168.3.1, 192.168.4.1, 192.168.5.1 et 192.168.7.1. L'un ou l'autre côté d'une plage peut être
omis; les valeurs par défaut sont 0 à gauche et 255 à droite. Utiliser - par lui-même est
le même que 0-255, mais n'oubliez pas d'utiliser 0- dans le premier octet afin que la spécification cible
ne ressemble pas à une option de ligne de commande. Les plages n'ont pas besoin d'être limitées aux derniers octets :
le spécificateur 0-255.0-255.13.37 effectuera une analyse à l'échelle d'Internet pour toutes les adresses IP
se terminant par 13.37. Ce type d'échantillonnage large peut être utile pour les enquêtes sur Internet et
recherche.
Les adresses IPv6 ne peuvent être spécifiées que par leur adresse IPv6 complète ou leur nom d'hôte.
Les plages CIDR et d'octets ne sont pas encore prises en charge pour IPv6.
Les adresses IPv6 avec une portée non globale doivent avoir un suffixe d'ID de zone. Sur les systèmes Unix, cela
est un signe de pourcentage suivi d'un nom d'interface ; une adresse complète peut être
fe80::a8bb:ccff:fedd:eeff%eth0. Sous Windows, utilisez un numéro d'index d'interface à la place d'un
nom de l'interface : fe80::a8bb:ccff:fedd:eeff%1. Vous pouvez voir une liste des index d'interface en
exécuter la commande netsh.exe interface ipv6 montrer interface.
Nmap accepte plusieurs spécifications d'hôte sur la ligne de commande, et elles n'ont pas besoin d'être
le même genre. La commande nmap scanme.nmap.org 192.168.0.0/8 10.0.0,1,3-7.- fait ce que tu
s'attendrait.
Alors que les cibles sont généralement spécifiées sur les lignes de commande, les options suivantes sont également
disponible pour contrôler la sélection de la cible :
-il nomfichier d'entrée (Entrée de la liste) .
Lit les spécifications de la cible à partir de nomfichier d'entrée. Passer une énorme liste d'hôtes est souvent
maladroit sur la ligne de commande, pourtant c'est un désir commun. Par exemple, votre serveur DHCP
peut exporter une liste de 10,000 XNUMX baux actuels que vous souhaitez analyser. Ou peut-être voulez-vous
pour analyser toutes les adresses IP sauf pour ceux qui recherchent des hôtes en utilisant une adresse IP statique non autorisée
adresses. Générez simplement la liste des hôtes à analyser et transmettez ce nom de fichier à Nmap en tant que
un argument à la -il option. Les entrées peuvent être dans l'un des formats acceptés par Nmap
sur la ligne de commande (adresse IP, nom d'hôte, CIDR, IPv6 ou plages d'octets). Chaque entrée
doivent être séparés par un ou plusieurs espaces, tabulations ou sauts de ligne. Vous pouvez spécifier un tiret
(-) comme nom de fichier si vous voulez que Nmap lise les hôtes à partir d'une entrée standard plutôt que d'un
fichier réel.
Le fichier d'entrée peut contenir des commentaires commençant par # et s'étendant jusqu'à la fin du
ligne.
-aller num hôtes (Choisissez des cibles aléatoires) .
Pour les sondages sur l'ensemble de l'Internet et d'autres recherches, vous pouvez choisir des cibles à
Aléatoire. le num hôtes L'argument indique à Nmap le nombre d'adresses IP à générer. IP indésirables
telles que celles de certaines plages d'adresses privées, multidiffusion ou non allouées sont
automatiquement ignoré. L'argument 0 peut être spécifié pour une analyse sans fin. Donjon
à l'esprit que certains administrateurs réseau se hérissent des analyses non autorisées de leurs
réseaux et peuvent se plaindre. Utilisez cette option à vos risques et périls ! Si tu te trouves
vraiment ennuyé un après-midi pluvieux, essayez la commande nmap - M -HH -p 80 -aller 0 --ouvert. à
localiser des serveurs Web aléatoires pour la navigation.
--exclure host1[,host2[,...]] (Exclure les hôtes/réseaux) .
Spécifie une liste de cibles séparées par des virgules à exclure de l'analyse même si elles
font partie de la plage réseau globale que vous spécifiez. La liste que vous transmettez utilise normalement
La syntaxe Nmap, elle peut donc inclure des noms d'hôtes, des netblocks CIDR, des plages d'octets, etc.
être utile lorsque le réseau que vous souhaitez numériser comprend des éléments critiques intouchables
serveurs, systèmes connus pour réagir négativement aux analyses de ports ou sous-réseaux
administré par d'autres personnes.
--exclure le fichier fichier_exclu (Exclure la liste du fichier) .
Celui-ci offre les mêmes fonctionnalités que le --exclure option, sauf que les exclus
les cibles sont fournies dans un saut de ligne, un espace ou une tabulation fichier_exclu plutôt que
sur la ligne de commande.
Le fichier d'exclusion peut contenir des commentaires commençant par # et s'étendant jusqu'à la fin du
ligne.
HÔTE DÉCOUVERTE
L'une des toutes premières étapes de toute mission de reconnaissance de réseau consiste à réduire un
(parfois énorme) ensemble de plages d'adresses IP dans une liste d'hôtes actifs ou intéressants. Balayage
chaque port de chaque adresse IP est lent et généralement inutile. Bien sur quoi
rend un hôte intéressant dépend grandement des objectifs de l'analyse. Les administrateurs réseau peuvent
ne s'intéresser qu'aux hôtes exécutant un certain service, tandis que les auditeurs de sécurité peuvent s'en soucier
sur chaque appareil avec une adresse IP. Un administrateur peut être à l'aise d'utiliser
juste un ping ICMP pour localiser les hôtes sur son réseau interne, tandis qu'une pénétration externe
le testeur peut utiliser un ensemble diversifié de dizaines de sondes pour tenter d'échapper au pare-feu
restrictions.
Parce que les besoins de découverte d'hôtes sont si divers, Nmap offre une grande variété d'options pour
personnaliser les techniques utilisées. La découverte d'hôte est parfois appelée analyse ping, mais elle va
bien au-delà des simples paquets de requête d'écho ICMP associés à l'outil ping omniprésent.
Les utilisateurs peuvent ignorer entièrement l'étape de ping avec une analyse de liste (-SH) ou en désactivant le ping (- M),
ou engager le réseau avec des combinaisons arbitraires de multi-port TCP SYN/ACK, UDP, SCTP
Sondes INIT et ICMP. Le but de ces sondes est de solliciter des réponses qui démontrent
qu'une adresse IP est réellement active (est utilisée par un hôte ou un périphérique réseau). sur de nombreux
réseaux, seul un petit pourcentage des adresses IP sont actives à un moment donné. C'est
particulièrement courant avec l'espace d'adressage privé tel que 10.0.0.0/8. Ce réseau compte 16
millions d'adresses IP, mais je l'ai vu utilisé par des entreprises avec moins d'un millier de machines. Héberger
la découverte peut trouver ces machines dans une mer d'adresses IP peu allouées.
Si aucune option de découverte d'hôte n'est donnée, Nmap envoie une requête d'écho ICMP, un paquet TCP SYN
vers le port 443, un paquet TCP ACK vers le port 80 et une demande d'horodatage ICMP. (Pour IPv6, le
La demande d'horodatage ICMP est omise car elle ne fait pas partie d'ICMPv6.) Ces valeurs par défaut sont
équivalent à la -LE PIED -PS443 -PA80 -PP option. Les exceptions à cette règle sont l'ARP (pour
IPv4) et découverte des voisins. (pour IPv6) scans qui sont utilisés pour toutes les cibles sur un local
réseau ethernet. Pour les utilisateurs non privilégiés du shell Unix, les sondes par défaut sont un paquet SYN
aux ports 80 et 443 en utilisant le Contact appel système.. Cette découverte d'hôte est souvent
suffisant lors de l'analyse des réseaux locaux, mais un ensemble plus complet de sondes de découverte
est recommandé pour l'audit de sécurité.
Votre -P* les options (qui sélectionnent les types de ping) peuvent être combinées. Vous pouvez augmenter vos chances de
pénétration de pare-feu stricts en envoyant de nombreux types de sondes à l'aide de différents ports/drapeaux TCP
et les codes ICMP. Notez également que ARP/Neighbor Discovery (-RP). est fait par défaut contre
cibles sur un réseau Ethernet local même si vous spécifiez d'autres -P* options, car c'est
presque toujours plus rapide et plus efficace.
Par défaut, Nmap fait la découverte d'hôte, puis effectue une analyse de port sur chaque hôte qu'il
détermine est en ligne. Ceci est vrai même si vous spécifiez des types de découverte d'hôte autres que ceux par défaut
telles que les sondes UDP (-unité centrale). Lisez à propos de - sn option pour apprendre à exécuter uniquement l'hôte
découverte ou utilisation - M pour ignorer la découverte d'hôte et analyser les ports de tous les hôtes cibles. Ce qui suit
les options contrôlent la découverte d'hôte :
-SH (Liste de balayage) .
L'analyse de liste est une forme dégénérée de découverte d'hôte qui répertorie simplement chaque hôte de
le ou les réseaux spécifiés, sans envoyer de paquets aux hôtes cibles. Par défaut,
Nmap effectue toujours une résolution DNS inversée sur les hôtes pour apprendre leurs noms. C'est souvent
surprenant la quantité d'informations utiles que les noms d'hôtes simples donnent. Par exemple, fw.chi
est le nom du pare-feu de Chicago d'une entreprise. Nmap rapporte également le nombre total de
Adresses IP à la fin. L'analyse de la liste est un bon contrôle d'intégrité pour s'assurer que vous avez
les adresses IP appropriées pour vos cibles. Si les hôtes arborent des noms de domaine que vous ne
reconnaître, il vaut la peine d'enquêter plus avant pour éviter de scanner la mauvaise entreprise
réseau.
Étant donné que l'idée est simplement d'imprimer une liste d'hôtes cibles, les options de niveau supérieur
les fonctionnalités telles que l'analyse des ports, la détection du système d'exploitation ou l'analyse ping ne peuvent pas être combinées
avec ça. Si vous souhaitez désactiver l'analyse ping tout en effectuant une telle
fonctionnalité de niveau, lisez sur le - M (ignorer le ping).
- sn (Pas d'analyse de port) .
Cette option indique à Nmap de ne pas effectuer d'analyse de port après la découverte de l'hôte et d'imprimer uniquement
les hôtes disponibles qui ont répondu aux sondes de découverte d'hôtes. C'est souvent connu
en tant que « scan ping », mais vous pouvez également demander que les scripts hôte traceroute et NSE soient
Cours. C'est par défaut une étape plus intrusive que l'analyse de liste, et peut souvent être
utilisé aux mêmes fins. Il permet une reconnaissance légère d'un réseau cible sans
attirer beaucoup d'attention. Savoir combien d'hôtes sont actifs est plus précieux pour les attaquants
que la liste fournie par l'analyse de liste de chaque adresse IP et nom d'hôte.
Les administrateurs système trouvent également souvent cette option intéressante. Il peut facilement être utilisé
pour compter les machines disponibles sur un réseau ou surveiller la disponibilité du serveur. C'est souvent
appelé un balayage ping, et est plus fiable que le ping de l'adresse de diffusion car
de nombreux hôtes ne répondent pas aux requêtes de diffusion.
La découverte d'hôte par défaut effectuée avec - sn consiste en une requête d'écho ICMP, TCP SYN à
port 443, TCP ACK sur le port 80 et une demande d'horodatage ICMP par défaut. Lorsqu'il est exécuté
par un utilisateur non privilégié, seuls les paquets SYN sont envoyés (à l'aide d'un Contact appel) vers les ports 80
et 443 sur la cible. Lorsqu'un utilisateur privilégié essaie d'analyser des cibles sur un
réseau Ethernet, les requêtes ARP sont utilisées sauf --envoyer-ip a été précisé. le - sn option
peut être combiné avec n'importe quel type de sonde de découverte (le -P* options, à l'exclusion - M)
pour une plus grande flexibilité. Si l'une de ces options de type de sonde et de numéro de port est utilisée,
les sondes par défaut sont remplacées. Lorsque des pare-feu stricts sont en place entre le
hôte source exécutant Nmap et le réseau cible, l'utilisation de ces techniques avancées est
conseillé. Sinon, des hôtes pourraient être manqués lorsque le pare-feu supprime les sondes ou leur
réponses
Dans les versions précédentes de Nmap, - sn était connu comme -sp..
- M (Pas de ping).
Cette option ignore complètement l'étape de découverte de Nmap. Normalement, Nmap utilise cette étape
pour déterminer les machines actives pour une analyse plus lourde. Par défaut, Nmap n'exécute que
sondages intensifs tels que les analyses de port, la détection de version ou la détection de système d'exploitation contre les hôtes
qui s'avèrent être en place. Désactiver la découverte d'hôte avec - M oblige Nmap à tenter le
fonctions d'analyse demandées par rapport chaque adresse IP cible spécifiée. Donc si une classe
L'espace d'adressage cible B (/16) est spécifié sur la ligne de commande, toutes les 65,536 XNUMX adresses IP
sont scannés. La découverte d'hôte appropriée est ignorée comme avec l'analyse de liste, mais au lieu de
arrêter et imprimer la liste des cibles, Nmap continue d'effectuer les fonctions demandées
comme si chaque IP cible était active. Pour ignorer l'analyse ping et analyse de port, tout en permettant
NSE à exécuter, utilisez les deux options - M - sn ensemble.
Pour les machines sur un réseau Ethernet local, l'analyse ARP sera toujours effectuée (sauf si
--disable-arp-ping or --envoyer-ip est spécifié) car Nmap a besoin d'adresses MAC pour
analyser davantage les hôtes cibles. Dans les versions précédentes de Nmap, - M était - P0. et -PN..
-PS port liste (Ping de synchronisation TCP) .
Cette option envoie un paquet TCP vide avec le drapeau SYN défini. La destination par défaut
le port est 80 (configurable au moment de la compilation en changeant DEFAULT_TCP_PROBE_PORT_SPEC. en
nmap.h).. Des ports alternatifs peuvent être spécifiés en tant que paramètre. La syntaxe est la même que
pour -p sauf que les spécificateurs de type de port comme T: ne sont pas autorisés. Les exemples sont
-PS22 et -PS22-25,80,113,1050,35000. Notez qu'il ne peut y avoir d'espace entre -PS et
la liste des ports. Si plusieurs sondes sont spécifiées, elles seront envoyées en parallèle.
L'indicateur SYN suggère au système distant que vous essayez d'établir un
lien. Normalement, le port de destination sera fermé et un paquet RST (réinitialisation)
renvoyé. Si le port est ouvert, la cible effectuera la deuxième étape d'un
Poignée de main TCP à trois voies. en répondant avec un paquet TCP SYN/ACK. La machine en marche
Nmap détruit ensuite la connexion naissante en répondant avec un RST plutôt que
l'envoi d'un paquet ACK qui terminerait la poignée de main à trois et établirait un
connexion complète. Le paquet RST est envoyé par le noyau de la machine exécutant Nmap dans
réponse au SYN/ACK inattendu, pas par Nmap lui-même.
Nmap ne se soucie pas de savoir si le port est ouvert ou fermé. Soit le RST ou SYN/ACK
La réponse discutée précédemment indique à Nmap que l'hôte est disponible et réactif.
Sur les box Unix, seul l'utilisateur privilégié root. est généralement capable d'envoyer et de recevoir
paquets TCP bruts. Pour les utilisateurs non privilégiés, une solution de contournement est automatiquement utilisée.
par lequel le Contact l'appel système est lancé sur chaque port cible. Cela a le
effet de l'envoi d'un paquet SYN à l'hôte cible, dans le but d'établir un
lien. Si Contact revient avec un succès rapide ou un échec ECONNREFUSED, le
la pile TCP sous-jacente doit avoir reçu un SYN/ACK ou un RST et l'hôte est marqué
disponible. Si la tentative de connexion est suspendue jusqu'à ce qu'un délai d'expiration soit atteint, le
l'hôte est marqué comme étant en panne.
-PENNSYLVANIE port liste (Ping de confirmation TCP) .
Le ping TCP ACK est assez similaire au ping SYN dont nous venons de parler. La différence, comme
vous pouvez probablement le deviner, c'est que le drapeau TCP ACK est défini à la place du drapeau SYN. Tel
un paquet ACK prétend reconnaître des données sur une connexion TCP établie,
mais une telle connexion n'existe pas. Les hôtes distants doivent donc toujours répondre avec un RST
paquet, révélant leur existence dans le processus.
Votre -PENNSYLVANIE L'option utilise le même port par défaut que la sonde SYN (80) et peut également prendre un
liste des ports de destination dans le même format. Si un utilisateur non privilégié essaie cela, le
Contact La solution de contournement discutée précédemment est utilisée. Cette solution de contournement est imparfaite car
Contact envoie en fait un paquet SYN plutôt qu'un ACK.
La raison d'offrir à la fois des sondes ping SYN et ACK est de maximiser les chances de
contourner les pare-feu. De nombreux administrateurs configurent des routeurs et d'autres pare-feu simples
bloquer les paquets SYN entrants sauf ceux destinés aux services publics comme le
site Web ou serveur de messagerie de l'entreprise. Cela empêche d'autres connexions entrantes au
organisation, tout en permettant aux utilisateurs d'établir des connexions sortantes sans obstruction vers le
L'Internet. Cette approche sans état utilise peu de ressources sur le pare-feu/routeur et
est largement pris en charge par les filtres matériels et logiciels. Le Netfilter/iptables Linux.
le logiciel de pare-feu offre la --syn option de commodité pour implémenter ce stateless
approcher. Lorsque des règles de pare-feu sans état comme celle-ci sont en place, les sondes SYN ping
(-PS) sont susceptibles d'être bloqués lorsqu'ils sont envoyés vers des ports cibles fermés. Dans de tels cas, le
La sonde ACK brille car elle traverse ces règles.
Un autre type courant de pare-feu utilise des règles avec état qui suppriment les paquets inattendus. Cette
fonction a été initialement trouvée principalement sur les pare-feu haut de gamme, bien qu'elle soit devenue beaucoup
plus fréquent au fil des ans. Le système Linux Netfilter/iptables prend en charge cela via
le --Etat option, qui classe les paquets en fonction de l'état de la connexion. Une sonde SYN
est plus susceptible de fonctionner contre un tel système, car les paquets ACK inattendus sont généralement
reconnu comme faux et abandonné. Une solution à ce dilemme consiste à envoyer à la fois SYN et
ACK sondes en spécifiant -PS et -PENNSYLVANIE.
-unité centrale port liste (Ping UDP) .
Une autre option de découverte d'hôte est le ping UDP, qui envoie un paquet UDP au
ports. Pour la plupart des ports, le paquet sera vide, bien que certains utilisent un protocole spécifique
charge utile qui est plus susceptible de susciter une réponse. La base de données de charge utile est décrite
at https://nmap.org/book/nmap-payloads.html.. --Les données, --chaîne-de-données et
--données-longueur options.
La liste des ports prend le même format que celle décrite précédemment -PS et -PENNSYLVANIE
option. Si aucun port n'est spécifié, la valeur par défaut est 40125.. Cette valeur par défaut peut être
configuré à la compilation en modifiant DEFAULT_UDP_PROBE_PORT_SPEC. dans nmap.h.. A
un port très rare est utilisé par défaut car l'envoi vers des ports ouverts est souvent
indésirables pour ce type d'analyse particulier.
En frappant un port fermé sur la machine cible, la sonde UDP doit déclencher un ICMP
port inaccessible en retour. Cela signifie à Nmap que la machine est en marche et
disponible. De nombreux autres types d'erreurs ICMP, telles que les hôtes/réseaux inaccessibles ou TTL
dépassées indiquent un hôte en panne ou inaccessible. L'absence de réponse est également
interprété de cette façon. Si un port ouvert est atteint, la plupart des services ignorent simplement le
paquet vide et ne renvoie aucune réponse. C'est pourquoi le port de sonde par défaut est
40125, qui est très peu susceptible d'être utilisé. Quelques services, comme le Character
Protocole générateur (chargé), répondra à un paquet UDP vide, et divulguera ainsi
à Nmap que la machine est disponible.
Le principal avantage de ce type d'analyse est qu'il contourne les pare-feu et les filtres qui
seul écran TCP. Par exemple, j'ai déjà possédé un haut débit sans fil Linksys BEFW11S4
routeur. L'interface externe de cet appareil a filtré tous les ports TCP par défaut, mais
Les sondes UDP provoqueraient toujours des messages de port inaccessibles et ainsi donneraient le périphérique.
-PY port liste (Ping SCTP INIT) .
Cette option envoie un paquet SCTP contenant un fragment INIT minimal. Le défaut
le port de destination est 80 (configurable au moment de la compilation en changeant
DEFAULT_SCTP_PROBE_PORT_SPEC. dans nmap.h). Des ports alternatifs peuvent être spécifiés comme
paramètre. La syntaxe est la même que pour le -p sauf que les spécificateurs de type de port comme
S : ne sont pas autorisés. Les exemples sont -PY22 et -PY22,80,179,5060. Notez qu'il peut y avoir
pas d'espace entre -PY et la liste des ports. Si plusieurs sondes sont spécifiées, elles seront
envoyé en parallèle.
Le bloc INIT suggère au système distant que vous essayez d'établir un
association. Normalement, le port de destination sera fermé et un morceau ABORT sera
renvoyé. Si le port est ouvert, la cible effectuera la deuxième étape d'un
Poignée de main à quatre voies SCTP. en répondant avec un bloc INIT-ACK. Si la machine en marche
Nmap a une pile SCTP fonctionnelle, puis il détruit l'association naissante en
répondre avec un morceau ABORT plutôt que d'envoyer un morceau COOKIE-ECHO qui serait
la prochaine étape de la poignée de main à quatre. Le paquet ABORT est envoyé par le noyau du
machine exécutant Nmap en réponse à l'INIT-ACK inattendu, pas par Nmap lui-même.
Nmap ne se soucie pas de savoir si le port est ouvert ou fermé. Soit l'ABORT ou INIT-ACK
La réponse discutée précédemment indique à Nmap que l'hôte est disponible et réactif.
Sur les box Unix, seul l'utilisateur privilégié root. est généralement capable d'envoyer et de recevoir
paquets SCTP bruts. L'utilisation de SCTP INIT Pings n'est actuellement pas possible pour les non-privilégiés
utilisateurs..
-LE PIED; -PP; -PM (Types de ping ICMP) .
En plus des types inhabituels de découverte d'hôte TCP, UDP et SCTP discutés
auparavant, Nmap pouvait envoyer les paquets standard envoyés par le programme ping omniprésent.
Nmap envoie un paquet ICMP de type 8 (requête d'écho) aux adresses IP cibles, en attendant
un type 0 (réponse d'écho) en retour des hôtes disponibles. Malheureusement pour le réseau
explorateurs, de nombreux hôtes et pare-feu bloquent désormais ces paquets, plutôt que de répondre comme
requis par RFC 1122[2].. Pour cette raison, les analyses uniquement ICMP sont rarement suffisamment fiables
contre des cibles inconnues sur Internet. Mais pour les administrateurs système surveillant un
réseau interne, ils peuvent constituer une approche pratique et efficace. Utilisez le -LE PIED option
pour activer ce comportement de demande d'écho.
Alors que la requête d'écho est la requête ping ICMP standard, Nmap ne s'arrête pas là. L'ICMP
normes (RFC 792[3]. et RFC 950[4]. ) spécifiez également la demande d'horodatage, les informations
requête et les paquets de requête de masque d'adresse en tant que codes 13, 15 et 17, respectivement. Tandis que
le but apparent de ces requêtes est d'apprendre des informations telles que les masques d'adresse
et les temps actuels, ils peuvent facilement être utilisés pour la découverte d'hôtes. Un système qui répond
est en place et disponible. Nmap n'implémente actuellement pas de paquets de demande d'informations, car
ils ne sont pas largement soutenus. La RFC 1122 insiste sur le fait qu'« un hôte NE DEVRAIT PAS implémenter
ces messages ». Les requêtes d'horodatage et de masque d'adresse peuvent être envoyées avec le -PP et -PM
options, respectivement. Une réponse d'horodatage (code ICMP 14) ou une réponse de masque d'adresse (code
18) révèle que l'hôte est disponible. Ces deux requêtes peuvent être utiles lorsque
les administrateurs bloquent spécifiquement les paquets de demande d'écho tout en oubliant que d'autres
Les requêtes ICMP peuvent être utilisées dans le même but.
-PEU protocole liste (Ping du protocole IP) .
L'une des nouvelles options de découverte d'hôte est le ping du protocole IP, qui envoie l'IP
paquets avec le numéro de protocole spécifié défini dans leur en-tête IP. La liste des protocoles
prend le même format que les listes de ports dans les protocoles TCP, UDP et SCTP discutés précédemment
options de découverte d'hôte. Si aucun protocole n'est spécifié, la valeur par défaut est d'envoyer plusieurs
Paquets IP pour ICMP (protocole 1), IGMP (protocole 2) et IP-in-IP (protocole 4). le
les protocoles par défaut peuvent être configurés au moment de la compilation en modifiant
DEFAULT_PROTO_PROBE_PORT_SPEC. dans nmap.h. A noter que pour les ICMP, IGMP, TCP (protocole
6), UDP (protocole 17) et SCTP (protocole 132), les paquets sont envoyés avec le bon
en-têtes de protocole. tandis que d'autres protocoles sont envoyés sans données supplémentaires au-delà de la
En-tête IP (à moins que l'un des --Les données, --chaîne-de-données, ou --données-longueur les options sont
spécifié).
Cette méthode de découverte d'hôte recherche l'une ou l'autre des réponses en utilisant le même protocole qu'un
sonde, ou protocole ICMP messages inaccessibles qui signifient que le protocole donné
n'est pas pris en charge sur l'hôte de destination. L'un ou l'autre type de réponse signifie que le
l'hôte cible est vivant.
-RP (Ping ARP) .
L'un des scénarios d'utilisation de Nmap les plus courants consiste à analyser un réseau local Ethernet. Sur la plupart des réseaux locaux,
en particulier ceux qui utilisent des plages d'adresses privées spécifiées par RFC 1918[5], le vaste
la majorité des adresses IP sont inutilisées à un moment donné. Quand Nmap essaie d'envoyer un raw
paquet IP tel qu'une demande d'écho ICMP, le système d'exploitation doit déterminer le
adresse matérielle de destination (ARP) correspondant à l'adresse IP cible afin qu'elle puisse
adresser correctement la trame Ethernet. Ceci est souvent lent et problématique, car
les systèmes d'exploitation n'ont pas été écrits dans l'attente d'avoir besoin de le faire
des millions de requêtes ARP contre des hôtes indisponibles sur une courte période.
Le scan ARP met Nmap et ses algorithmes optimisés en charge des requêtes ARP. Et s'il
obtient une réponse, Nmap n'a même pas besoin de s'inquiéter des paquets ping basés sur IP
puisqu'il sait déjà que l'hôte est actif. Cela rend l'analyse ARP beaucoup plus rapide et plus
fiable que les analyses basées sur IP. C'est donc fait par défaut lors de l'analyse des hôtes Ethernet
que Nmap détecte sont sur un réseau Ethernet local. Même si différents types de ping (tels que
as -LE PIED or -PS) sont spécifiés, Nmap utilise ARP à la place pour toutes les cibles qui sont
sur le même réseau local. Si vous ne voulez absolument pas faire de scan ARP, précisez
--disable-arp-ping.
Pour IPv6 (option -6), -RP utilise ICMPv6 Neighbor Discovery au lieu d'ARP. Voisine
La découverte, définie dans la RFC 4861, peut être considérée comme l'équivalent IPv6 d'ARP.
--disable-arp-ping (Pas d'ARP ou de ND Ping) .
Nmap effectue normalement la découverte ARP ou IPv6 Neighbor Discovery (ND) des connexions locales
hôtes Ethernet, même si d'autres options de découverte d'hôte telles que - M or -LE PIED sont utilisés. À
désactiver ce comportement implicite, utilisez le --disable-arp-ping option.
Le comportement par défaut est normalement plus rapide, mais cette option est utile sur les réseaux utilisant
proxy ARP, dans lequel un routeur répond de manière spéculative à toutes les requêtes ARP, ce qui rend chaque
la cible semble être en place selon l'analyse ARP.
--traceroute (Tracer le chemin vers l'hôte) .
Les traceroutes sont effectuées après l'analyse en utilisant les informations des résultats de l'analyse pour
déterminer le port et le protocole les plus susceptibles d'atteindre la cible. ça marche avec tout
types d'analyse à l'exception des analyses de connexion (-St) et les analyses inactives (-si). Toutes les traces utilisent Nmap
modèle de synchronisation dynamique et sont effectuées en parallèle.
Traceroute fonctionne en envoyant des paquets avec un faible TTL (durée de vie) pour tenter de
obtenir des messages ICMP Time Exceeded des sauts intermédiaires entre le scanner et le
hôte cible. Les implémentations de traceroute standard commencent par un TTL de 1 et s'incrémentent
le TTL jusqu'à ce que l'hôte de destination soit atteint. Le traceroute de Nmap commence par un haut
TTL puis décrémente le TTL jusqu'à ce qu'il atteigne zéro. Le faire à l'envers permet à Nmap
employez des algorithmes de mise en cache intelligents pour accélérer les traces sur plusieurs hôtes. En moyenne
Nmap envoie 5 à 10 paquets de moins par hôte, selon les conditions du réseau. Si un seul
le sous-réseau est en cours d'analyse (c'est-à-dire 192.168.0.0/24) Nmap n'aura peut-être à envoyer que deux paquets
à la plupart des hôtes.
-n (Pas de résolution DNS) .
Dit à Nmap de jamais inverser la résolution DNS sur les adresses IP actives qu'il trouve.
Étant donné que DNS peut être lent même avec le résolveur de stub parallèle intégré de Nmap, cette option
peut réduire les temps de numérisation.
-R (résolution DNS pour toutes les cibles) .
Dit à Nmap de toujours inversez la résolution DNS sur les adresses IP cibles. Normalement
Le DNS inversé n'est effectué que contre des hôtes réactifs (en ligne).
--système-dns (Utilisez le résolveur DNS du système) .
Par défaut, Nmap résout les adresses IP en envoyant des requêtes directement aux serveurs de noms
configuré sur votre hôte, puis à l'écoute des réponses. De nombreuses demandes (souvent des dizaines)
sont effectués en parallèle pour améliorer les performances. Spécifiez cette option pour utiliser votre
résolveur système à la place (une IP à la fois via le obtenirnominfo appeler). C'est plus lent
et rarement utile à moins que vous ne trouviez un bogue dans le résolveur parallèle Nmap (veuillez nous
sachez si vous le faites). Le résolveur système est toujours utilisé pour les analyses IPv6.
--dns-serveurs server1[,server2[,...]] (Serveurs à utiliser pour les requêtes DNS inversées) .
Par défaut, Nmap détermine vos serveurs DNS (pour la résolution rDNS) à partir de votre
resolv.conf (Unix) ou le Registre (Win32). Alternativement, vous pouvez utiliser ce
option pour spécifier des serveurs alternatifs. Cette option n'est pas honorée si vous utilisez
--système-dns ou une analyse IPv6. L'utilisation de plusieurs serveurs DNS est souvent plus rapide, en particulier
si vous choisissez des serveurs faisant autorité pour votre espace IP cible. Cette option peut également
améliorer la furtivité, car vos demandes peuvent être renvoyées à peu près n'importe quel DNS récursif
serveur sur Internet.
Cette option est également utile lors de l'analyse des réseaux privés. Parfois seulement quelques
les serveurs de noms fournissent des informations rDNS appropriées, et vous ne savez peut-être même pas où ils
sont. Vous pouvez rechercher le port 53 sur le réseau (peut-être avec détection de version), puis essayez
Analyses de liste Nmap (-SH) en spécifiant chaque serveur de noms un par un avec --dns-serveurs
jusqu'à ce que vous en trouviez un qui fonctionne.
PORT BALAYAGE BASIQUE
Alors que Nmap a augmenté en fonctionnalités au fil des ans, il a commencé comme un port efficace
scanner, et cela reste sa fonction principale. La commande simple nmap l'objectif scanne 1,000 XNUMX
Ports TCP sur l'hôte l'objectif. Alors que de nombreux scanners de ports ont traditionnellement regroupé tous les ports
dans les états ouverts ou fermés, Nmap est beaucoup plus granulaire. Il divise les ports en six
états : ouvert, fermé, filtré, non filtré, ouvert|filtré ou fermé|filtré.
Ces états ne sont pas des propriétés intrinsèques du port lui-même, mais décrivent comment Nmap voit
eux. Par exemple, une analyse Nmap du même réseau que la cible peut afficher le port 135/tcp
comme ouvert, tout en scannant en même temps avec les mêmes options sur Internet
peut afficher ce port comme filtré.
Votre six port Etats reconnu by Nmap
Une application accepte activement les connexions TCP, les datagrammes UDP ou SCTP
associations sur ce port. Les trouver est souvent l'objectif principal de l'analyse des ports.
Les personnes soucieuses de la sécurité savent que chaque port ouvert est une voie d'attaque. Les attaquants et
les pen-testeurs veulent exploiter les ports ouverts, tandis que les administrateurs essaient de fermer ou
protégez-les avec des pare-feu sans contrecarrer les utilisateurs légitimes. Les ports ouverts sont également
intéressant pour les analyses non liées à la sécurité car elles montrent les services disponibles pour une utilisation sur le
réseau.
Un port fermé est accessible (il reçoit et répond aux paquets de sonde Nmap), mais
il n'y a pas d'application qui l'écoute. Ils peuvent être utiles pour montrer qu'un hôte est
sur une adresse IP (détection d'hôte ou analyse ping) et dans le cadre de la détection du système d'exploitation.
Étant donné que les ports fermés sont accessibles, il peut être utile de les analyser plus tard au cas où certains s'ouvriraient.
en haut. Les administrateurs peuvent envisager de bloquer ces ports avec un pare-feu. Puis ils
apparaîtrait dans l'état filtré, discuté ensuite.
Nmap ne peut pas déterminer si le port est ouvert car le filtrage de paquets empêche son
sondes d'atteindre le port. Le filtrage peut provenir d'un pare-feu dédié
périphérique, des règles de routeur ou un logiciel de pare-feu basé sur l'hôte. Ces ports frustrent les attaquants
parce qu'ils fournissent si peu d'informations. Parfois, ils répondent avec une erreur ICMP
messages de type 3 code 13 (destination inaccessible : communication
administrativement interdit), mais des filtres qui abandonnent simplement les sondes sans répondre
sont beaucoup plus fréquents. Cela force Nmap à réessayer plusieurs fois au cas où la sonde
a été abandonné en raison de la congestion du réseau plutôt que du filtrage. Cela ralentit le scan
de façon spectaculaire.
L'état non filtré signifie qu'un port est accessible, mais Nmap est incapable de déterminer
qu'il soit ouvert ou fermé. Seul le scan ACK, qui est utilisé pour mapper le pare-feu
ensembles de règles, classe les ports dans cet état. Analyse des ports non filtrés avec une autre analyse
des types tels que l'analyse Windows, l'analyse SYN ou l'analyse FIN, peuvent aider à déterminer si le port est
ouverte.
Nmap place les ports dans cet état lorsqu'il est incapable de déterminer si un port est ouvert
ou filtré. Cela se produit pour les types d'analyse dans lesquels les ports ouverts ne donnent aucune réponse. Le manque
de réponse pourrait également signifier qu'un filtre de paquets a abandonné la sonde ou toute réponse qu'il
suscité. Ainsi, Nmap ne sait pas avec certitude si le port est ouvert ou filtré.
Les analyses UDP, IP protocol, FIN, NULL et Xmas classent les ports de cette façon.
Cet état est utilisé lorsque Nmap est incapable de déterminer si un port est fermé ou
filtré. Il n'est utilisé que pour l'analyse inactive de l'ID IP.
PORT BALAYAGE TECHNIQUES
En tant que novice en réparation automobile, je peux lutter pendant des heures pour essayer d'adapter mon
outils rudimentaires (marteau, ruban adhésif, clé, etc.) à la tâche à accomplir. Quand j'échoue
misérablement et remorquer ma bagnole à un vrai mécanicien, il pêche invariablement dans un énorme outil
poitrine jusqu'à sortir le gadget parfait qui rend le travail sans effort. L'art de
l'analyse des ports est similaire. Les experts comprennent les dizaines de techniques de numérisation et choisissent le
une (ou une combinaison) appropriée pour une tâche donnée. Utilisateurs et script inexpérimentés
les gosses,. d'autre part, essayez de résoudre tous les problèmes avec le scan SYN par défaut. Puisque
Nmap est gratuit, la seule barrière à la maîtrise de l'analyse des ports est la connaissance. Cela bat certainement
le monde de l'automobile, où il peut prendre une grande habileté pour déterminer que vous avez besoin d'une jambe de force
compresseur à ressort, vous devez encore payer des milliers de dollars pour cela.
La plupart des types d'analyse ne sont disponibles que pour les utilisateurs privilégiés. C'est parce qu'ils envoient
et recevoir des paquets bruts,. qui nécessite un accès root sur les systèmes Unix. À l'aide d'un
compte administrateur sur Windows est recommandé, bien que Nmap fonctionne parfois pour
utilisateurs non privilégiés sur cette plate-forme lorsque WinPcap a déjà été chargé dans le système d'exploitation.
Exiger des privilèges root était une limitation sérieuse lors de la sortie de Nmap en 1997, car de nombreux
les utilisateurs n'avaient accès qu'aux comptes shell partagés. Maintenant, le monde est différent. Les ordinateurs sont
moins cher, beaucoup plus de personnes ont un accès Internet direct permanent et des systèmes Unix de bureau
(y compris Linux et Mac OS X) sont répandus. Une version Windows de Nmap est désormais disponible,
lui permettant de s'exécuter sur encore plus de postes de travail. Pour toutes ces raisons, les utilisateurs ont moins besoin de
exécutez Nmap à partir de comptes shell partagés limités. C'est une chance, car les options privilégiées
rendre Nmap beaucoup plus puissant et flexible.
Bien que Nmap tente de produire des résultats précis, gardez à l'esprit que toutes ses informations sont
en fonction des paquets renvoyés par les machines cibles (ou les pare-feux devant eux). Tel
les hôtes peuvent ne pas être dignes de confiance et envoyer des réponses destinées à embrouiller ou induire Nmap en erreur. Beaucoup
les hôtes non conformes aux RFC qui ne répondent pas comme ils le devraient aux sondes Nmap sont plus courants.
Les analyses FIN, NULL et Xmas sont particulièrement sensibles à ce problème. De tels problèmes sont
spécifiques à certains types d'analyse et sont donc abordés dans les entrées de type d'analyse individuelles.
Cette section documente la douzaine de techniques de scan de ports supportées par Nmap. Seulement un
méthode peut être utilisée à la fois, sauf que l'analyse UDP (-su) et l'un des scans SCTP
les types (-sY, -sZ) peut être combiné avec l'un des types de scan TCP. Comme aide-mémoire, le port
les options de type d'analyse sont de la forme -sC, Où C est un caractère important dans le nom du scan,
généralement le premier. La seule exception à cette règle est l'analyse de rebond FTP obsolète (-b). Par
par défaut, Nmap effectue un scan SYN, bien qu'il substitue un scan de connexion si l'utilisateur le fait
ne pas avoir les privilèges appropriés pour envoyer des paquets bruts (nécessite un accès root sur Unix). Du
scans répertoriés dans cette section, les utilisateurs non privilégiés peuvent uniquement exécuter la connexion et le rebond FTP
balayages.
-HH (Analyse TCP SYN) .
L'analyse SYN est l'option d'analyse par défaut et la plus populaire pour de bonnes raisons. Ça peut être
effectuée rapidement, en scannant des milliers de ports par seconde sur un réseau rapide non
entravés par des pare-feu restrictifs. Il est également relativement discret et furtif
car il ne termine jamais les connexions TCP. Le scan SYN fonctionne contre tout TCP conforme
pile plutôt que de dépendre des particularités de plates-formes spécifiques comme Nmap
FIN/NULL/Xmas, Maimon et les analyses inactives le font. Il permet également clair, fiable
différenciation entre les états ouvert, fermé et filtré.
Cette technique est souvent appelée numérisation semi-ouverte, car vous n'ouvrez pas un
connexion TCP complète. Vous envoyez un paquet SYN, comme si vous alliez ouvrir un vrai
connexion, puis attendez une réponse. Un SYN/ACK indique que le port est à l'écoute
(ouvert), tandis qu'un RST (réinitialisation) indique un non-auditeur. Si aucune réponse n'est
reçu après plusieurs retransmissions, le port est marqué comme filtré. Le port est
également marqué filtré si une erreur ICMP inaccessible (type 3, code 0, 1, 2, 3, 9, 10 ou
13) est reçu. Le port est également considéré comme ouvert si un paquet SYN (sans l'ACK
flag) est reçu en réponse. Cela peut être dû à une fonctionnalité TCP extrêmement rare connue
en tant que connexion de poignée de main ouverte ou divisée (voir
https://nmap.org/misc/split-handshake.pdf).
-St (Analyse de connexion TCP) .
L'analyse de connexion TCP est le type d'analyse TCP par défaut lorsque l'analyse SYN n'est pas une option. C'est
le cas lorsqu'un utilisateur n'a pas de privilèges de paquets bruts. Au lieu d'écrire brut
paquets comme le font la plupart des autres types d'analyse, Nmap demande au système d'exploitation sous-jacent de
établir une connexion avec la machine et le port cibles en émettant le Contact Système
appeler. Il s'agit du même appel système de haut niveau que les navigateurs Web, les clients P2P et la plupart des
d'autres applications compatibles avec le réseau utilisent pour établir une connexion. Il fait partie d'un
interface de programmation connue sous le nom de Berkeley Sockets API. Plutôt que de lire le paquet brut
réponses sur le fil, Nmap utilise cette API pour obtenir des informations d'état sur chaque
tentative de connexion.
Lorsque le scan SYN est disponible, c'est généralement un meilleur choix. Nmap a moins de contrôle sur
le haut niveau Contact call qu'avec des paquets bruts, ce qui le rend moins efficace. le
l'appel système termine les connexions vers les ports cibles ouverts plutôt que d'effectuer le
réinitialisation à moitié ouverte que fait le scan SYN. Non seulement cela prend plus de temps et nécessite plus
paquets pour obtenir les mêmes informations, mais les machines cibles sont plus susceptibles d'enregistrer les
lien. Un IDS décent attrapera non plus, mais la plupart des machines n'ont pas une telle alarme
système. De nombreux services sur votre système Unix moyen ajouteront une note à syslog, et
parfois un message d'erreur cryptique, lorsque Nmap se connecte puis ferme la connexion
sans envoyer de données. Des services vraiment pathétiques se bloquent lorsque cela se produit, bien que ce soit
rare. Un administrateur qui voit un tas de tentatives de connexion dans ses journaux à partir d'un
système unique doit savoir qu'elle a été connectée scannée.
-su (analyses UDP) .
Alors que les services les plus populaires sur Internet fonctionnent sur le protocole TCP, UDP[6] prestations
sont largement déployés. DNS, SNMP et DHCP (ports enregistrés 53, 161/162 et 67/68) sont
trois des plus courantes. Parce que l'analyse UDP est généralement plus lente et plus difficile
que TCP, certains auditeurs de sécurité ignorent ces ports. C'est une erreur, car exploitable
Les services UDP sont assez courants et les attaquants n'ignorent certainement pas l'ensemble du protocole.
Heureusement, Nmap peut aider à inventorier les ports UDP.
Le scan UDP est activé avec le -su option. Il peut être combiné avec un type de scan TCP
tels que le scan SYN (-HH) pour vérifier les deux protocoles au cours de la même exécution.
L'analyse UDP fonctionne en envoyant un paquet UDP à chaque port ciblé. Pour certains ports courants
tels que 53 et 161, une charge utile spécifique au protocole est envoyée pour augmenter le taux de réponse, mais
pour la plupart des ports, le paquet est vide à moins que le --Les données, --chaîne-de-données, ou --données-longueur
les options sont spécifiées. Si une erreur de port ICMP inaccessible (type 3, code 3) est renvoyée,
le port est fermé. Autres erreurs ICMP inaccessibles (type 3, codes 0, 1, 2, 9, 10 ou
13) marquez le port comme filtré. Parfois, un service répondra avec un paquet UDP,
prouver qu'il est ouvert. Si aucune réponse n'est reçue après les retransmissions, le port est
classé comme ouvert|filtré. Cela signifie que le port peut être ouvert, ou peut-être un paquet
les filtres bloquent la communication. Détection de version (-sV) peut être utilisé pour aider
différencier les ports vraiment ouverts de ceux filtrés.
Un grand défi avec l'analyse UDP est de le faire rapidement. Ports ouverts et filtrés rarement
envoyer n'importe quelle réponse, laissant Nmap expirer, puis effectuer des retransmissions juste dans
en cas de perte de la sonde ou de la réponse. Les ports fermés sont souvent un problème encore plus important.
Ils renvoient généralement une erreur de port ICMP inaccessible. Mais contrairement aux paquets RST envoyés
par des ports TCP fermés en réponse à une analyse SYN ou de connexion, de nombreux hôtes limitent le débit. ICMP
port des messages inaccessibles par défaut. Linux et Solaris sont particulièrement stricts sur
cette. Par exemple, le noyau Linux 2.4.20 limite les messages de destination inaccessibles à
un par seconde (dans net/ipv4/icmp.c).
Nmap détecte la limitation du débit et ralentit en conséquence pour éviter d'inonder le réseau
avec des paquets inutiles que la machine cible va supprimer. Malheureusement, un style Linux
La limite d'un paquet par seconde fait qu'une analyse de 65,536 18 ports prend plus de XNUMX heures. Idées
pour accélérer vos analyses UDP, incluez l'analyse de plus d'hôtes en parallèle, en faisant un rapide
analyse d'abord uniquement les ports populaires, en analysant derrière le pare-feu et en utilisant
--hôte-timeout pour ignorer les hôtes lents.
-sY (balayage SCTP INIT) .
SCTP[7] est une alternative relativement nouvelle aux protocoles TCP et UDP, combinant la plupart des
caractéristiques de TCP et UDP, ainsi que l'ajout de nouvelles fonctionnalités telles que le multi-homing et
multi-diffusion. Il est principalement utilisé pour les services liés à SS7/SIGTRAN mais a le
potentiel d'être utilisé pour d'autres applications ainsi. SCTP INIT scan est le SCTP
l'équivalent d'un scan TCP SYN. Il peut être effectué rapidement, en analysant des milliers de ports
par seconde sur un réseau rapide non entravé par des pare-feux restrictifs. Comme le scan SYN,
L'analyse INIT est relativement discrète et furtive, car elle ne termine jamais SCTP
les associations. Il permet également une différenciation claire et fiable entre l'ouvert, fermé,
et les états filtrés.
Cette technique est souvent appelée numérisation semi-ouverte, car vous n'ouvrez pas un
association SCTP à part entière. Vous envoyez un bloc INIT, comme si vous alliez ouvrir un vrai
l'association, puis attendez une réponse. Un bloc INIT-ACK indique que le port est
écoute (ouvert), tandis qu'un morceau ABORT indique un non-auditeur. Si aucune réponse
est reçu après plusieurs retransmissions, le port est marqué comme filtré. Le port est
également marqué filtré si une erreur ICMP inaccessible (type 3, code 0, 1, 2, 3, 9, 10 ou
13) est reçu.
-sN; -sF; -sX (Analyses TCP NULL, FIN et Noël) .
Ces trois types de scan (encore plus sont possibles avec le --scanflags option décrite
dans la section suivante) exploitent une faille subtile dans le TCP RFC[8] pour différencier
entre les ports ouverts et fermés. La page 65 de la RFC 793 indique que « si le port [destination]
l'état est FERMÉ .... un segment entrant ne contenant pas de RST provoque l'envoi d'un RST
en réponse." Ensuite, la page suivante traite des paquets envoyés aux ports ouverts sans le
Les bits SYN, RST ou ACK sont définis, indiquant que : « il est peu probable que vous arriviez ici, mais si vous le faites,
laissez tomber le segment et revenez.
Lors de l'analyse des systèmes conformes à ce texte RFC, tout paquet ne contenant pas SYN,
Les bits RST ou ACK se traduiront par un RST renvoyé si le port est fermé et aucune réponse
du tout si le port est ouvert. Tant qu'aucun de ces trois bits n'est inclus, tout
la combinaison des trois autres (FIN, PSH et URG) est OK. Nmap exploite cela avec
trois types d'analyse :
Analyse nulle (-sN)
Ne définit aucun bit (l'en-tête du drapeau TCP est 0)
Analyse FIN (-sF)
Définit uniquement le bit TCP FIN.
Scan de Noël (-sX)
Définit les drapeaux FIN, PSH et URG, éclairant le paquet comme un arbre de Noël.
Ces trois types d'analyse ont exactement le même comportement, à l'exception des indicateurs TCP définis
dans les paquets de sonde. Si un paquet RST est reçu, le port est considéré comme fermé, alors qu'aucun
réponse signifie qu'il est ouvert|filtré. Le port est marqué filtré si un ICMP inaccessible
erreur (type 3, code 0, 1, 2, 3, 9, 10 ou 13) est reçue.
Le principal avantage de ces types d'analyse est qu'ils peuvent se faufiler à travers certains
pare-feu sans état et routeurs de filtrage de paquets. Un autre avantage est que ces
les types de scan sont un peu plus furtifs que même un scan SYN. Ne compte pas là-dessus
Cependant, la plupart des produits IDS modernes peuvent être configurés pour les détecter. Le gros inconvénient est
que tous les systèmes ne suivent pas la RFC 793 à la lettre. Un certain nombre de systèmes envoient RST
réponses aux sondes, que le port soit ouvert ou non. Cela provoque tout
des ports à étiqueter fermés. Les principaux systèmes d'exploitation qui font cela sont Microsoft
Windows, de nombreux périphériques Cisco, BSDI et IBM OS/400. Cette analyse fonctionne contre la plupart des
Les systèmes basés sur Unix cependant. Un autre inconvénient de ces analyses est qu'elles ne peuvent pas
distinguer les ports ouverts de certains filtrés, vous laissant avec la réponse
ouvert|filtré.
-sA (analyse TCP ACK) .
Cette analyse est différente des autres discutées jusqu'à présent en ce qu'elle ne détermine jamais
ports ouverts (ou même ouverts|filtrés). Il est utilisé pour cartographier les ensembles de règles de pare-feu,
déterminer s'ils sont avec état ou non et quels ports sont filtrés.
Le paquet de sonde d'analyse ACK n'a que l'indicateur ACK défini (sauf si vous utilisez --scanflags). Quand
l'analyse des systèmes non filtrés, les ports ouverts et fermés renverront tous deux un paquet RST. Nmap
puis les étiquette comme non filtrés, ce qui signifie qu'ils sont accessibles par le paquet ACK, mais
qu'ils soient ouverts ou fermés est indéterminé. Les ports qui ne répondent pas ou n'envoient pas
certains messages d'erreur ICMP en retour (type 3, code 0, 1, 2, 3, 9, 10 ou 13), sont étiquetés
filtré.
-sW (Analyse de la fenêtre TCP) .
Le scan de fenêtre est exactement le même que le scan ACK sauf qu'il exploite une implémentation
détail de certains systèmes pour différencier les ports ouverts des ports fermés, plutôt que
toujours l'impression non filtrée lorsqu'un RST est renvoyé. Il le fait en examinant le TCP
Champ de fenêtre des paquets RST renvoyés. Sur certains systèmes, les ports ouverts utilisent un
la taille de la fenêtre (même pour les paquets RST) tandis que les paquets fermés ont une fenêtre nulle. Alors au lieu de
répertoriant toujours un port comme non filtré lorsqu'il reçoit un retour RST, l'analyse de la fenêtre répertorie les
port comme ouvert ou fermé si la valeur de la fenêtre TCP dans cette réinitialisation est positive ou nulle,
respectivement.
Cette analyse repose sur un détail d'implémentation d'une minorité de systèmes sur le
Internet, vous ne pouvez donc pas toujours lui faire confiance. Les systèmes qui ne le prennent pas en charge seront généralement
retourner tous les ports fermés. Bien sûr, il est possible que la machine n'ait vraiment pas d'ouverture
ports. Si la plupart des ports analysés sont fermés mais que quelques numéros de port courants (tels que 22, 25,
53) sont filtrés, le système est très probablement sensible. Parfois, les systèmes
même montrer le comportement exactement opposé. Si votre analyse montre 1,000 XNUMX ports ouverts et trois
ports fermés ou filtrés, alors ces trois peuvent très bien être les vrais ouverts.
-sM (analyse TCP Maimon) .
Le scan Maimon porte le nom de son découvreur, Uriel Maimon. Il a décrit le
technique dans Phrack Magazine numéro 49 (novembre 1996). Nmap, qui comprenait ce
technique, a été publié deux numéros plus tard. Cette technique est exactement la même que NULL,
FIN et Xmas scans, sauf que la sonde est FIN/ACK. Selon RFC 793[8] (TCP),
un paquet RST doit être généré en réponse à une telle sonde si le port est ouvert
ou fermé. Cependant, Uriel a remarqué que de nombreux systèmes dérivés de BSD abandonnent simplement le paquet
si le port est ouvert.
--scanflags (Analyse TCP personnalisée) .
Les utilisateurs vraiment avancés de Nmap n'ont pas besoin de se limiter aux types d'analyse prédéfinis proposés.
Votre --scanflags L'option vous permet de concevoir votre propre scan en spécifiant un TCP arbitraire
flags.. Laissez libre cours à votre créativité, tout en évitant les systèmes de détection d'intrusion.
dont les fournisseurs ont simplement parcouru la page de manuel Nmap en ajoutant des règles spécifiques !
Votre --scanflags l'argument peut être une valeur d'indicateur numérique telle que 9 (PSH et FIN), mais
l'utilisation de noms symboliques est plus facile. Mélangez simplement n'importe quelle combinaison de URG, ACK, PSH,
RST, SYN et FIN. Par example, --scanflags URGACKPSHRSTSYNFIN met tout, cependant
ce n'est pas très utile pour la numérisation. L'ordre dans lequel ils sont spécifiés n'a pas d'importance.
En plus de spécifier les indicateurs souhaités, vous pouvez spécifier un type de scan TCP (tel que
-sA or -sF). Ce type de base indique à Nmap comment interpréter les réponses. Par exemple, un SYN
l'analyse considère l'absence de réponse pour indiquer un port filtré, tandis qu'une analyse FIN traite le
identique à open|filtered. Nmap se comportera de la même manière que pour le type d'analyse de base,
sauf qu'il utilisera les drapeaux TCP que vous spécifiez à la place. Si vous ne spécifiez pas de base
type, le scan SYN est utilisé.
-sZ (Scan SCTP COOKIE ECHO) .
Le scan SCTP COOKIE ECHO est un scan SCTP plus avancé. Il profite du fait
que les implémentations SCTP doivent supprimer en silence les paquets contenant des morceaux COOKIE ECHO
sur les ports ouverts, mais envoie un ABORT si le port est fermé. L'avantage de ce scan
type est qu'il n'est pas aussi évident qu'un scan de port qu'un scan INIT. Aussi, il peut y avoir
ensembles de règles de pare-feu sans état bloquant les morceaux INIT, mais pas les morceaux COOKIE ECHO. Ne pas
être dupe en pensant que cela rendra un scan de port invisible ; un bon IDS sera
capable de détecter également les scans SCTP COOKIE ECHO. L'inconvénient est que SCTP COOKIE ECHO scanne
ne peut pas différencier les ports ouverts et filtrés, vous laissant avec l'état
ouvert|filtré dans les deux cas.
-si zombie hôte[:sondeport] (recherche inactive) .
Cette méthode d'analyse avancée permet une analyse vraiment aveugle du port TCP de la cible
(ce qui signifie qu'aucun paquet n'est envoyé à la cible à partir de votre véritable adresse IP). Au lieu de cela, un
une attaque par canal latéral unique exploite une séquence d'ID de fragmentation IP prévisible
génération sur l'hôte zombie pour glaner des informations sur les ports ouverts sur la cible.
Les systèmes IDS afficheront l'analyse comme provenant de la machine zombie que vous spécifiez (qui
doit être en place et répondre à certains critères). Ce type de scan fascinant est trop complexe pour
décrire en détail dans ce guide de référence, j'ai donc écrit et publié un article informel avec
tous les détails sur https://nmap.org/book/idlescan.html.
En plus d'être extraordinairement furtif (en raison de sa nature aveugle), ce type d'analyse
permet de cartographier les relations de confiance basées sur IP entre les machines. La liste des ports
montre les ports ouverts le objectifs of le zombie hôte. Vous pouvez donc essayer de numériser un
ciblez en utilisant divers zombies qui, selon vous, pourraient être dignes de confiance. (via routeur/paquet
règles de filtrage).
Vous pouvez ajouter deux points suivis d'un numéro de port à l'hôte zombie si vous souhaitez sonder
un port particulier sur le zombie pour les changements d'ID IP. Sinon Nmap utilisera le port qu'il
utilise par défaut pour les pings TCP (80).
-donc (analyse du protocole IP) .
L'analyse du protocole IP vous permet de déterminer quels protocoles IP (TCP, ICMP, IGMP, etc.)
sont pris en charge par les machines cibles. Il ne s'agit pas techniquement d'une analyse de port, car elle effectue un cycle
via des numéros de protocole IP plutôt que des numéros de port TCP ou UDP. Pourtant, il utilise toujours le
-p option pour sélectionner les numéros de protocole scannés, rapporte ses résultats dans la normale
format de table de port, et utilise même le même moteur d'analyse sous-jacent que le vrai port
méthodes de numérisation. Il est donc suffisamment proche d'un scan de port pour qu'il ait sa place ici.
En plus d'être utile en soi, l'analyse de protocole démontre la puissance de
logiciels open source. Bien que l'idée fondamentale soit assez simple, je n'avais pas pensé
pour l'ajouter ni reçu aucune demande pour une telle fonctionnalité. Puis à l'été de
2000, Gerhard Rieger. conçu l'idée, écrit un excellent patch pour la mettre en œuvre,
et l'a envoyé à la liste de diffusion d'annonce. (alors appelé nmap-hackers).. Je
incorporé ce correctif dans l'arborescence Nmap et publié une nouvelle version le lendemain.
Peu de logiciels commerciaux suscitent l'enthousiasme des utilisateurs pour concevoir et
apporter leurs propres améliorations !
L'analyse de protocole fonctionne de la même manière que l'analyse UDP. Au lieu d'itérer à travers le
champ de numéro de port d'un paquet UDP, il envoie des en-têtes de paquet IP et parcourt le
champ de protocole IP à huit bits. Les en-têtes sont généralement vides, ne contenant aucune donnée et non
même l'en-tête approprié pour le protocole revendiqué. Les exceptions sont TCP, UDP, ICMP,
SCTP et IGMP. Un en-tête de protocole approprié pour ceux-ci est inclus car certains systèmes
ne les enverra pas autrement et parce que Nmap a déjà des fonctions pour les créer.
Au lieu de surveiller les messages inaccessibles du port ICMP, l'analyse du protocole est sur le
à l'affût de l'ICMP protocole messages inaccessibles. Si Nmap reçoit une réponse dans n'importe quel
protocole de l'hôte cible, Nmap marque ce protocole comme ouvert. Un protocole ICMP
une erreur inaccessible (type 3, code 2) provoque le marquage du protocole comme fermé alors que
port inaccessible (type 3, code 3) marque le protocole ouvert. Autre ICMP inaccessible
les erreurs (type 3, code 0, 1, 9, 10 ou 13) entraînent le marquage du protocole filtré
(bien qu'ils prouvent que l'ICMP est ouvert en même temps). Si aucune réponse n'est reçue
après retransmissions, le protocole est marqué ouvert|filtré
-b Ftp relais hôte (balayage de rebond FTP) .
Une caractéristique intéressante du protocole FTP (RFC 959[9]) prend en charge ce qu'on appelle le proxy
Connexions FTP. Cela permet à un utilisateur de se connecter à un serveur FTP, puis de demander que les fichiers
être envoyé à un serveur tiers. Une telle fonctionnalité est mûre pour les abus à plusieurs niveaux, donc
la plupart des serveurs ont cessé de le supporter. L'un des abus que cette fonctionnalité permet est
obligeant le serveur FTP à analyser les ports d'autres hôtes. Demandez simplement au serveur FTP d'envoyer un
à chaque port intéressant d'un hôte cible à tour de rôle. Le message d'erreur sera
décrivez si le port est ouvert ou non. C'est un bon moyen de contourner les pare-feu
parce que les serveurs FTP organisationnels sont souvent placés là où ils ont plus d'accès à
d'autres hôtes internes que n'importe quel ancien hôte Internet. Nmap prend en charge l'analyse de rebond FTP
couplé à -b option. Il faut un argument de la forme Nom d'utilisateur:Mot de passe@serveur:port.
Server est le nom ou l'adresse IP d'un serveur FTP vulnérable. Comme pour une URL normale, vous
peut omettre Nom d'utilisateur:Mot de passe, auquel cas les identifiants de connexion anonymes (utilisateur : anonyme
password:-wwwuser@) sont utilisés. Le numéro de port (et les deux points précédents) peuvent être omis car
bien, auquel cas le port FTP par défaut (21) sur serveur est utilisé.
Cette vulnérabilité était répandue en 1997 lors de la sortie de Nmap, mais a été largement
fixé. Les serveurs vulnérables sont toujours là, il vaut donc la peine d'essayer lorsque tout le reste échoue.
Si votre objectif est de contourner un pare-feu, analysez le réseau cible pour le port 21 (ou même pour
tous les services FTP si vous scannez tous les ports avec détection de version) et utilisez le ftp-bounce.
Script NSE. Nmap vous dira si l'hôte est vulnérable ou non. Si vous êtes juste
essayer de brouiller vos pistes, vous n'avez pas besoin (et, en fait, vous ne devriez pas) limiter
vous-même aux hôtes du réseau cible. Avant de scanner Internet au hasard
adresses pour les serveurs FTP vulnérables, considérez que les administrateurs système peuvent ne pas vous apprécier
abuser de leurs serveurs de cette manière.
PORT CARACTÉRISTIQUES ET SCAN COMMANDER
En plus de toutes les méthodes d'analyse décrites précédemment, Nmap offre des options pour
spécifiant quels ports sont analysés et si l'ordre d'analyse est aléatoire ou séquentiel.
Par défaut, Nmap analyse les 1,000 XNUMX ports les plus courants pour chaque protocole.
-p port gammes (Analyser uniquement les ports spécifiés) .
Cette option spécifie les ports que vous souhaitez analyser et remplace la valeur par défaut.
Les numéros de port individuels sont corrects, tout comme les plages séparées par un tiret (par exemple 1-1023).
Les valeurs de début et/ou de fin d'une plage peuvent être omises, ce qui oblige Nmap à utiliser 1 et
65535, respectivement. Vous pouvez donc préciser -p- pour analyser les ports de 1 à 65535.
Numérisation du port zéro. est autorisé si vous le spécifiez explicitement. Pour l'analyse du protocole IP
(-donc), cette option spécifie les numéros de protocole que vous souhaitez rechercher (0–255).
Lors de l'analyse d'une combinaison de protocoles (par exemple TCP et UDP), vous pouvez spécifier un
protocole particulier en faisant précéder les numéros de port par T : pour TCP, U : pour UDP, S : pour
SCTP, ou P : pour IP Protocol. Le qualificatif dure jusqu'à ce que vous en spécifiiez un autre.
Par exemple, l'argument -p U:53,111,137 21 25,80,139,8080, T: XNUMX-XNUMX analyserait les ports UDP 53,
111 et 137, ainsi que les ports TCP répertoriés. Notez que pour analyser à la fois UDP et TCP, vous
il faut préciser -su et au moins un type de scan TCP (tel que -HH, -sF, ou -St). Sinon
qu'un qualificateur de protocole est donné, les numéros de port sont ajoutés à toutes les listes de protocoles. Ports
peut également être spécifié par son nom en fonction de la référence au port dans le
nmap-services. Vous pouvez même utiliser les caractères génériques * et ? avec les noms. Par exemple, pour
scannez FTP et tous les ports dont les noms commencent par "http", utilisez -p ftp, http*. Sois prudent
sur les extensions de shell et citez l'argument à -p si incertain.
Les plages de ports peuvent être entourées de crochets pour indiquer les ports à l'intérieur
qui apparaissent dans nmap-services. Par exemple, ce qui suit analysera tous les ports dans
nmap-services égal ou inférieur à 1024 : -p [-1024 XNUMX]. Soyez prudent avec les extensions de shell et
citer l'argument à -p si incertain.
--exclure-ports port gammes (Exclure les ports spécifiés de l'analyse) .
Cette option spécifie les ports que vous souhaitez que Nmap exclue de l'analyse. le port
gammes sont spécifiés comme -p. Pour l'analyse du protocole IP (-donc), cette option
spécifie les numéros de protocole que vous souhaitez exclure (0–255).
Lorsqu'il est demandé d'exclure des ports, ils sont exclus de tous les types d'analyses (c'est-à-dire
ils ne seront en aucun cas scannés). Cela inclut également la découverte
phase.
-F (Scan rapide (port limité)) .
Indique que vous souhaitez analyser moins de ports que la valeur par défaut. Normalement, Nmap scanne le
1,000 XNUMX ports les plus courants pour chaque protocole analysé. Avec -F, celui-ci est réduit à 100.
Nmap a besoin d'un fichier nmap-services avec des informations de fréquence afin de savoir quel
les ports sont les plus courants. Si les informations sur la fréquence du port ne sont pas disponibles, peut-être
en raison de l'utilisation d'un fichier nmap-services personnalisé, Nmap analyse tous les ports nommés plus
ports 1-1024. Dans ce cas, -F signifie analyser uniquement les ports nommés dans les services
fichier.
-r (Ne pas randomiser les ports) .
Par défaut, Nmap randomise l'ordre des ports scannés (sauf que certains
les ports accessibles sont déplacés vers le début pour des raisons d'efficacité). Cette
la randomisation est normalement souhaitable, mais vous pouvez spécifier -r pour séquentiel (trié
du plus bas au plus élevé) analyse des ports à la place.
--port-rapport rapport<décimal nombre jusqu'à XNUMX fois 0 et 1>
Analyse tous les ports du fichier nmap-services avec un ratio supérieur à celui donné. rapport
doit être compris entre 0.0 et 1.1.
--top-ports n
Scanne le n les ports au ratio le plus élevé trouvés dans le fichier nmap-services après avoir exclu tous les ports
spécifié par --exclure-ports. n doit être supérieur ou égal à 1.
SERVICE ET VERSION DÉTECTION
Pointez Nmap sur une machine distante et cela pourrait vous dire que les ports 25/tcp, 80/tcp et 53/udp
sont ouverts. En utilisant ses services nmap. base de données d'environ 2,200 XNUMX services bien connus,. Nmap
signalerait que ces ports correspondent probablement à un serveur de messagerie (SMTP), un serveur Web
(HTTP) et serveur de noms (DNS) respectivement. Cette recherche est généralement précise—le vaste
la majorité des démons à l'écoute sur le port TCP 25 sont en fait des serveurs de messagerie. Cependant, vous
ne devrait pas parier votre sécurité là-dessus ! Les gens peuvent et exécutent des services sur des ports étranges.
Même si Nmap a raison et que le serveur hypothétique ci-dessus exécute SMTP, HTTP et DNS
serveurs, ce n'est pas beaucoup d'informations. Lorsque vous effectuez des évaluations de vulnérabilité (ou même
simples inventaires de réseaux) de vos entreprises ou de vos clients, vous voulez vraiment savoir
les serveurs de messagerie et DNS et les versions sont en cours d'exécution. Avoir un numéro de version précis aide
considérablement pour déterminer les exploits auxquels un serveur est vulnérable. Détection de version
vous aide à obtenir ces informations.
Une fois les ports TCP et/ou UDP découverts à l'aide de l'une des autres méthodes d'analyse, la version
La détection interroge ces ports pour en savoir plus sur ce qui est réellement en cours d'exécution. le
nmap-service-probes. la base de données contient des sondes pour interroger divers services et correspondre
expressions pour reconnaître et analyser les réponses. Nmap essaie de déterminer le protocole de service
(par exemple FTP, SSH, Telnet, HTTP), le nom de l'application (par exemple ISC BIND, Apache httpd, Solaris
telnetd), le numéro de version, le nom d'hôte, le type de périphérique (par exemple, imprimante, routeur), la famille du système d'exploitation
(par exemple Windows, Linux). Lorsque cela est possible, Nmap obtient également l'énumération de plate-forme commune
(CPE). représentation de ces informations. Parfois, divers détails comme si
un serveur X est ouvert aux connexions, la version du protocole SSH, ou le nom d'utilisateur KaZaA, sont
disponible. Bien entendu, la plupart des services ne fournissent pas toutes ces informations. Si Nmap était
compilé avec le support OpenSSL, il se connectera aux serveurs SSL pour en déduire le service
écoute derrière cette couche de cryptage. Certains ports UDP sont laissés à l'état ouvert | filtré
l'état après qu'une analyse de port UDP est incapable de déterminer si le port est ouvert ou filtré.
La détection de version essaiera d'obtenir une réponse de ces ports (comme elle le fait avec
ports ouverts) et changez l'état pour ouvrir s'il réussit. les ports TCP ouverts|filtrés sont
traité de la même manière. Notez que le Nmap -A l'option permet la détection de version entre autres
des choses. Un document documentant le fonctionnement, l'utilisation et la personnalisation de la détection de version
est disponible à https://nmap.org/book/vscan.html.
Lorsque les services RPC sont découverts, le broyeur Nmap RPC. est automatiquement utilisé pour
déterminer le programme RPC et les numéros de version. Il prend tous les ports TCP/UDP détectés comme
RPC et les inonde avec les commandes NULL du programme SunRPC pour tenter de déterminer si
ce sont des ports RPC, et si oui, quel programme et numéro de version ils servent. Ainsi vous pouvez
obtenir effectivement les mêmes informations que rpcinfo -p même si le portmapper de la cible est derrière un
pare-feu (ou protégé par des wrappers TCP). Les leurres ne fonctionnent pas actuellement avec le scan RPC.
Lorsque Nmap reçoit des réponses d'un service mais ne peut pas les faire correspondre à sa base de données, il
imprime une empreinte digitale spéciale et une URL à soumettre si vous en êtes sûr
ce qui tourne sur le port. Veuillez prendre quelques minutes pour faire la soumission afin que
votre trouvaille peut profiter à tout le monde. Grâce à ces soumissions, Nmap a environ 6,500 XNUMX modèles
correspond à plus de 650 protocoles tels que SMTP, FTP, HTTP, etc.
La détection de version est activée et contrôlée avec les options suivantes :
-sV (Détection de version) .
Active la détection de version, comme indiqué ci-dessus. Alternativement, vous pouvez utiliser -A, Qui
permet entre autres la détection de version.
-Monsieur. est un alias pour -sV. Avant mars 2011, il était utilisé pour activer le broyeur RPC
séparément de la détection de version, mais maintenant ces options sont toujours combinées.
--tous les ports (N'excluez aucun port de la détection de version) .
Par défaut, la détection de version Nmap ignore le port TCP 9100 car certaines imprimantes
imprimer tout ce qui est envoyé à ce port, conduisant à des dizaines de pages de requêtes HTTP GET,
demandes de session SSL binaire, etc. Ce comportement peut être modifié en modifiant ou
en supprimant la directive Exclude dans nmap-service-probes, ou vous pouvez spécifier --tous les ports
pour analyser tous les ports indépendamment de toute directive Exclude.
--version-intensité intensité (Définir l'intensité de l'analyse de la version) .
Lors de l'exécution d'une analyse de version (-sV), Nmap envoie une série de sondes, dont chacune est
attribué une valeur de rareté entre un et neuf. Les sondes les moins numérotées sont efficaces
contre une grande variété de services communs, tandis que les plus numérotés sont rarement
utile. Le niveau d'intensité spécifie quelles sondes doivent être appliquées. Plus le
numéro, plus il est probable que le service sera correctement identifié. Cependant, haute
les analyses d'intensité prennent plus de temps. L'intensité doit être comprise entre 0 et 9.. La valeur par défaut est
7.. Lorsqu'une sonde est enregistrée sur le port cible via nmap-service-probesports
directive, cette sonde est essayée quel que soit le niveau d'intensité. Cela garantit que le
Les sondes DNS seront toujours tentées sur tout port 53 ouvert, la sonde SSL sera
fait contre 443, etc.
--version-lumière (Activer le mode lumière) .
Il s'agit d'un alias de commodité pour --version-intensité 2. Ce mode d'éclairage rend la version
analyse beaucoup plus rapidement, mais il est légèrement moins susceptible d'identifier les services.
--version-tout (Essayez chaque sonde) .
Un alias pour --version-intensité 9, en veillant à ce que chaque sonde soit tentée
contre chaque port.
--version-trace (Tracer l'activité d'analyse de version) .
Cela oblige Nmap à imprimer des informations de débogage complètes sur l'analyse de la version.
Faire. C'est un sous-ensemble de ce que vous obtenez avec --paquet-trace.
OS DÉTECTION
L'une des fonctionnalités les plus connues de Nmap est la détection à distance du système d'exploitation à l'aide de la pile TCP/IP
empreintes digitales. Nmap envoie une série de paquets TCP et UDP à l'hôte distant et examine
pratiquement tout dans les réponses. Après avoir effectué des dizaines de tests tels que TCP ISN
l'échantillonnage, la prise en charge et la commande des options TCP, l'échantillonnage de l'ID IP et la taille de la fenêtre initiale
check, Nmap compare les résultats à son nmap-os-db. base de données de plus de 2,600 XNUMX OS connus
empreintes digitales et imprime les détails du système d'exploitation s'il y a une correspondance. Chaque empreinte comprend
une description textuelle de forme libre du système d'exploitation et une classification qui fournit au fournisseur
nom (par exemple Sun), système d'exploitation sous-jacent (par exemple Solaris), génération du système d'exploitation (par exemple 10) et type de périphérique
(usage général, routeur, commutateur, console de jeu, etc.). La plupart des empreintes digitales ont également un
Énumération de plate-forme (CPE). représentation, comme cpe:/o:linux:linux_kernel:2.6.
Si Nmap est incapable de deviner le système d'exploitation d'une machine et que les conditions sont bonnes (par exemple, au moins un
port ouvert et un port fermé ont été trouvés), Nmap fournira une URL que vous pouvez utiliser pour soumettre
l'empreinte digitale si vous connaissez (à coup sûr) le système d'exploitation qui tourne sur la machine. En faisant cela, vous
contribuer au pool de systèmes d'exploitation connus de Nmap et ainsi il sera plus
précis pour tout le monde.
La détection du système d'exploitation permet d'autres tests qui utilisent les informations recueillies
pendant le processus de toute façon. L'un d'eux est la classification de prévisibilité de séquence TCP.
Cela mesure approximativement à quel point il est difficile d'établir une connexion TCP forgée contre
l'hôte distant. Il est utile pour exploiter les relations de confiance basées sur l'IP source (rlogin,
filtres pare-feu, etc.) ou pour masquer la source d'une attaque. Ce genre d'usurpation est
rarement exécuté, mais de nombreuses machines y sont encore vulnérables. L'actuel
le nombre de difficultés est basé sur un échantillonnage statistique et peut fluctuer. C'est généralement
mieux vaut utiliser la classification anglaise comme « worthy challenge » ou « trivial joke ».
Ceci n'est signalé que dans la sortie normale en verbeux (-v) mode. Lorsque le mode détaillé est activé
avec -O, la génération de séquences IP ID est également rapportée. La plupart des machines sont dans le
classe "incrémentale", ce qui signifie qu'ils incrémentent le champ ID dans l'en-tête IP pour
chaque paquet qu'ils envoient. Cela les rend vulnérables à plusieurs informations avancées
Attaques de rassemblement et d'usurpation d'identité.
Une autre information supplémentaire activée par la détection du système d'exploitation est une estimation de la disponibilité d'une cible.
Cela utilise l'option d'horodatage TCP (RFC 1323[10]) pour deviner quand une machine était la dernière
redémarré. L'estimation peut être inexacte en raison du fait que le compteur d'horodatage n'est pas initialisé
à zéro ou le compteur déborde et s'enroule, donc il n'est imprimé qu'en verbeux
mode.
Un document documentant le fonctionnement, l'utilisation et la personnalisation de la détection du système d'exploitation est disponible sur
https://nmap.org/book/osdetect.html.
La détection du système d'exploitation est activée et contrôlée avec les options suivantes :
-O (Activer la détection du système d'exploitation) .
Active la détection du système d'exploitation, comme indiqué ci-dessus. Alternativement, vous pouvez utiliser -A pour activer le système d'exploitation
détection avec d'autres choses.
--osscan-limite (Limiter la détection du système d'exploitation aux cibles prometteuses) .
La détection du système d'exploitation est bien plus efficace si au moins un port TCP ouvert et un port TCP fermé sont
trouvé. Définissez cette option et Nmap n'essaiera même pas de détecter le système d'exploitation contre les hôtes qui le font
ne répondent pas à ce critère. Cela peut faire gagner un temps considérable, en particulier sur - M analyse
contre de nombreux hôtes. Cela n'a d'importance que lorsque la détection du système d'exploitation est demandée avec -O or -A.
--osscan-deviner; --flou (Devinez les résultats de la détection du système d'exploitation).
Lorsque Nmap est incapable de détecter une correspondance parfaite du système d'exploitation, il propose parfois des correspondances proches
comme possibilités. La correspondance doit être très proche pour que Nmap le fasse par défaut.
L'une ou l'autre de ces options (équivalentes) permet à Nmap de deviner plus agressivement. Nmap va
vous indique toujours quand une correspondance imparfaite est imprimée et affiche son niveau de confiance
(pourcentage) pour chaque estimation.
--max-os-essais (Définir le nombre maximum d'essais de détection de système d'exploitation contre une cible) .
Lorsque Nmap effectue une détection du système d'exploitation contre une cible et ne parvient pas à trouver une correspondance parfaite, il
répète généralement la tentative. Par défaut, Nmap essaie cinq fois si les conditions sont
favorable pour la soumission d'empreintes digitales du système d'exploitation, et deux fois lorsque les conditions ne sont pas si bonnes.
Spécification d'une valeur inférieure --max-os-essais valeur (comme 1) accélère Nmap, même si vous manquez
sur des tentatives qui pourraient potentiellement identifier le système d'exploitation. Alternativement, une valeur élevée
peut être défini pour permettre encore plus de tentatives lorsque les conditions sont favorables. C'est rarement
fait, sauf pour générer de meilleures empreintes digitales pour la soumission et l'intégration dans le
Base de données du système d'exploitation Nmap.
NMAP SCRIPT ENGINE (NSE)
Le moteur de script Nmap (NSE) est l'une des fonctionnalités les plus puissantes et flexibles de Nmap. Ce
permet aux utilisateurs d'écrire (et de partager) des scripts simples (en utilisant le Lua programmation langue[11].
) pour automatiser une grande variété de tâches de mise en réseau. Ces scripts sont exécutés en parallèle
avec la rapidité et l'efficacité que vous attendez de Nmap. Les utilisateurs peuvent compter sur la croissance et
ensemble diversifié de scripts distribués avec Nmap, ou écrivez les leurs pour répondre aux besoins personnalisés.
Les tâches que nous avions en tête lors de la création du système incluent la découverte du réseau, plus
détection de version sophistiquée, détection de vulnérabilité. NSE peut même être utilisé pour
exploitation des vulnérabilités.
Pour refléter ces différents usages et simplifier le choix des scripts à exécuter, chaque
script contient un champ l'associant à une ou plusieurs catégories. Actuellement défini
les catégories sont auth, broadcast, default. découverte, dos, exploiter, externe, fuzzer,
intrusif, malware, safe, version et vuln. Ceux-ci sont tous décrits à
https://nmap.org/book/nse-usage.html#nse-categories.
Les scripts ne sont pas exécutés dans un bac à sable et pourraient donc endommager accidentellement ou malicieusement votre
système ou envahir votre vie privée. N'exécutez jamais de scripts de tiers à moins que vous ne fassiez confiance au
auteurs ou avez soigneusement vérifié les scripts vous-même.
Le moteur de script Nmap est décrit en détail sur https://nmap.org/book/nse.html Les modèles sont aussi
contrôlé par les options suivantes :
-sC .
Effectue une analyse de script à l'aide de l'ensemble de scripts par défaut. C'est équivalent à
--script=par défaut. Certains des scripts de cette catégorie sont considérés comme intrusifs et
ne doit pas être exécuté sur un réseau cible sans autorisation.
--scénario nom de fichier|category|annuaire|expression[,...] .
Exécute une analyse de script en utilisant la liste de noms de fichiers séparés par des virgules, les catégories de script et
répertoires. Chaque élément de la liste peut également être une expression booléenne décrivant un
ensemble de scripts plus complexes. Chaque élément est d'abord interprété comme une expression, puis
en tant que catégorie, et enfin en tant que nom de fichier ou de répertoire.
Il existe deux fonctionnalités spéciales pour les utilisateurs avancés uniquement. L'une consiste à préfixer les noms de script
et des expressions avec + pour les forcer à s'exécuter même s'ils ne le feraient pas normalement (par exemple, le
service concerné n'a pas été détecté sur le port cible). L'autre est que l'argument
all peut être utilisé pour spécifier chaque script dans la base de données de Nmap. Soyez prudent avec cela
car NSE contient des scripts dangereux tels que des exploits, une authentification par force brute
crackers et attaques par déni de service.
Les noms de fichiers et de répertoires peuvent être relatifs ou absolus. Des noms absolus sont utilisés
directement. Des chemins relatifs sont recherchés dans les scripts de chacun des endroits suivants
jusqu'à ce qu'il soit trouvé : --répertoire de données
$NMAPDIR.
~/.nmap (non recherché sous Windows).
ACCUEIL\AppData\Roaming\nmap (uniquement sous Windows).
le répertoire contenant l'exécutable nmap
le répertoire contenant l'exécutable nmap, suivi de ../share/nmap
NMAPDATADIR.
le répertoire courant.
Lorsqu'un nom de répertoire est donné, Nmap charge tous les fichiers du répertoire dont le nom se termine
avec .nse. Tous les autres fichiers sont ignorés et les répertoires ne sont pas recherchés de manière récursive. Lorsque
un nom de fichier est donné, il n'a pas besoin d'avoir l'extension .nse ; il sera ajouté
automatiquement si nécessaire. Les scripts Nmap sont stockés dans un sous-répertoire scripts du Nmap
répertoire de données par défaut (voir https://nmap.org/book/data-files.html). Pour plus d'efficacité,
les scripts sont indexés dans une base de données stockée dans scripts/script.db,. qui répertorie la catégorie
ou des catégories auxquelles appartient chaque script. En se référant aux scripts de script.db par
nom, vous pouvez utiliser un caractère générique « * » de style shell.
nmap --scénario "http-*"
Charge tous les scripts dont le nom commence par http-, tels que http-auth et http-open-proxy.
L'argument pour --scénario devait être entre guillemets pour protéger le caractère générique du shell.
Une sélection de scripts plus compliquée peut être effectuée à l'aide des opérateurs and, or et not pour
construire des expressions booléennes. Les opérateurs ont le même priorité[12] comme dans Lua : non est
le plus élevé, suivi de et puis ou. Vous pouvez modifier la priorité en utilisant des parenthèses.
Comme les expressions contiennent des espaces, il est nécessaire de les citer.
nmap --scénario "ne pas intrusif"
Charge tous les scripts à l'exception de ceux de la catégorie intrusive.
nmap --scénario "défaut or en sécurité"
Ceci est fonctionnellement équivalent à nmap --scénario "par défaut, sûr". Il charge tous les scripts
qui sont dans la catégorie par défaut ou la catégorie sûre ou les deux.
nmap --scénario "défaut et en sécurité"
Charge les scripts qui sont dans tous les deux les catégories par défaut et sûres.
nmap --scénario "(défaut or est or intrusif) et pas http-*"
Charge les scripts dans les catégories par défaut, sûres ou intrusives, à l'exception de ceux dont
les noms commencent par http-.
--script-args n1=v1,n2={n3=v3},n4={v4,v5} .
Vous permet de fournir des arguments aux scripts NSE. Les arguments sont une liste séparée par des virgules de
paires nom=valeur. Les noms et les valeurs peuvent être des chaînes ne contenant pas d'espace ou le
caractères '{', '}', '=', ou ','. Pour inclure l'un de ces caractères dans une chaîne,
placez la chaîne entre guillemets simples ou doubles. Dans une chaîne entre guillemets, '\' échappe à un
Devis. Une barre oblique inverse n'est utilisée pour échapper aux guillemets que dans ce cas particulier ; dans tout
dans d'autres cas, une barre oblique inverse est interprétée littéralement. Les valeurs peuvent également être des tableaux joints
en {}, tout comme en Lua. Une table peut contenir des valeurs de chaîne simples ou plus de nom-valeur
paires, y compris les tables imbriquées. De nombreux scripts qualifient leurs arguments avec le script
name, comme dans xmpp-info.server_name. Vous pouvez utiliser cette version complète pour affecter
juste le script spécifié, ou vous pouvez passer la version non qualifiée (server_name dans
ce cas) pour affecter tous les scripts utilisant ce nom d'argument. Un script vérifiera d'abord
pour son nom d'argument complet (le nom spécifié dans sa documentation) avant
il accepte un nom d'argument non qualifié. Un exemple complexe d'arguments de script est
--script-args
'user=foo,pass=",{}=bar",whois={whodb=nofollow+ripe},xmpp-info.server_name=localhost'.
Le portail de documentation en ligne NSE sur https://nmap.org/nsedoc/ liste les arguments
que chaque script accepte.
--script-args-fichier nom de fichier .
Vous permet de charger des arguments dans les scripts NSE à partir d'un fichier. Tous les arguments sur la ligne de commande
remplacent celles du fichier. Le fichier peut être un chemin absolu ou un chemin relatif à
Chemin de recherche habituel de Nmap (NMAPDIR, etc.) Les arguments peuvent être séparés par des virgules ou
séparés par des sauts de ligne, mais sinon suivez les mêmes règles que pour --script-args, sans pour autant
nécessitant des guillemets et des échappements spéciaux, car ils ne sont pas analysés par le shell.
--script-aide nom de fichier|category|annuaire|expression|tous[,...] .
Affiche l'aide sur les scripts. Pour chaque script correspondant à la spécification donnée, Nmap
imprime le nom du script, ses catégories et sa description. Les spécifications sont
les mêmes que ceux acceptés par --scénario; donc par exemple si vous voulez de l'aide sur le
script ftp-anon, vous exécuteriez nmap --script-aide ftp-anon. En plus d'obtenir
aide pour les scripts individuels, vous pouvez l'utiliser comme aperçu des scripts qui seront exécutés
pour une spécification, par exemple avec nmap --script-aide défaut.
--script-trace .
Cette option fait quoi --paquet-trace fait, juste une couche ISO plus élevée. Si cette option
est spécifié que toutes les communications entrantes et sortantes effectuées par un script sont imprimées.
Les informations affichées comprennent le protocole de communication, la source, la cible
et les données transmises. Si plus de 5% de toutes les données transmises ne sont pas imprimables,
alors la sortie de trace est dans un format de vidage hexadécimal. En précisant --paquet-trace permet
traçage de script aussi.
--script-mis à jourb .
Cette option met à jour la base de données de scripts trouvée dans scripts/script.db qui est utilisée par
Nmap pour déterminer les scripts et les catégories par défaut disponibles. Il est seulement nécessaire
pour mettre à jour la base de données si vous avez ajouté ou supprimé des scripts NSE par défaut
répertoire des scripts ou si vous avez modifié les catégories d'un script. Cette option est
généralement utilisé seul : nmap --script-mis à jourb.
CHRONOMÉTRAGE ET PERFORMANCE
L'une de mes priorités de développement Nmap les plus élevées a toujours été la performance. Une analyse par défaut
(nmap nom d'hôte) d'un hôte sur mon réseau local prend un cinquième de seconde. C'est à peine
suffisamment de temps pour clignoter, mais s'additionne lorsque vous analysez des centaines ou des milliers d'hôtes.
De plus, certaines options d'analyse telles que l'analyse UDP et la détection de version peuvent augmenter
temps de balayage sensiblement. De même, certaines configurations de pare-feu, en particulier la réponse
limitation de débit. Alors que Nmap utilise le parallélisme et de nombreux algorithmes avancés pour accélérer
ces analyses, l'utilisateur a le contrôle ultime sur la façon dont Nmap s'exécute. Les utilisateurs experts soigneusement
créer des commandes Nmap pour obtenir uniquement les informations qui les intéressent tout en répondant à leurs
contraintes de temps.
Les techniques pour améliorer les temps d'analyse incluent l'omission des tests non critiques et la mise à niveau vers
la dernière version de Nmap (des améliorations de performances sont apportées fréquemment). Optimiser
les paramètres de synchronisation peuvent également faire une différence substantielle. Ces options sont répertoriées ci-dessous.
Certaines options acceptent un paramètre de temps. Ceci est spécifié en secondes par défaut, bien que vous
peut ajouter 'ms', 's', 'm' ou 'h' à la valeur pour spécifier les millisecondes, secondes, minutes,
ou heures. Alors le --hôte-timeout les arguments 900000ms, 900, 900s et 15m font tous la même chose
chose.
--min-groupe d'hôtes nombre d'hôtes; --max-groupe d'hôtes nombre d'hôtes (Ajustez la taille des groupes de numérisation parallèle) .
Nmap a la capacité d'analyser les ports ou d'analyser les versions de plusieurs hôtes en parallèle. Nmap
le fait en divisant l'espace IP cible en groupes, puis en analysant un groupe à la fois
temps. En général, les grands groupes sont plus efficaces. L'inconvénient est que les résultats de l'hôte
ne peut pas être fourni tant que tout le groupe n'a pas terminé. Donc, si Nmap a commencé avec un
taille du groupe de 50, l'utilisateur ne recevrait aucun rapport (sauf pour les mises à jour
proposé en mode verbeux) jusqu'à ce que les 50 premiers hôtes soient terminés.
Par défaut, Nmap adopte une approche de compromis pour ce conflit. Cela commence par un
taille du groupe aussi faible que cinq afin que les premiers résultats arrivent rapidement, puis augmente la
groupsize jusqu'à 1024. Les nombres par défaut exacts dépendent des options données.
Pour des raisons d'efficacité, Nmap utilise des tailles de groupe plus grandes pour les analyses UDP ou TCP à quelques ports.
Lorsqu'une taille de groupe maximale est spécifiée avec --max-groupe d'hôtes, Nmap ne dépassera jamais
cette taille. Spécifiez une taille minimale avec --min-groupe d'hôtes et Nmap essaiera de garder le groupe
tailles au-dessus de ce niveau. Nmap devra peut-être utiliser des groupes plus petits que ceux que vous spécifiez s'il y a
il ne reste pas assez d'hôtes cibles sur une interface donnée pour remplir les conditions spécifiées
le minimum. Les deux peuvent être définis pour maintenir la taille du groupe dans une plage spécifique, bien que cela
est rarement souhaité.
Ces options n'ont aucun effet pendant la phase de découverte d'hôte d'une analyse. Cette
inclut des analyses ping simples (- sn). La découverte d'hôtes fonctionne toujours dans de grands groupes d'hôtes
pour améliorer la vitesse et la précision.
L'utilisation principale de ces options est de spécifier une grande taille de groupe minimum afin que le
l'analyse complète s'exécute plus rapidement. Un choix courant est 256 pour analyser un réseau de classe C
morceaux. Pour une analyse avec de nombreux ports, dépasser ce nombre n'aidera probablement pas beaucoup.
Pour les analyses de quelques numéros de port seulement, des tailles de groupe d'hôtes de 2048 ou plus peuvent être utiles.
--min-parallélisme numrobes; --max-parallélisme numrobes (Ajuster la parallélisation de la sonde) .
Ces options contrôlent le nombre total de sondes pouvant être en attente pour un hôte
grouper. Ils sont utilisés pour l'analyse des ports et la découverte d'hôtes. Par défaut, Nmap calcule
un parallélisme idéal en constante évolution basé sur les performances du réseau. Si des paquets sont
abandonné, Nmap ralentit et permet moins de sondes en suspens. Le numéro de sonde idéal
augmente lentement à mesure que le réseau s'avère digne. Ces options placent un minimum ou
limites maximales sur cette variable. Par défaut, le parallélisme idéal peut tomber à un si
le réseau s'avère peu fiable et s'élève à plusieurs centaines dans des conditions parfaites.
L'utilisation la plus courante consiste à définir --min-parallélisme à un nombre supérieur à un pour accélérer
jusqu'à des analyses d'hôtes ou de réseaux peu performants. C'est une option risquée avec laquelle jouer,
car un réglage trop élevé peut affecter la précision. Ce réglage réduit également la capacité de Nmap
pour contrôler le parallélisme dynamiquement en fonction des conditions du réseau. Une valeur de 10 peut être
raisonnable, même si je n'ajuste cette valeur qu'en dernier recours.
Votre --max-parallélisme L'option est parfois définie sur un pour empêcher Nmap d'en envoyer plus
plus d'une sonde à la fois aux hôtes. le --scan-délai option, discutée plus loin, est
une autre façon de faire cela.
--min-rtt-timeout fois, --max-rtt-timeout fois, --initial-rtt-timeout fois (Régler la sonde
délais d'attente).
Nmap maintient une valeur de délai d'exécution pour déterminer combien de temps il attendra un
réponse de la sonde avant d'abandonner ou de retransmettre la sonde. Ceci est calculé en fonction
sur les temps de réponse des sondes précédentes.
Si la latence du réseau s'avère importante et variable, ce timeout peut
atteindre plusieurs secondes. Il commence également à un niveau conservateur (élevé) et peut rester
de cette façon pendant un certain temps lorsque Nmap analyse les hôtes qui ne répondent pas.
Spécification d'une valeur inférieure --max-rtt-timeout et --initial-rtt-timeout que les valeurs par défaut peuvent
réduire considérablement les temps de numérisation. Cela est particulièrement vrai pour pingless (- M) analyse, et
ceux contre les réseaux fortement filtrés. Ne soyez pas trop agressif cependant. Le scan peut
finissent par prendre plus de temps si vous spécifiez une valeur si faible que de nombreuses sondes expirent
et la retransmission pendant que la réponse est en transit.
Si tous les hôtes sont sur un réseau local, 100 millisecondes (--max-rtt-timeout 100ms) est
une valeur agressive raisonnable. Si le routage est impliqué, ping un hôte sur le réseau
d'abord avec l'utilitaire ping ICMP, ou avec un créateur de paquets personnalisé tel que Nping. cette
est plus susceptible de traverser un pare-feu. Regardez le temps aller-retour maximum hors de
une dizaine de paquets environ. Vous voudrez peut-être doubler cela pour le --initial-rtt-timeout et
triple ou quadruple pour le --max-rtt-timeout. Je ne fixe généralement pas le maximum
RTT inférieur à 100 ms, quels que soient les temps de ping. Je ne dépasse pas non plus les 1000 ms.
--min-rtt-timeout est une option rarement utilisée qui pourrait être utile lorsqu'un réseau est si
peu fiable que même la valeur par défaut de Nmap soit trop agressive. Étant donné que Nmap ne réduit que le
timeout au minimum lorsque le réseau semble fiable, ce besoin est
inhabituel et devrait être signalé comme un bogue à la liste de diffusion nmap-dev.
--max-tentatives nombres (Spécifiez le nombre maximum de retransmissions de sonde de balayage de port) .
Lorsque Nmap ne reçoit aucune réponse à une sonde d'analyse de port, cela peut signifier que le port est
filtré. Ou peut-être que la sonde ou la réponse a simplement été perdue sur le réseau. C'est aussi
possible que l'hôte cible ait une limitation de débit activée qui bloque temporairement le
réponse. Donc Nmap essaie à nouveau en retransmettant la sonde initiale. Si Nmap détecte
une mauvaise fiabilité du réseau, il peut essayer plusieurs fois avant d'abandonner un port. Tandis que
cela profite à la précision, cela allonge également les temps de balayage. Lorsque la performance est critique,
les analyses peuvent être accélérées en limitant le nombre de retransmissions autorisées. Vous pouvez même
spécifier --max-tentatives 0 pour empêcher toute retransmission, même si ce n'est que
recommandé pour les situations telles que les enquêtes informelles où les ports manqués occasionnels et
les hôtes sont acceptables.
La valeur par défaut (sans -T template) est d'autoriser dix retransmissions. Si un réseau semble
fiable et les hôtes cibles ne limitent pas le débit, Nmap n'en fait généralement qu'un
retransmission. Ainsi, la plupart des analyses cibles ne sont même pas affectées par l'abandon --max-tentatives à
une valeur faible telle que trois. De telles valeurs peuvent considérablement accélérer les analyses de
limité) hôtes. Vous perdez généralement des informations lorsque Nmap abandonne les ports tôt,
bien que cela puisse être préférable de laisser le --hôte-timeout expirer et perdre tout
informations sur la cible.
--hôte-timeout fois (Abandonnez les hôtes cibles lents) .
Certains hôtes prennent simplement un Long le temps de scanner. Cela peut être dû à des performances médiocres ou
matériel ou logiciel de réseau peu fiable, limitation du débit de paquets ou restriction
pare-feu. Les quelques pour cent les plus lents des hôtes analysés peuvent consommer la majorité des
Temps de balayage. Parfois, il est préférable de réduire vos pertes et de sauter ces hôtes au départ.
Spécifier --hôte-timeout avec le temps maximum que vous êtes prêt à attendre. Pour
exemple, spécifiez 30m pour vous assurer que Nmap ne perd pas plus d'une demi-heure sur un
hôte unique. Notez que Nmap peut analyser d'autres hôtes en même temps pendant cette
une demi-heure, donc ce n'est pas une perte complète. Un hôte qui expire est ignoré. Pas de port
la table, les résultats de détection de système d'exploitation ou de détection de version sont imprimés pour cet hôte.
--scan-délai fois; --max-scan-délai fois (Ajuster le délai entre les sondes) .
Cette option oblige Nmap à attendre au moins le laps de temps donné entre chaque sonde
il envoie à un hôte donné. Ceci est particulièrement utile en cas de limitation de débit.
Les machines Solaris (parmi beaucoup d'autres) répondront généralement aux paquets de sonde d'analyse UDP
avec un seul message ICMP par seconde. Plus que celui envoyé par Nmap ne sera
gaspilleur. UNE --scan-délai de 1 maintiendra Nmap à ce rythme lent. Nmap essaie de détecter
limitation du débit et ajustez le délai de balayage en conséquence, mais cela ne fait pas de mal de le spécifier
explicitement si vous savez déjà quel taux fonctionne le mieux.
Lorsque Nmap ajuste le délai d'analyse vers le haut pour faire face à la limitation du débit, l'analyse ralentit
vers le bas de façon spectaculaire. le --max-scan-délai L'option spécifie le plus grand délai que Nmap
permettra. Un faible --max-scan-délai peut accélérer Nmap, mais c'est risqué. Définir ce
une valeur trop faible peut entraîner des retransmissions de paquets inutiles et d'éventuels ports manqués
lorsque la cible implémente une limitation stricte du débit.
Une autre utilisation de --scan-délai est d'échapper à la détection d'intrusion basée sur un seuil et
systèmes de prévention (IDS/IPS).
--min-taux nombre; --taux-max nombre (Contrôlez directement la vitesse de balayage) .
La synchronisation dynamique de Nmap fait un bon travail pour trouver une vitesse appropriée à laquelle
analyse. Parfois, cependant, vous pouvez connaître un taux de balayage approprié pour un
réseau, ou vous devrez peut-être garantir qu'une analyse sera terminée à un certain moment.
Ou peut-être devez-vous empêcher Nmap de numériser trop rapidement. le --min-taux et --taux-max
les options sont conçues pour ces situations.
When the --min-taux option est donnée Nmap fera de son mieux pour envoyer des paquets aussi vite que
ou plus rapide que le taux donné. L'argument est un nombre réel positif représentant un
débit de paquets en paquets par seconde. Par exemple, en spécifiant --min-taux 300 signifie que
Nmap essaiera de maintenir le taux d'envoi à ou au-dessus de 300 paquets par seconde. En précisant
un taux minimum n'empêche pas Nmap d'aller plus vite si les conditions le justifient.
De même, --taux-max limite le taux d'envoi d'un scan à un maximum donné. Utiliser --taux-max
100, par exemple, pour limiter l'envoi à 100 paquets par seconde sur un réseau rapide. Utiliser
--taux-max 0.1 pour une analyse lente d'un paquet toutes les dix secondes. Utiliser --min-taux et
--taux-max ensemble pour maintenir le taux dans une certaine plage.
Ces deux options sont globales, affectant une analyse entière, et non des hôtes individuels. Ils
n'affectent que les analyses de port et les analyses de découverte d'hôte. Autres fonctionnalités telles que la détection du système d'exploitation
mettre en œuvre leur propre calendrier.
Il y a deux conditions dans lesquelles le taux de numérisation réel peut tomber en dessous du taux demandé
le minimum. Le premier est si le minimum est plus rapide que le taux le plus rapide auquel Nmap peut
envoyer, qui dépend du matériel. Dans ce cas, Nmap enverra simplement des paquets comme
aussi vite que possible, mais sachez que des taux aussi élevés sont susceptibles d'entraîner une perte de
précision. Le deuxième cas est lorsque Nmap n'a rien à envoyer, par exemple à la fin de
un scan lorsque les dernières sondes ont été envoyées et que Nmap attend qu'elles expirent ou
être répondu. Il est normal de voir le taux de balayage chuter à la fin d'un balayage ou en
entre les groupes d'hôtes. Le taux d'envoi peut dépasser temporairement le maximum pour compenser
des retards imprévisibles, mais en moyenne, le taux restera égal ou inférieur au maximum.
La spécification d'un taux minimum doit être effectuée avec soin. Numérisation plus rapide qu'un réseau ne peut le faire
l'assistance peut entraîner une perte de précision. Dans certains cas, l'utilisation d'un taux plus rapide peut
prise de numérisation plus long qu'il ne le ferait avec un rythme plus lent. C'est parce que l'adaptatif de Nmap
les algorithmes de retransmission détecteront la congestion du réseau causée par un excès
taux de balayage et augmenter le nombre de retransmissions afin d'améliorer la précision.
Ainsi, même si les paquets sont envoyés à un débit plus élevé, plus de paquets sont envoyés dans l'ensemble. Casquette
le nombre de retransmissions avec le --max-tentatives option si vous devez définir un
limite supérieure de la durée totale d'analyse.
--defeat-rst-ratelimit .
De nombreux hôtes ont longtemps utilisé la limitation de débit. pour réduire le nombre de messages d'erreur ICMP
(telles que les erreurs de port inaccessible) qu'ils envoient. Certains systèmes appliquent désormais un taux similaire
limites aux paquets RST (réinitialisation) qu'ils génèrent. Cela peut ralentir considérablement Nmap
car il ajuste son calendrier pour refléter ces limites de taux. Vous pouvez dire à Nmap d'ignorer
ces limites de débit (pour les scans de ports tels que le scan SYN qui ne le font pas traiter les non-réactifs
ports comme ouverts) en spécifiant --defeat-rst-ratelimit.
L'utilisation de cette option peut réduire la précision, car certains ports apparaîtront non réactifs
parce que Nmap n'a pas attendu assez longtemps pour une réponse RST à débit limité. Avec un scan SYN,
la non-réponse a pour résultat que le port est étiqueté filtré plutôt que fermé
état que nous voyons lorsque les paquets RST sont reçus. Cette option est utile lorsque vous ne vous souciez que
sur les ports ouverts, et faire la distinction entre les ports fermés et filtrés ne vaut pas la peine
temps supplémentaire.
--nsock-moteur epoll|kqueue|sondage|select .
Appliquer l'utilisation d'un moteur de multiplexage nsock IO donné. Seulement le SélectionnerRepli basé sur (2)
moteur est garanti disponible sur votre système. Les moteurs sont nommés d'après le nom
de l'outil de gestion des entrées-sorties qu'ils exploitent. Les moteurs actuellement implémentés sont epoll,
kqueue, poll et select, mais tous ne seront pas présents sur n'importe quelle plate-forme. Utiliser nmap -V à
voir quels moteurs sont pris en charge.
-T paranoïaque|sournois|poli|normal|agressif|fou (Définir un modèle de synchronisation) .
Alors que les contrôles de synchronisation à grain fin discutés dans la section précédente sont puissants
et efficaces, certaines personnes les trouvent déroutantes. De plus, choisir le bon
Les valeurs peuvent parfois prendre plus de temps que l'analyse que vous essayez d'optimiser. Alors Nmap
offre une approche plus simple, avec six modèles de synchronisation. Vous pouvez les spécifier avec le -T
option et leur numéro (0–5) ou leur nom. Les noms des modèles sont paranoïaque (0),
sournois (1), poli (2), Ordinaire (3), agressif (4), Et fou (5). Les deux premiers sont
pour l'évasion de l'IDS. Le mode poli ralentit l'analyse pour utiliser moins de bande passante et de cible
ressources machines. Le mode normal est le mode par défaut et donc -T3 ne fait rien. Mode agressif
accélère les analyses en supposant que vous êtes sur une vitesse raisonnablement rapide et
réseau fiable. Enfin un mode fou. suppose que vous êtes dans une situation extraordinaire
réseau rapide ou sont prêts à sacrifier une certaine précision pour la vitesse.
Ces modèles permettent à l'utilisateur de spécifier à quel point il souhaite être agressif, tout en
laissant Nmap choisir les valeurs de synchronisation exactes. Les modèles font également une vitesse mineure
ajustements pour lesquels il n'existe pas actuellement d'options de contrôle à granularité fine. Pour
Par exemple, -T4. interdit que le délai d'analyse dynamique dépasse 10 ms pour les ports TCP et
-T5 plafonne cette valeur à 5 ms. Les modèles peuvent être utilisés en combinaison avec des
contrôles, et les contrôles affinés que vous spécifierez auront la priorité sur les
modèle de synchronisation par défaut pour ce paramètre. je recommande d'utiliser -T4 lors de la numérisation
des réseaux raisonnablement modernes et fiables. Gardez cette option même lorsque vous ajoutez
des contrôles affinés afin que vous bénéficiiez de ces optimisations mineures supplémentaires qu'il
permet.
Si vous disposez d'une connexion haut débit ou Ethernet décente, je recommanderais toujours
en utilisant -T4. Certaines personnes aiment -T5 même si c'est trop agressif à mon goût. Gens
préciser parfois -T2 parce qu'ils pensent qu'il est moins susceptible de faire planter les hôtes ou parce que
ils se considèrent polis en général. Souvent, ils ne réalisent pas à quel point
lent -T poli. c'est vrai. Leur analyse peut prendre dix fois plus de temps qu'une analyse par défaut.
Les pannes de machine et les problèmes de bande passante sont rares avec les options de synchronisation par défaut (-T3)
et donc je recommande normalement cela pour les scanners prudents. L'omission de la détection de version est
bien plus efficace que de jouer avec des valeurs de synchronisation pour réduire ces problèmes.
Tandis que -T0. et -T1. peuvent être utiles pour éviter les alertes IDS, elles prendront un
temps extraordinairement long pour analyser des milliers de machines ou de ports. Pendant si longtemps
scan, vous préférerez peut-être définir les valeurs de synchronisation exactes dont vous avez besoin plutôt que de vous fier à la
en conserve -T0 et -T1 valeurs.
Les principaux effets de T0 sérialisent l'analyse afin qu'un seul port soit analysé à la fois,
et attendre cinq minutes entre l'envoi de chaque sonde. T1 et T2 sont similaires mais ils
attendez seulement 15 secondes et 0.4 seconde, respectivement, entre les sondes. T3. est celui de Nmap
comportement par défaut, qui inclut la parallélisation. -T4 fait l'équivalent de
--max-rtt-timeout 1250ms --min-rtt-timeout 100ms --initial-rtt-timeout 500ms
--max-tentatives 6 et définit le délai d'analyse TCP maximal à 10 millisecondes. T5 fait le
équivalent de --max-rtt-timeout 300ms --min-rtt-timeout 50ms --initial-rtt-timeout
250ms --max-tentatives 2 --hôte-timeout 15m ainsi que la définition du délai d'analyse TCP maximal
à 5 ms.
PARE-FEU/ID EVASION ET Usurpation d'identité
De nombreux pionniers d'Internet ont imaginé un réseau mondial ouvert avec un espace d'adressage IP universel
permettant des connexions virtuelles entre deux nœuds. Cela permet aux hôtes d'agir comme de vrais
pairs, se servant et récupérant des informations les uns des autres. Les gens pouvaient accéder à tous
leurs systèmes domestiques du travail, en modifiant les paramètres de climatisation ou en déverrouillant les portes
pour les premiers invités. Cette vision de la connectivité universelle a été étouffée par l'espace d'adressage
les pénuries et les problèmes de sécurité. Au début des années 1990, les organisations ont commencé à déployer
pare-feu dans le but exprès de réduire la connectivité. D'énormes réseaux ont été bouclés
hors de l'Internet non filtré par les proxys d'application, la traduction d'adresses réseau et
filtres de paquets. Le flux illimité d'informations a cédé la place à une réglementation stricte des
canaux de communication approuvés et le contenu qui les traverse.
Les obstructions du réseau telles que les pare-feu peuvent rendre la cartographie d'un réseau extrêmement difficile.
Cela ne sera pas plus facile, car la reconnaissance occasionnelle étouffante est souvent un objectif clé de
la mise en œuvre des dispositifs. Néanmoins, Nmap propose de nombreuses fonctionnalités pour aider à comprendre ces
réseaux complexes et de vérifier que les filtres fonctionnent comme prévu. Il supporte même
mécanismes pour contourner les défenses mal mises en œuvre. L'une des meilleures méthodes de
comprendre votre posture de sécurité réseau consiste à essayer de la vaincre. Placez-vous dans le
l'état d'esprit d'un attaquant et déployez les techniques de cette section contre vos réseaux.
Lancez une analyse de rebond FTP, une analyse inactive, une attaque par fragmentation ou essayez de passer par un tunnel
de vos propres mandataires.
En plus de restreindre l'activité du réseau, les entreprises surveillent de plus en plus le trafic
avec des systèmes de détection d'intrusion (IDS). Tous les principaux IDS sont livrés avec des règles conçues pour
détecter les scans Nmap car les scans sont parfois précurseurs d'attaques. Beaucoup de ces
les produits se sont récemment transformés en intrusion prévention systèmes (IPS). qui activement
bloquer le trafic jugé malveillant. Malheureusement pour les administrateurs réseau et les fournisseurs d'IDS,
détecter de manière fiable les mauvaises intentions en analysant les données par paquets est un problème difficile. Attaquants
avec de la patience, des compétences et l'aide de certaines options Nmap peuvent généralement passer par les IDS
non détecté. Pendant ce temps, les administrateurs doivent faire face à un grand nombre de faux positifs
résultats où une activité innocente est mal diagnostiquée et alertée ou bloquée.
Parfois, les gens suggèrent que Nmap ne devrait pas offrir de fonctionnalités pour contourner les règles de pare-feu
ou se faufiler devant les IDS. Ils soutiennent que ces caractéristiques sont tout aussi susceptibles d'être mal utilisées par
les attaquants utilisés par les administrateurs pour améliorer la sécurité. Le problème avec cette logique est
que ces méthodes seraient toujours utilisées par des attaquants, qui trouveraient simplement d'autres outils ou
patcher la fonctionnalité dans Nmap. Pendant ce temps, les administrateurs trouveraient tellement
plus difficile de faire leur travail. Déployer uniquement des serveurs FTP modernes et corrigés est une méthode bien plus puissante
défense que d'essayer d'empêcher la distribution d'outils mettant en œuvre le rebond FTP
attaque.
Il n'y a pas de solution miracle (ou d'option Nmap) pour détecter et contourner les pare-feu et les IDS
systèmes. Il faut des compétences et de l'expérience. Un tutoriel dépasse le cadre de cette référence
guide, qui ne répertorie que les options pertinentes et décrit ce qu'elles font.
-f (paquets de fragments); --mtu (en utilisant le MTU spécifié) .
Votre -f L'option fait que l'analyse demandée (y compris les analyses ping) utilise de minuscules fragments
paquets IP. L'idée est de diviser l'en-tête TCP sur plusieurs paquets pour le rendre
plus difficile pour les filtres de paquets, les systèmes de détection d'intrusion et d'autres désagréments à détecter
que fais tu. Soyez prudent avec cela! Certains programmes ont du mal à gérer ces
petits paquets. Le renifleur à l'ancienne nommé segmentation Sniffit a immédiatement fait défaut
à la réception du premier fragment. Spécifiez cette option une fois, et Nmap divise le
paquets dans huit octets ou moins après l'en-tête IP. Ainsi, un en-tête TCP de 20 octets serait
divisé en trois paquets. Deux avec huit octets de l'en-tête TCP et un avec le
carré final. Bien entendu, chaque fragment a également un en-tête IP. Spécifier -f à nouveau pour utiliser 16
octets par fragment (réduction du nombre de fragments). Ou vous pouvez spécifier votre propre
taille de décalage avec le --mtu option. Ne précisez pas non plus -f si tu utilises --mtu. Le décalage
doit être un multiple de huit. Tandis que les paquets fragmentés ne passeront pas par les filtres de paquets et
pare-feu qui mettent en file d'attente tous les fragments IP, tels que le CONFIG_IP_ALWAYS_DEFRAG option
le noyau Linux, certains réseaux ne peuvent pas se permettre les performances que cela provoque et donc
laissez-le désactivé. D'autres ne peuvent pas l'activer car les fragments peuvent prendre des
routes dans leurs réseaux. Certains systèmes sources défragmentent les paquets sortants dans le
noyau. Linux avec les iptables. le module de suivi de connexion en est un exemple. Fait une
scanner pendant qu'un renifleur tel que Wireshark. est en cours d'exécution pour s'assurer que les paquets envoyés sont
fragmenté. Si votre système d'exploitation hôte pose des problèmes, essayez le --send-eth. possibilité de contourner
la couche IP et envoyer des trames Ethernet brutes.
La fragmentation n'est prise en charge que pour les fonctionnalités de paquets bruts de Nmap, qui incluent TCP et
Analyses de port UDP (à l'exception de l'analyse de connexion et de l'analyse de rebond FTP) et détection du système d'exploitation. Caractéristiques
tels que la détection de version et le moteur de script Nmap ne prennent généralement pas en charge
fragmentation car ils dépendent de la pile TCP de votre hôte pour communiquer avec la cible
prestations de service.
-D decoy1[,decoy2][,MOI][,...] (Masquer un scan avec des leurres) .
Provoque l'exécution d'une analyse de leurre, qui fait apparaître à l'hôte distant que le
hôte(s) que vous spécifiez comme leurres scannent également le réseau cible. Ainsi leur IDS
peuvent signaler 5 à 10 analyses de ports à partir d'adresses IP uniques, mais ils ne sauront pas quelle IP
les scannait et qui étaient des leurres innocents. Bien que cela puisse être vaincu par
traçage du chemin du routeur, suppression de la réponse et autres mécanismes actifs, il est généralement
une technique efficace pour cacher votre adresse IP.
Séparez chaque hôte leurre par des virgules et vous pouvez éventuellement utiliser ME. comme l'un des
leurres pour représenter la position de votre véritable adresse IP. Si tu ME mets en sixième
position ou plus tard, certains détecteurs de balayage de ports courants (tels que ceux de Solar Designer.
excellent Scanlogd). sont peu susceptibles d'afficher votre adresse IP. Si vous n'utilisez pas
MOI, Nmap vous mettra dans une position aléatoire. Vous pouvez également utiliser RND. générer un
adresse IP aléatoire, non réservée, ou RND :nombre générer nombre Adresses.
Notez que les hôtes que vous utilisez comme leurres doivent être actifs ou vous pourriez accidentellement inonder SYN
vos cibles. De plus, il sera assez facile de déterminer quel hôte analyse si seulement
on est en fait sur le réseau. Vous voudrez peut-être utiliser des adresses IP au lieu de noms
(ainsi les réseaux leurres ne vous voient pas dans leurs journaux de serveurs de noms).
Les leurres sont utilisés à la fois dans le scan ping initial (en utilisant ICMP, SYN, ACK ou autre) et
pendant la phase d'analyse des ports proprement dite. Les leurres sont également utilisés lors de la détection à distance du système d'exploitation
(-O). Les leurres ne fonctionnent pas avec la détection de version ou l'analyse de connexion TCP. Lorsqu'un délai d'analyse
est en vigueur, le délai est appliqué entre chaque lot de sondes usurpées, et non entre
chaque sonde individuelle. Étant donné que les leurres sont envoyés par lot en une seule fois, ils peuvent
violer temporairement les limites de contrôle de congestion.
Il convient de noter que l'utilisation d'un trop grand nombre de leurres peut ralentir votre analyse et potentiellement même
le rendre moins précis. De plus, certains FAI filtreront vos paquets falsifiés, mais de nombreux
ne limitez pas du tout les paquets IP falsifiés.
-S Adresse IP (Adresse source falsifiée) .
Dans certaines circonstances, Nmap peut ne pas être en mesure de déterminer votre adresse source (Nmap
vous dira si c'est le cas). Dans cette situation, utilisez -S avec l'adresse IP de
l'interface à travers laquelle vous souhaitez envoyer des paquets.
Une autre utilisation possible de ce drapeau est d'usurper le scan pour faire croire aux cibles que
quelqu'un d'autre les scanne. Imaginez qu'une entreprise soit scannée à plusieurs reprises par un port
concurrent! le -e option et - M sont généralement nécessaires pour ce type d'utilisation. Noter
que vous ne recevrez généralement pas de paquets de réponse en retour (ils seront adressés à l'adresse IP
vous falsifiez), donc Nmap ne produira pas de rapports utiles.
-e interface (Utiliser l'interface spécifiée) .
Indique à Nmap sur quelle interface envoyer et recevoir des paquets. Nmap devrait pouvoir
détecter cela automatiquement, mais il vous dira s'il ne peut pas.
--port-source numéro de port; -g numéro de port (Numéro de port source d'usurpation) .
Une mauvaise configuration étonnamment courante consiste à faire confiance au trafic basé uniquement sur la source
numéro de port. Il est facile de comprendre comment cela se produit. Un administrateur définira
un nouveau pare-feu brillant, pour être inondé de plaintes d'utilisateurs ingrats
dont les applications ont cessé de fonctionner. En particulier, le DNS peut être cassé parce que l'UDP
Les réponses DNS des serveurs externes ne peuvent plus entrer dans le réseau. FTP en est un autre
exemple courant. Dans les transferts FTP actifs, le serveur distant essaie d'établir un
connexion au client pour transférer le fichier demandé.
Des solutions sécurisées à ces problèmes existent, souvent sous la forme de
proxys ou modules de pare-feu d'analyse de protocole. Malheureusement, il y a aussi plus facile,
solutions non sécurisées. Notant que les réponses DNS proviennent du port 53 et le FTP actif du port
20, de nombreux administrateurs sont tombés dans le piège de simplement autoriser le trafic entrant
de ces ports. Ils supposent souvent qu'aucun attaquant ne remarquerait et n'exploiterait de telles
trous de pare-feu. Dans d'autres cas, les administrateurs considèrent cela comme un palliatif à court terme
mesure jusqu'à ce qu'ils puissent mettre en œuvre une solution plus sûre. Puis ils oublient la sécurité
surclassement.
Les administrateurs réseau surmenés ne sont pas les seuls à tomber dans ce piège.
De nombreux produits ont été expédiés avec ces règles non sécurisées. Même Microsoft a été
coupable. Les filtres IPsec fournis avec Windows 2000 et Windows XP contiennent un
règle implicite qui autorise tout le trafic TCP ou UDP à partir du port 88 (Kerberos). En autre
cas bien connu, les versions du pare-feu personnel Zone Alarm jusqu'à 2.1.25 permettaient
paquets UDP entrants avec le port source 53 (DNS) ou 67 (DHCP).
Nmap offre la -g et --port-source options (elles sont équivalentes) pour exploiter ces
faiblesses. Fournissez simplement un numéro de port et Nmap enverra des paquets à partir de ce port
lorsque c'est possible. La plupart des opérations d'analyse qui utilisent des sockets bruts, y compris SYN et UDP
scans, supporte complètement l'option. L'option n'a notamment pas d'effet pour
toutes les opérations qui utilisent des sockets normaux du système d'exploitation, y compris les requêtes DNS, TCP
Contact analyse,. détection de version et analyse de script. Réglage du port source également
ne fonctionne pas pour la détection du système d'exploitation, car Nmap doit utiliser des numéros de port différents pour
certains tests de détection du système d'exploitation fonctionnent correctement.
--Les données hex un magnifique (Ajouter des données binaires personnalisées aux paquets envoyés) .
Cette option vous permet d'inclure des données binaires en tant que charge utile dans les paquets envoyés. hex un magnifique Au cours de cette réunion, Matthew a obtenu de précieux conseils et Linda lui a demandé de la tenir au courant de ses progrès.
être spécifié dans l'un des formats suivants : 0xAABBCCDDEEFF , AABBCCDDEEFF or
\xAA\xBB\xCC\xDD\xEE\xFF . Des exemples d'utilisation sont --Les données 0xdeadbeef et --Les données
\xCA\xFE\x09. Notez que si vous spécifiez un nombre comme 0x00ff aucune conversion d'ordre d'octet
est effectuée. Assurez-vous de spécifier les informations dans l'ordre des octets attendus par le
Récepteur.
--chaîne-de-données un magnifique (Ajouter une chaîne personnalisée aux paquets envoyés) .
Cette option vous permet d'inclure une chaîne normale comme charge utile dans les paquets envoyés. un magnifique vous
contenir n'importe quelle chaîne. Cependant, notez que certains caractères peuvent dépendre de la configuration de votre système.
locale et le récepteur peuvent ne pas voir les mêmes informations. Assurez-vous également de joindre
la chaîne entre guillemets et échapper à tous les caractères spéciaux du shell.
Exemples : --chaîne-de-données "Analyse menée by Sécurité Opérations, l'extension de 7192 or
--chaîne-de-données "Ph34r my l33t compétences". Gardez à l'esprit que personne n'est susceptible de
voir les commentaires laissés par cette option à moins qu'ils ne surveillent attentivement le réseau
avec un renifleur ou des règles IDS personnalisées.
--données-longueur nombre (Ajouter des données aléatoires aux paquets envoyés) .
Normalement, Nmap envoie des paquets minimalistes contenant uniquement un en-tête. Donc ses paquets TCP
sont généralement de 40 octets et les requêtes d'écho ICMP ne sont que de 28. Certains ports UDP. et IP
protocoles. obtenir une charge utile personnalisée par défaut. Cette option indique à Nmap d'ajouter le
nombre donné d'octets aléatoires à la plupart des paquets qu'il envoie, et de ne pas en utiliser
charges utiles spécifiques au protocole. (Utiliser --données-longueur 0 pour aucun aléatoire ou spécifique au protocole
charges utiles.. Détection du système d'exploitation (-O) les paquets ne sont pas affectés. parce que la précision là-bas
nécessite la cohérence de la sonde, mais la plupart des paquets de ping et d'analyse de ports le prennent en charge. Ce
ralentit un peu les choses, mais peut rendre un scan légèrement moins visible.
--options-ip S|R [itinéraire]|L [itinéraire]|T|U ; --options-ip hex un magnifique (Envoyez des paquets avec
options IP spécifiées).
Votre IP protocole[13] propose plusieurs options qui peuvent être placées dans les en-têtes de paquets.
Contrairement aux options TCP omniprésentes, les options IP sont rarement vues en raison de leur aspect pratique et
soucis de sécurité. En fait, de nombreux routeurs Internet bloquent les options les plus dangereuses
comme le routage de la source. Pourtant, les options peuvent toujours être utiles dans certains cas pour déterminer
et en manipulant la route du réseau vers les machines cibles. Par exemple, vous pourrez peut-être
utiliser l'option record route pour déterminer un chemin vers une cible même lorsqu'il est plus traditionnel
les approches de type traceroute échouent. Ou si vos paquets sont abandonnés par un certain
pare-feu, vous pourrez peut-être spécifier une route différente avec la source stricte ou lâche
options de routage.
Le moyen le plus puissant de spécifier les options IP est de simplement transmettre des valeurs en tant que
argument --options-ip. Faites précéder chaque nombre hexadécimal par \x puis les deux chiffres. Tu peux
répéter certains caractères en les faisant suivre d'un astérisque puis du nombre de
fois que vous souhaitez qu'ils répètent. Par exemple, \x01\x07\x04\x00*36\x01 est une chaîne hexadécimale
contenant 36 octets NUL.
Nmap propose également un mécanisme de raccourci pour spécifier des options. Passez simplement la lettre
R, T ou U pour demander un itinéraire d'enregistrement. horodatage d'enregistrement,. ou les deux options ensemble,
respectivement. Routage de source lâche ou strict. peut être spécifié avec un L ou un S
suivi d'un espace, puis d'une liste d'adresses IP séparées par des espaces.
Si vous souhaitez voir les options dans les paquets envoyés et reçus, précisez --paquet-trace.
Pour plus d'informations et des exemples d'utilisation des options IP avec Nmap, consultez
http://seclists.org/nmap-dev/2006/q3/52.
--ttl Plus-value (Définir le champ de durée de vie IP) .
Définit le champ de durée de vie IPv4 dans les paquets envoyés à la valeur donnée.
--randomize-hôtes (Randomiser l'ordre de l'hôte cible) .
Indique à Nmap de mélanger chaque groupe de jusqu'à 16384 hôtes avant de les analyser. Cela peut
rendre les analyses moins évidentes pour divers systèmes de surveillance de réseau, en particulier lorsque vous
combinez-le avec des options de synchronisation lente. Si vous souhaitez randomiser sur des tailles de groupe plus importantes,
augmenter PING_GROUP_SZ. dans nmap.h. et recompiler. Une solution alternative consiste à
générer la liste d'adresses IP cibles avec une analyse de liste (-SH -n -au nom de fichier), randomisez-le avec
un script Perl, puis fournissez la liste entière à Nmap avec -il..
--usurpation-mac MAC adresse, préfixe, or vendeur prénom (Adresse MAC usurpée) .
Demande à Nmap d'utiliser l'adresse MAC donnée pour toutes les trames Ethernet brutes qu'il envoie.
Cette option implique --send-eth. pour s'assurer que Nmap envoie réellement au niveau Ethernet
paquets. Le MAC donné peut prendre plusieurs formats. S'il s'agit simplement du nombre 0, Nmap
choisit une adresse MAC complètement aléatoire pour la session. Si la chaîne donnée est un
nombre pair de chiffres hexadécimaux (avec les paires éventuellement séparées par deux points), Nmap
utilisez-les comme MAC. Si moins de 12 chiffres hexadécimaux sont fournis, Nmap remplit le
reste des six octets avec des valeurs aléatoires. Si l'argument n'est pas un zéro ou un hexadécimal
chaîne, Nmap parcourt les préfixes nmap-mac pour trouver un nom de fournisseur contenant le
chaîne donnée (elle est insensible à la casse). Si une correspondance est trouvée, Nmap utilise l'OUI du fournisseur
(préfixe à trois octets). et remplit les trois octets restants au hasard. Valide
--usurpation-mac les exemples d'arguments sont Apple, 0, 01:02:03:04:05:06, deadbeefcafe, 0020F2,
et Cisco. Cette option n'affecte que les analyses de paquets brutes telles que l'analyse SYN ou la détection du système d'exploitation,
fonctionnalités non orientées connexion telles que la détection de version ou le script Nmap
Moteur.
--proxy Séparées par des virgules liste of procuration URL (Relayez les connexions TCP via une chaîne de
mandataires).
Demande à Nmap d'établir des connexions TCP avec une cible finale via la chaîne fournie de
un ou plusieurs proxys HTTP ou SOCKS4. Les proxys peuvent aider à masquer la véritable source d'une analyse ou
échapper à certaines restrictions de pare-feu, mais elles peuvent entraver les performances de l'analyse en
latence croissante. Les utilisateurs peuvent avoir besoin d'ajuster les délais d'attente Nmap et d'autres paramètres d'analyse
par conséquent. En particulier, une baisse --max-parallélisme peut aider car certains proxy
refuser de gérer autant de connexions simultanées que Nmap ouvre par défaut.
Cette option prend comme argument une liste de proxys, exprimée sous forme d'URL au format
proto://hôte:port. Utilisez des virgules pour séparer les URL de nœud dans une chaîne. Aucune authentification n'est
pris en charge encore. Les protocoles valides sont HTTP et SOCKS4.
Attention : cette fonctionnalité est encore en cours de développement et présente des limitations. Il est
implémenté dans la bibliothèque nsock et n'a donc aucun effet sur le ping, l'analyse des ports
et les phases de découverte du système d'exploitation d'une analyse. Seuls NSE et l'analyse de version bénéficient de cette option
jusqu'à présent, d'autres fonctionnalités peuvent révéler votre véritable adresse. Les connexions SSL ne sont pas encore
pris en charge, pas plus que la résolution DNS côté proxy (les noms d'hôtes sont toujours résolus par Nmap).
--badsum (Envoyer des paquets avec de fausses sommes de contrôle TCP/UDP) .
Demande à Nmap d'utiliser une somme de contrôle TCP, UDP ou SCTP non valide pour les paquets envoyés à la cible
hôtes. Étant donné que pratiquement toutes les piles IP hôtes suppriment correctement ces paquets, toutes les réponses
reçus proviennent probablement d'un pare-feu ou d'un IDS qui n'a pas pris la peine de vérifier le
somme de contrôle. Pour plus de détails sur cette technique, voir https://nmap.org/p60-12.html
--adler32 (Utilisez Adler32 obsolète au lieu de CRC32C pour les sommes de contrôle SCTP) .
Demande à Nmap d'utiliser l'algorithme Adler32 obsolète pour calculer la somme de contrôle SCTP.
If --adler32 n'est pas indiqué, le CRC-32C (Castagnoli) est utilisé. RFC 2960[14] à l'origine
défini Adler32 comme algorithme de somme de contrôle pour SCTP ; RFC 4960[7] plus tard redéfini le SCTP
sommes de contrôle pour utiliser CRC-32C. Les implémentations SCTP actuelles devraient utiliser CRC-32C, mais dans
afin d'obtenir des réponses d'anciennes implémentations SCTP héritées, il peut être préférable
d'utiliser Adler32.
SORTIE
Tout outil de sécurité n'est aussi utile que la sortie qu'il génère. Des tests complexes et
les algorithmes ont peu de valeur s'ils ne sont pas présentés de manière organisée et compréhensible
mode. Étant donné le nombre de façons dont Nmap est utilisé par des personnes et d'autres logiciels, aucun
le format peut plaire à tout le monde. Ainsi Nmap propose plusieurs formats, dont le mode interactif
pour les humains à lire directement et XML pour une analyse facile par logiciel.
En plus d'offrir différents formats de sortie, Nmap fournit des options pour contrôler
la verbosité de la sortie ainsi que les messages de débogage. Les types de sortie peuvent être envoyés à
sortie standard ou à des fichiers nommés, auxquels Nmap peut ajouter ou écraser. Les fichiers de sortie peuvent
également être utilisé pour reprendre les analyses interrompues.
Nmap rend la sortie disponible dans cinq formats différents. La valeur par défaut est appelée interactive
sortir,. et il est envoyé à la sortie standard (stdout). Il existe également une sortie normale.
qui est similaire à interactif sauf qu'il affiche moins d'informations d'exécution et
avertissements car il devrait être analysé une fois l'analyse terminée plutôt que
de manière interactive.
Sortie XML. est l'un des types de sortie les plus importants, car il peut être converti en HTML,
facilement analysé par des programmes tels que les interfaces utilisateur graphiques Nmap, ou importé dans
bases de données.
Les deux types de sortie restants sont la sortie grepable simple. qui comprend la plupart
informations pour un hôte cible sur une seule ligne, et sCRiPt KiDDi3 0utPUt. pour les utilisateurs qui
se considèrent |<-r4d.
Alors que la sortie interactive est la valeur par défaut et n'a pas d'options de ligne de commande associées, le
les quatre autres options de format utilisent la même syntaxe. Ils prennent un argument, qui est le
nom de fichier dans lequel les résultats doivent être stockés. Plusieurs formats peuvent être spécifiés, mais chacun
le format ne peut être spécifié qu'une seule fois. Par exemple, vous pouvez souhaiter enregistrer la sortie normale pour
votre propre examen tout en sauvegardant le XML du même scan pour l'analyse programmatique. Tu pourrais faire
ceci avec les options -bœuf monscan.xml -au monscan.nmap. Bien que ce chapitre utilise le simple
des noms comme myscan.xml par souci de concision, des noms plus descriptifs sont généralement recommandés. le
les noms choisis sont une question de préférence personnelle, bien que j'utilise des noms longs qui incorporent
la date d'analyse et un mot ou deux décrivant l'analyse, placés dans un répertoire nommé d'après le
entreprise que je scanne.
Bien que ces options enregistrent les résultats dans des fichiers, Nmap imprime toujours la sortie interactive sur stdout
comme d'habitude. Par exemple, la commande nmap -bœuf monscan.xml l'objectif imprime XML dans myscan.xml et
remplit la sortie standard avec les mêmes résultats interactifs qu'il aurait imprimés si -bœuf
n'était pas du tout précisé. Vous pouvez changer cela en passant un trait d'union comme argument
à l'un des types de format. Cela amène Nmap à désactiver la sortie interactive, et à la place
imprimez les résultats dans le format que vous avez spécifié dans le flux de sortie standard. Alors la commande
nmap -bœuf - l'objectif enverra uniquement la sortie XML à stdout.. Des erreurs graves peuvent encore être
imprimé dans le flux d'erreur normal, stderr..
Contrairement à certains arguments Nmap, l'espace entre l'indicateur d'option du fichier journal (comme -bœuf) et
le nom de fichier ou le tiret est obligatoire. Si vous omettez les drapeaux et donnez des arguments tels que -oG-
or -oXscan.xml, une fonctionnalité de compatibilité descendante de Nmap entraînera la création de
Ordinaire le format fichiers de sortie nommés G- et Xscan.xml respectivement.
Tous ces arguments appuient strftime-Comme. conversions dans le nom de fichier. %H, %M, %S,
%m, %d, %y et %Y sont tous exactement les mêmes que dans strftime. %T est identique à %H%M%S, %R
est identique à %H%M et %D est identique à %m%d%y. Un % suivi de tout autre caractère
ne donne que ce caractère (%% vous donne un symbole de pourcentage). Alors -bœuf 'scan-%T-%D.xml' sera
utilisez un fichier XML avec un nom sous la forme scan-144840-121307.xml.
Nmap propose également des options pour contrôler la verbosité de l'analyse et pour ajouter aux fichiers de sortie plutôt
que de les écraser. Toutes ces options sont décrites ci-dessous.
Nmap Sortie Formats
-au spécif_fichier (sortie normale) .
Demande que la sortie normale soit dirigée vers le nom de fichier donné. Tel que discuté plus haut,
cela diffère légèrement de la sortie interactive.
-bœuf spécif_fichier (sortie XML) .
Demande que la sortie XML soit dirigée vers le nom de fichier donné. Nmap inclut un document
définition de type (DTD) qui permet aux parseurs XML de valider la sortie XML de Nmap. Alors qu'il
est principalement destiné à une utilisation programmatique, il peut également aider les humains à interpréter Nmap XML
sortir. La DTD définit les éléments juridiques du format et énumère souvent les
attributs et valeurs qu'ils peuvent assumer. La dernière version est toujours disponible à partir de
https://svn.nmap.org/nmap/docs/nmap.dtd.
XML offre un format stable qui est facilement analysé par le logiciel. Les analyseurs XML gratuits sont
disponible pour tous les principaux langages informatiques, y compris C/C++, Perl, Python et Java.
Les gens ont même écrit des liaisons pour la plupart de ces langages pour gérer la sortie Nmap
et l'exécution en particulier. Les exemples sont Nmap :: Scanner[15]. et Nmap::Parseur[16]. dans
Perl CPAN. Dans presque tous les cas où une application non triviale s'interface avec Nmap,
XML est le format préféré.
La sortie XML fait référence à une feuille de style XSL qui peut être utilisée pour formater les résultats comme
HTML. La façon la plus simple d'utiliser ceci est simplement de charger la sortie XML dans un navigateur Web
comme Firefox ou IE. Par défaut, cela ne fonctionnera que sur la machine sur laquelle vous avez exécuté Nmap
(ou une configuration similaire) en raison du chemin d'accès du système de fichiers nmap.xsl codé en dur. Utiliser
le --webxml or --feuille de style options pour créer des fichiers XML portables qui s'affichent au format HTML
sur n'importe quelle machine connectée au Web.
-oS spécif_fichier (ScRipT KIdd|3 SORTIE) .
La sortie du script kiddie est comme la sortie interactive, sauf qu'elle est post-traitée pour
convient mieux au l33t HaXXorZ qui méprisait auparavant Nmap en raison de sa cohérence
majuscules et orthographe. Les personnes ayant des troubles de l'humour doivent noter que cette option est
se moquer des script kiddies avant de m'en vouloir pour soi-disant « les avoir aidé ».
-oG spécif_fichier (sortie grappable) .
Ce format de sortie est traité en dernier car il est obsolète. Le format de sortie XML est
beaucoup plus puissant et est presque aussi pratique pour les utilisateurs expérimentés. XML est un
standard pour lequel des dizaines d'excellents parseurs sont disponibles, tandis que la sortie grepable est
mon propre hack simple. XML est extensible pour prendre en charge les nouvelles fonctionnalités Nmap telles qu'elles sont
publié, alors que je dois souvent omettre ces fonctionnalités de la sortie grepable par manque de
endroit pour les mettre.
Néanmoins, la sortie grepable est toujours très populaire. C'est un format simple qui répertorie
chaque hôte sur une ligne et peut être recherché et analysé de manière triviale avec Unix standard
outils tels que grep, awk, cut, sed, diff et Perl. Même moi, je l'utilise habituellement pour une fois
tests effectués en ligne de commande. Trouver tous les hôtes avec le port SSH ouvert ou qui
exécutent Solaris ne prend qu'un simple grep pour identifier les hôtes, redirigé vers un awk ou
cut pour imprimer les champs souhaités.
La sortie grepable se compose de commentaires (lignes commençant par un dièse (#)). et cible
lignes. Une ligne cible comprend une combinaison de six champs étiquetés, séparés par des onglets
et suivi d'un deux-points. Les champs sont Host, Ports, Protocols, Ignored State, OS,
Index de séquence, ID IP et état.
Le plus important de ces champs est généralement Ports, qui donne des détails sur chaque
port intéressant. Il s'agit d'une liste d'entrées de port séparées par des virgules. Chaque entrée de port
représente un port intéressant et prend la forme de sept barres obliques (/) séparées
sous-champs. Ces sous-champs sont : Numéro de port, État, Protocole, Propriétaire, Service, SunRPC
informations et informations sur la version.
Comme pour la sortie XML, cette page de manuel ne permet pas de documenter l'intégralité du format. UNE
un aperçu plus détaillé du format de sortie grepable Nmap est disponible à partir de
https://nmap.org/book/output-formats-grepable-output.html.
-oA nom de base (Sortie vers tous les formats) .
Pour plus de commodité, vous pouvez spécifier -oA nom de base pour stocker les résultats de l'analyse au format normal, XML,
et grepable formats à la fois. Ils sont stockés dans nom de base.nmap, nom de base.xml, et
nom de base.gnmap, respectivement. Comme avec la plupart des programmes, vous pouvez préfixer les noms de fichiers avec
un chemin de répertoire, tel que ~/nmaplogs/foocorp/ sous Unix ou c:\hacking\sco sous Windows.
Verbosité et débogage Options
-v (Augmenter le niveau de verbosité) .
Augmente le niveau de verbosité, obligeant Nmap à imprimer plus d'informations sur l'analyse
en cours. Les ports ouverts sont affichés au fur et à mesure qu'ils sont trouvés et les estimations de temps d'achèvement sont
fourni lorsque Nmap pense qu'une analyse prendra plus de quelques minutes. Utilisez-le deux fois ou
plus pour encore plus de verbosité : -vv, ou donner directement un niveau de verbosité, par exemple
-v3..
La plupart des changements n'affectent que la sortie interactive, et certains affectent également la normale et le script
sortie kiddie. Les autres types de sortie sont destinés à être traités par des machines, donc Nmap
peut donner des détails substantiels par défaut dans ces formats sans fatiguer un humain
utilisateur. Cependant, il y a quelques changements dans d'autres modes où la taille de sortie peut être réduite
substantiellement en omettant certains détails. Par exemple, une ligne de commentaire dans le grepable
la sortie qui fournit une liste de tous les ports analysés n'est imprimée qu'en mode détaillé
car cela peut être assez long.
-d (Augmenter le niveau de débogage) .
Lorsque même le mode détaillé ne vous fournit pas suffisamment de données, le débogage est disponible
pour vous inonder de bien plus ! Comme pour l'option de verbosité (-v), le débogage est activé
avec un indicateur de ligne de commande (-d) et le niveau de débogage peut être augmenté en le spécifiant
plusieurs fois,. un péché -jj, ou en définissant directement un niveau. Par example, -d9 ensembles
niveau neuf. C'est le niveau efficace le plus élevé et produira des milliers de lignes
à moins que vous n'exécutiez une analyse très simple avec très peu de ports et de cibles.
La sortie de débogage est utile lorsqu'un bogue est suspecté dans Nmap, ou si vous êtes simplement
confus quant à ce que fait Nmap et pourquoi. Comme cette fonctionnalité est principalement destinée aux
développeurs, les lignes de débogage ne sont pas toujours explicites. Vous pouvez obtenir quelque chose comme :
Valeurs de délai d'attente : srtt : -1 rttvar : -1 à : 1000000 delta 14987 ==> srtt : 14987 rttvar :
14987 à : 100000. Si vous ne comprenez pas une ligne, vos seuls recours sont d'ignorer
le, recherchez-le dans le code source ou demandez de l'aide à partir de la liste de développement
(nmap-dev).. Certaines lignes s'expliquent d'elles-mêmes, mais les messages deviennent plus obscurs à mesure que
le niveau de débogage est augmenté.
--raison (Motifs d'état d'hôte et de port) .
Affiche la raison pour laquelle chaque port est défini sur un état spécifique et la raison pour laquelle chaque hôte est actif
ou vers le bas. Cette option affiche le type de paquet qui a déterminé un port ou des hôtes
Etat. Par exemple, un paquet RST d'un port fermé ou une réponse d'écho d'un
héberger. Les informations que Nmap peut fournir sont déterminées par le type de scan ou de ping. le
Analyse SYN et ping SYN (-HH et -PS) sont très détaillés, mais le scan de connexion TCP (-St)
est limitée par la mise en œuvre de la Contact appel système. Cette fonctionnalité est
automatiquement activé par l'option de débogage (-d). et les résultats sont stockés dans le journal XML
fichiers même si cette option n'est pas spécifiée.
--stats-chaque fois (Imprimer les statistiques de synchronisation périodiques) .
Imprime périodiquement un message d'état de synchronisation après chaque intervalle de fois. Le temps est un
spécification du type décrit dans la section intitulée « CALENDRIER ET PERFORMANCE » ; alors
par exemple, utilisez --stats-chaque 10s pour obtenir une mise à jour de statut toutes les 10 secondes. Mises à jour
sont imprimés sur la sortie interactive (l'écran) et la sortie XML.
--paquet-trace (Tracer les paquets et les données envoyées et reçues) .
Force Nmap à imprimer un résumé de chaque paquet envoyé ou reçu. Ceci est souvent utilisé
pour le débogage, mais c'est aussi un moyen précieux pour les nouveaux utilisateurs de comprendre exactement ce
Nmap se débrouille sous les couvertures. Pour éviter d'imprimer des milliers de lignes, vous pouvez
spécifier un nombre limité de ports à analyser, comme - p20-30. Si vous ne vous souciez que de la
activités du sous-système de détection de version, utilisez --version-trace plutôt. Si vous seulement
se soucier du traçage des scripts, spécifiez --script-trace. Avec --paquet-trace, vous obtenez tout
ce qui précède.
--ouvert (Afficher uniquement les ports ouverts (ou éventuellement ouverts)) .
Parfois, vous ne vous souciez que des ports auxquels vous pouvez réellement vous connecter (ceux ouverts), et ne
voulez des résultats encombrés de ports fermés, filtrés et fermés|filtrés. Sortir
la personnalisation est normalement effectuée après l'analyse à l'aide d'outils tels que grep, awk et Perl,
mais cette fonctionnalité a été ajoutée en raison de demandes écrasantes. Spécifier --ouvert voir seulement
hôtes avec au moins un port ouvert, ouvert|filtré ou non filtré, et ne voient que les ports dans
ces états. Ces trois états sont traités comme ils le sont normalement, ce qui signifie
qui ouvert|filtré et non filtré peut être condensé en comptes s'il y a un
nombre écrasant d'entre eux.
--iflist (Liste des interfaces et des routes) .
Imprime la liste des interfaces et les routes système détectées par Nmap. Ceci est utile pour
débogage des problèmes de routage ou d'une mauvaise caractérisation des périphériques (comme Nmap traitant un PPP
connexion comme Ethernet).
Divers sortie Options
--append-sortie (Ajouter plutôt qu'écraser les fichiers de sortie) .
Lorsque vous spécifiez un nom de fichier pour un indicateur de format de sortie tel que -bœuf or -au, ce fichier est
écrasé par défaut. Si vous préférez conserver le contenu existant du fichier et
ajouter les nouveaux résultats, spécifier le --append-sortie option. Tous les noms de fichiers de sortie
spécifié dans cette exécution Nmap sera alors ajouté plutôt que écrasé. Cette
ne fonctionne pas bien pour XML (-bœuf) analyser les données car le fichier résultant ne sera généralement pas analysé
correctement jusqu'à ce que vous le répariez à la main.
--reprendre nom de fichier (Reprendre l'analyse interrompue) .
Certaines exécutions étendues de Nmap prennent beaucoup de temps, de l'ordre de quelques jours. De telles analyses ne
toujours courir jusqu'à la fin. Des restrictions peuvent empêcher l'exécution de Nmap pendant le travail
heures, le réseau pourrait tomber en panne, la machine sur laquelle Nmap s'exécute pourrait subir un
redémarrage planifié ou imprévu, ou Nmap lui-même pourrait se bloquer. L'administrateur en cours d'exécution
Nmap peut également l'annuler pour toute autre raison, en appuyant sur ctrl-C. Redémarrage du
tout le balayage depuis le début peut être indésirable. Heureusement, si normal (-au) ou
à saisir (-oG) les journaux ont été conservés, l'utilisateur peut demander à Nmap de reprendre l'analyse avec le
cible sur laquelle il travaillait lorsque l'exécution a cessé. Spécifiez simplement le --reprendre option et
passer le fichier de sortie normal/grepable comme argument. Aucun autre argument n'est
autorisé, car Nmap analyse le fichier de sortie pour utiliser les mêmes que ceux spécifiés précédemment.
Appelez simplement Nmap comme nmap --reprendre nom du fichier journal. Nmap ajoutera de nouveaux résultats au
fichiers de données spécifiés dans l'exécution précédente. La reprise ne prend pas en charge le XML
format de sortie, car combiner les deux exécutions en un seul fichier XML valide serait
difficile.
--feuille de style chemin or URL (Définir la feuille de style XSL pour transformer la sortie XML) .
Nmap est livré avec un XSL. feuille de style. nommé nmap.xsl. pour visualiser ou traduire XML
sortie en HTML.. La sortie XML inclut une directive xml-stylesheet qui pointe vers
nmap.xml où il a été initialement installé par Nmap. Exécutez le fichier XML via un XSLT
processeur tel que xsltproc[17]. pour produire un fichier HTML. Ouverture directe du XML
fichier dans un navigateur ne fonctionne plus bien car les navigateurs modernes limitent les emplacements un
la feuille de style peut être chargée à partir de. Si vous souhaitez utiliser une feuille de style différente, spécifiez-la
comme argument de --feuille de style. Vous devez transmettre le chemin d'accès complet ou l'URL. Un commun
l'invocation est --feuille de style https://nmap.org/svn/docs/nmap.xsl. Cela indique à un XSLT
processeur pour charger la dernière version de la feuille de style à partir de Nmap.Org. le --webxml
L'option fait la même chose avec moins de frappe et de mémorisation. Chargement du XSL depuis
Nmap.Org facilite la visualisation des résultats sur une machine qui n'a pas Nmap (et donc
nmap.xsl) installé. Ainsi, l'URL est souvent plus utile, mais le système de fichiers local
l'emplacement de nmap.xsl est utilisé par défaut pour des raisons de confidentialité.
--webxml (Charger la feuille de style depuis Nmap.Org) .
Il s'agit d'une option pratique, rien de plus qu'un alias pour --feuille de style
https://nmap.org/svn/docs/nmap.xsl.
--no-feuille de style (Omettez la déclaration de feuille de style XSL de XML) .
Spécifiez cette option pour empêcher Nmap d'associer une feuille de style XSL à son XML
sortir. La directive xml-stylesheet est omise.
DIVERS OPTIONS
Cette section décrit certaines options importantes (et moins importantes) qui ne correspondent pas vraiment
n'importe où ailleurs.
-6 (Activer l'analyse IPv6) .
Nmap prend en charge IPv6 pour ses fonctionnalités les plus populaires. Analyse ping, analyse des ports,
la détection de version et le moteur de script Nmap prennent tous en charge IPv6. La syntaxe de la commande
est le même que d'habitude sauf que vous ajoutez également le -6 option. Bien sûr, vous devez utiliser
Syntaxe IPv6 si vous spécifiez une adresse plutôt qu'un nom d'hôte. Une adresse peut sembler
comme 3ffe:7501:4819:2000:210:f3ff:fe03:14d0, les noms d'hôtes sont donc recommandés. Le résultat
ressemble à d'habitude, avec l'adresse IPv6 sur la ligne « ports intéressants » étant
le seul cadeau IPv6.
Bien qu'IPv6 n'ait pas exactement pris d'assaut le monde, il est largement utilisé dans certains
Les pays (généralement asiatiques) et la plupart des systèmes d'exploitation modernes le prennent en charge. Pour utiliser Nmap
avec IPv6, la source et la cible de votre analyse doivent être configurées pour IPv6. Si
votre FAI (comme la plupart d'entre eux) ne vous attribue pas d'adresses IPv6, tunnel gratuit
les courtiers sont largement disponibles et fonctionnent bien avec Nmap. J'utilise le tunnel IPv6 gratuit
courtier. service à http://www.tunnelbroker.net. D'autres courtiers en tunnel sont énumérés at
Wikipédia[18]. Les tunnels 6to4 sont une autre approche gratuite et populaire.
Sous Windows, les analyses IPv6 raw-socket ne sont prises en charge que sur les périphériques Ethernet (pas
tunnels) et uniquement sous Windows Vista. et ensuite. Utilisez le --non privilégié. option dans
d'autres situations.
-A (Options d'analyse agressives) .
Cette option active des options avancées et agressives supplémentaires. Actuellement, cela permet
Détection du système d'exploitation (-O), analyse de version (-sV), analyse des scripts (-sC) et traceroute
(--traceroute).. Plus de fonctionnalités peuvent être ajoutées à l'avenir. Il s'agit de permettre une
un ensemble complet d'options d'analyse sans que les gens aient à se souvenir d'un grand nombre de
drapeaux. Cependant, étant donné que l'analyse de script avec l'ensemble par défaut est considérée comme intrusive,
tu ne devrais pas utiliser -A contre les réseaux cibles sans autorisation. Cette option seulement
active les fonctionnalités, et non les options de synchronisation (telles que -T4) ou les options de verbosité (-v) cette
vous voudrez peut-être aussi. Options qui nécessitent des privilèges (par exemple, accès root) telles que le système d'exploitation
la détection et la traceroute ne seront activées que si ces privilèges sont disponibles.
--répertoire de données nom de répertoire (Spécifiez l'emplacement du fichier de données Nmap personnalisé) .
Nmap obtient des données spéciales lors de l'exécution dans des fichiers nommés nmap-service-probes,
nmap-services, nmap-protocols, nmap-rpc, nmap-mac-prefixes et nmap-os-db. Si la
l'emplacement de l'un de ces fichiers a été spécifié (en utilisant le --servicedb or
--versiondb options), cet emplacement est utilisé pour ce fichier. Après cela, Nmap recherche
ces fichiers dans le répertoire spécifié avec le --répertoire de données option (le cas échéant). Tous les fichiers
n'y sont pas trouvés, sont recherchés dans le répertoire spécifié par le NMAPDIR.
variable d'environnement. Vient ensuite ~/.nmap. pour des UID réels et efficaces ; ou sous Windows,
ACCUEIL\AppData\Roaming\nmap (où ACCUEIL est le répertoire personnel de l'utilisateur, comme
C:\Utilisateurs\utilisateur). Ceci est suivi de l'emplacement de l'exécutable nmap et du même
emplacement avec ../share/nmap ajouté. Ensuite, un emplacement compilé tel que
/usr/local/share/nmap ou /usr/share/nmap.
--servicedb services filet (Spécifiez le fichier de services personnalisés) .
Demande à Nmap d'utiliser le fichier de services spécifié plutôt que le fichier de données nmap-services
qui vient avec Nmap. L'utilisation de cette option provoque également une analyse rapide (-F) à utiliser. Voir
la description pour --répertoire de données pour plus d'informations sur les fichiers de données de Nmap.
--versiondb service sondes filet (Spécifiez le fichier de sondes de service personnalisé) .
Demande à Nmap d'utiliser le fichier de sondes de service spécifié plutôt que nmap-service-probes
fichier de données fourni avec Nmap. Voir la description pour --répertoire de données pour plus d'informations
sur les fichiers de données de Nmap.
--send-eth (Utilisez l'envoi Ethernet brut) .
Demande à Nmap d'envoyer des paquets à la couche Ethernet brute (liaison de données) plutôt qu'à la couche supérieure
Couche IP (réseau). Par défaut, Nmap choisit celui qui est généralement le mieux pour le
plate-forme sur laquelle il s'exécute. Prises brutes (couche IP). sont généralement les plus efficaces pour
machines Unix, tandis que les trames ethernet sont requises pour le fonctionnement de Windows car
Microsoft a désactivé la prise en charge des sockets bruts. Nmap utilise toujours des paquets IP bruts sur Unix malgré
cette option lorsqu'il n'y a pas d'autre choix (comme les connexions non Ethernet).
--envoyer-ip (Envoyer au niveau IP brut) .
Demande à Nmap d'envoyer des paquets via des sockets IP bruts plutôt que d'envoyer un Ethernet de niveau inférieur
cadres. C'est le complément de la --send-eth option discutée précédemment.
--privilégié (En supposant que l'utilisateur est pleinement privilégié) .
Dit à Nmap de supposer simplement qu'il est suffisamment privilégié pour effectuer des envois de socket bruts,
reniflage de paquets et opérations similaires qui nécessitent généralement des privilèges root. sur Unix
systèmes. Par défaut, Nmap se ferme si de telles opérations sont demandées mais geteuid n'est pas
zéro. --privilégié est utile avec les capacités du noyau Linux et les systèmes similaires qui
peut être configuré pour permettre aux utilisateurs non privilégiés d'effectuer des analyses de paquets bruts. Assurez-vous de
fournir ce drapeau d'option avant tout drapeau pour les options qui nécessitent des privilèges (SYN
analyse, détection du système d'exploitation, etc.). le NMAP_PRIVILÈGE. La variable d'environnement peut être définie comme
alternative équivalente à --privilégié.
--non privilégié (En supposant que l'utilisateur ne dispose pas des privilèges de socket bruts) .
Cette option est à l'opposé de --privilégié. Il dit à Nmap de traiter l'utilisateur comme
dépourvu de socket réseau brut et de privilèges de reniflage. C'est utile pour tester,
débogage, ou lorsque la fonctionnalité réseau brute de votre système d'exploitation est en quelque sorte
cassé. Les NMAP_NON PRIVILEGE. la variable d'environnement peut être définie comme un équivalent
alternative à --non privilégié.
--release-mémoire (Libérez la mémoire avant de quitter) .
Cette option n'est utile que pour le débogage des fuites de mémoire. Cela provoque la libération de Nmap
mémoire allouée juste avant qu'elle ne s'arrête afin que les fuites de mémoire réelles soient plus faciles à repérer.
Normalement, Nmap ignore cela car le système d'exploitation le fait de toute façon à la fin du processus.
-V; --version (Imprimer le numéro de version) .
Imprime le numéro de version de Nmap et quitte.
-h; --Aidez-moi (Imprimer la page récapitulative de l'aide) .
Imprime un court écran d'aide avec les indicateurs de commande les plus courants. Exécuter Nmap sans
tous les arguments font la même chose.
DURÉE INTERACTION
Pendant l'exécution de Nmap, toutes les pressions sur les touches sont capturées. Cela vous permet d'interagir
avec le programme sans l'interrompre ni le redémarrer. Certaines touches spéciales changeront
options, tandis que toute autre touche imprimera un message d'état vous informant de la numérisation.
La convention est que minuscule lettres augmenter la quantité d'impression, et majuscule
lettres diminuer l'impression. Vous pouvez également appuyer sur '?' pour aider.
v / V
Augmenter/diminuer le niveau de verbosité
d / D
Augmenter / diminuer le niveau de débogage
p / P
Activer/désactiver le traçage des paquets
?
Imprimer un écran d'aide d'interaction d'exécution
Rien d'autre
Imprimez un message d'état comme celui-ci :
Statistiques : 0:00:07 écoulé ; 20 hôtes terminés (1 up), 1 en cours d'analyse de service
Délai d'analyse du service : environ 33.33 % terminé ; ETC : 20:57 (0:00:12 restant)
EXEMPLES
Voici quelques exemples d'utilisation de Nmap, du plus simple et routinier au plus complexe
et ésotérique. Certaines adresses IP et noms de domaine réels sont utilisés pour rendre les choses plus
béton. A leur place, vous devez substituer les adresses/noms de votre propre réseau .
Bien que je ne pense pas que l'analyse des ports d'autres réseaux soit ou doive être illégale, certains réseaux
les administrateurs n'apprécient pas l'analyse non sollicitée de leurs réseaux et peuvent se plaindre.
Obtenir d'abord la permission est la meilleure approche.
À des fins de test, vous avez la permission de scanner l'hôte scanme.nmap.org.. Ce
l'autorisation n'inclut que l'analyse via Nmap et ne teste pas les exploits ou le déni de service
attaques. Pour conserver la bande passante, veuillez ne pas lancer plus d'une douzaine de scans contre
cet hôte par jour. Si ce service cible d'analyse gratuit est abusé, il sera supprimé
et Nmap signalera l'échec de la résolution du nom d'hôte/IP donné : scanme.nmap.org. Ces
les autorisations s'appliquent également aux hôtes scanme2.nmap.org, scanme3.nmap.org, etc.
ces hôtes n'existent pas actuellement.
nmap -v scanme.nmap.org.
Cette option analyse tous les ports TCP réservés sur la machine scanme.nmap.org . le -v option
active le mode verbeux.
nmap -HH -O scanme.nmap.org/24.
Lance une analyse SYN furtive sur chaque machine qui est sur les 256 IP sur le
réseau de classe C où réside Scanme. Il essaie également de déterminer quel fonctionnement
système est en cours d'exécution sur chaque hôte qui est en cours d'exécution. Cela nécessite des privilèges root
en raison de l'analyse SYN et de la détection du système d'exploitation.
nmap -sV -p 22,53,110,143,4564 198.116.0-255.1-127.
Lance l'énumération des hôtes et une analyse TCP dans la première moitié de chacun des 255 possibles
sous-réseaux de huit bits dans l'espace d'adressage de classe B 198.116. Ceci teste si les systèmes fonctionnent
SSH, DNS, POP3 ou IMAP sur leurs ports standard, ou n'importe quoi sur le port 4564. Pour l'un des
ces ports trouvés ouverts, la détection de version est utilisée pour déterminer quelle application est
exécution.
nmap -v -aller 100000 - M -p 80.
Demande à Nmap de choisir 100,000 80 hôtes au hasard et de les analyser à la recherche de serveurs Web (port XNUMX). Héberger
l'énumération est désactivée avec - M depuis le premier envoi de quelques sondes pour déterminer si
un hôte est actif est un gaspillage lorsque vous ne sondez de toute façon qu'un seul port sur chaque hôte cible.
nmap - M -p80 -bœuf journaux/pb-port80scan.xml -oG logs/pb-port80scan.gnmap 216.163.128.20/20.
Cela scanne 4096 IP pour tous les serveurs Web (sans les cingler) et enregistre la sortie dans
formats grepable et XML.
NMAP RÉSERVER
Bien que ce guide de référence détaille toutes les options matérielles de Nmap, il ne peut pas pleinement démontrer
comment appliquer ces fonctionnalités pour résoudre rapidement des tâches du monde réel. Pour cela, nous avons sorti Nmap
Numérisation réseau : le guide officiel du projet Nmap pour la découverte et la sécurité du réseau
Balayage. Les sujets incluent la subversion des pare-feux et des systèmes de détection d'intrusion, l'optimisation
Performances Nmap et automatisation des tâches de mise en réseau courantes avec le moteur de script Nmap.
Des conseils et des instructions sont fournis pour les tâches Nmap courantes telles que la prise de réseau
inventaire, tests d'intrusion, détection des points d'accès sans fil malveillants et annulation
épidémies de vers de réseau. Des exemples et des schémas montrent la communication réelle sur le fil. Suite
plus de la moitié du livre est disponible gratuitement en ligne. Voir https://nmap.org/book pour plus d'
</br>L’Information.
Utiliser nmap en ligne à l'aide des services onworks.net