mirror of
https://github.com/nmap/nmap.git
synced 2025-12-09 22:21:29 +00:00
933 lines
58 KiB
HTML
933 lines
58 KiB
HTML
<HTML>
|
||
<HEAD>
|
||
<TITLE>Nmap network security scanner man page (French translation)</TITLE>
|
||
</HEAD>
|
||
<BODY>
|
||
<H1>Nmap network security scanner man page (French translation)</H1>
|
||
<HR>
|
||
<PRE>
|
||
<!-- Manpage converted by man2html 3.0.1 -->
|
||
XXX
|
||
XXX WARNING: old character encoding and/or character set
|
||
XXX
|
||
<B>NMAP(1)</B> <B>NMAP(1)</B>
|
||
|
||
|
||
|
||
|
||
</PRE>
|
||
<H2>NOM</H2><PRE>
|
||
nmap - Outil d’exploration réseau et analyseur de sécurité
|
||
|
||
|
||
</PRE>
|
||
<H2>SYNOPSIS</H2><PRE>
|
||
<B>nmap</B> [Type(s) de scan] [Options] <hôte ou réseau #1 ... [#N]>
|
||
|
||
|
||
</PRE>
|
||
<H2>DESCRIPTION</H2><PRE>
|
||
<I>Nmap</I> a été conçu pour que les administrateurs systèmes et les curieux
|
||
puissent analyser de grands réseaux pour déterminer les hôtes actifs et
|
||
les services offerts. <I>nmap</I> supporte un grand nombre de techniques
|
||
d’analyse : UDP, TCP connect(), TCP SYN (mi ouvert), ftp proxy (attaque
|
||
par rebond), Reverse-ident, ICMP (balayage de ping), FIN, balayage de
|
||
ACK, Xmas Tree, balayage de SYN, Protocoles IP, et Null scan. Voir la
|
||
section <I>Types</I> <I>de</I> <I>scans</I> pour plus de détails. Nmap offre également des
|
||
caractéristiques avancées comme la détection du système d’exploitation
|
||
distant via l’empreinte TCP/IP, l’analyse furtive, le délai dynamique
|
||
et les calculs de retransmission, l’analyse parallèle, détection de
|
||
hôtes inactifs via des pings parallèles, l’analyse avec leurres, la
|
||
détection des ports filtrés, analyse directe (sans portmapper) des RCP,
|
||
l’analyse avec fragmentation, et une notation puissante pour désigner
|
||
les hôtes et les ports.
|
||
|
||
Des efforts significatifs ont été consacrés pour que nmap soit utilis-
|
||
able par des utilisateurs non-root. Malheureusement, la plupart des
|
||
interfaces noyaux critiques (comme les raw sockets) requièrent les
|
||
privilèges root. Nmap devrait donc être lancé en tant que root autant
|
||
que possible (mais pas en setuid root, évidemment).
|
||
|
||
Le résultat de l’exécution de nmap est habituellement une liste de
|
||
ports intéressants sur les machines analysées. Nmap donne pour chaque
|
||
port le nom du service, le numéro, l’état et le protocole. L’état peut
|
||
être « open », « filtered » ou « unfiltered ». « Open » signifie que
|
||
la machine cible accepte les connexions sur ce port. « Filtered » sig-
|
||
nifie qu’un pare-feu, un filtre ou un autre obstacle réseau protège le
|
||
port et empêche nmap de détecter si le port est ouvert. « Unfiltered »
|
||
signifie que le port est fermé et qu’aucun pare-feu n’a interféré avec
|
||
nmap. Les ports « Unfiltered » sont les plus courants et ne sont
|
||
affichés que lorsque la majorité des ports analysés sont dans l’état
|
||
« filtered ».
|
||
|
||
En fonction des options utilisées, nmap peut aussi rapporter les car-
|
||
actéristiques suivantes du système d’exploitation distant : type de
|
||
système d’exploitation, séquencement TCP, noms des utilisateurs qui ont
|
||
lancé les programmes qui écoutent sur chaque port, le nom DNS, et
|
||
d’autres choses encore.
|
||
|
||
|
||
</PRE>
|
||
<H2>OPTIONS</H2><PRE>
|
||
Les options ayant du sens ensemble peuvent généralement être combinées.
|
||
Certaines options sont spécifiques à certains modes d’analyses. <I>nmap</I>
|
||
essaye de détecter et de prévenir l’utilisateur en cas de combinaisons
|
||
d’options démentes ou non supportées.
|
||
|
||
Si vous êtes impatient, vous pouvez passer directement à la section des
|
||
<I>exemples</I> à la fin, qui illustre l’usage courant. Vous pouvez aussi
|
||
lancer <B>nmap</B> <B>-h</B> pour un bref rappel de toutes les options.
|
||
|
||
<B>TYPES</B> <B>DE</B> <B>SCANS</B>
|
||
|
||
<B>-sS</B> TCP SYN scan : Cette technique est souvent appelée scan « mi
|
||
ouvert », parce qu’on ouvre une connexion TCP incomplète. On
|
||
envoie un paquet SYN, comme pour une véritable ouverture de con-
|
||
nexion et on attend une réponse. Un SYN ou ACK indique que le
|
||
port est sous écoute, en revanche un RST signifie que personne
|
||
n’écoute sur ce port. Si un SYN ou ACK est reçu, un RST est
|
||
immédiatement envoyé pour interrompre la connexion. Le princi-
|
||
pal avantage de cette technique est que peu de sites
|
||
l’archiveront. dans leurs logs. Malheureusement vous avez
|
||
besoin des privilèges root pour construire ces paquets SYN sur
|
||
mesure. C’est le scan par défaut pour les utilisateurs qui ont
|
||
les privilèges root.
|
||
|
||
<B>-sT</B> TCP connect() scan : C’est la forme la plus simple de scan TCP.
|
||
L’appel système connect() fournit par votre système d’exploita-
|
||
tion est utilisé pour ouvrir une connexion sur tous les ports
|
||
intéressants de la cible. Si le port est sur écoute, connect()
|
||
réussira, sinon le port est injoignable. Le principal avantage
|
||
de cette technique est qu’elle ne nécessite pas de privilèges
|
||
particuliers. Presque tous les utilisateurs de toutes les
|
||
machines Unix sont libres d’utiliser cet appel système.
|
||
|
||
Ce type de scan est facilement détectable par l’hôte cible
|
||
puisque les logs de la cible montreront un ensemble de connex-
|
||
ions et de messages d’erreurs pour les services qui ont accepté
|
||
la connexion qui a été immédiatement coupée. C’est le scan par
|
||
défaut pour les utilisateurs normaux (non root).
|
||
|
||
<B>-sF</B> <B>-sX</B> <B>-sN</B>
|
||
Stealth FIN, Xmas Tree, ou Null scan modes : Parfois même un SYN
|
||
scan n’est pas suffisamment discret. Certains pare-feux et fil-
|
||
treurs de paquets regardent les SYNs vers les ports interdits,
|
||
et des programmes comme Synlogger et Courtney peuvent détecter
|
||
ces scans. En revanche, ces scans avancés devrait pourvoir
|
||
passer sans problèmes.
|
||
|
||
L’idée est qu’un port fermé est requis pour répondre au paquet
|
||
de test par un RST, alors que les ports ouverts doivent ignorer
|
||
les paquets en question (voir RFC 793 pp 64). Le FIN scan
|
||
utilise un paquet FIN nu comme testeur, alors que le scan Xmas
|
||
tree active les drapeaux URG et PUSH du paquet FIN. Le scan
|
||
Null, désactive tous les drapeaux. Malheureusement Microsoft
|
||
(comme d’habitude) a décidé d’ignorer complètement le standard
|
||
et de faire les choses à sa façon. C’est pourquoi ce type de
|
||
scan ne fonctionne pas contre les systèmes sous Windows95/NT. Le
|
||
côté positif est que c’est un bon moyen de distinguer deux
|
||
plates-formes. Si le scan trouve des ports ouverts, vous savez
|
||
que la machine cible n’est pas sous Windows. Si un -sF,-sX, ou
|
||
-sN scan montre tous les ports fermés, et qu’un scan SYN (-sS)
|
||
montre tous les ports ouverts, la machine cible fonctionne prob-
|
||
ablement sous Windows. Ceci est moins utile depuis que nmap a
|
||
son propre détecteur de système d’exploitation intégré. D’autres
|
||
systèmes ont le même problème que Windows : Cisco, BSDI, HP/UX,
|
||
MVS, et IRIX. La plupart envoient des resets depuis les ports
|
||
ouverts au lieu d’ignorer le paquet.
|
||
|
||
<B>-sP</B> Ping scanning : Parfois vous voulez juste savoir quels sont les
|
||
hôtes actifs d’un réseau. Nmap peut le faire pour vous en
|
||
envoyant des paquets d’écho ICMP à chaque adresse IP du réseau
|
||
spécifié. Les hôtes qui répondent sont actifs. Malheureusement,
|
||
certains sites comme microsoft.com, bloquent les paquets d’écho.
|
||
Toutefois nmap peut aussi envoyer un paquet TCP ack au port 80
|
||
(par défaut). Si vous recevez un RST en retour, la machine est
|
||
active. Une troisième technique consiste à envoyer un paquet SYN
|
||
et d’attendre un RST ou un SYN/ACK. Pour les utilisateurs non-
|
||
root, la méthode connect() est utilisée.
|
||
|
||
Par défaut (pour les utilisateurs root), nmap utilise la tech-
|
||
nique ICMP et ACK en parallèle. Vous pouvez changer l’option <B>-P</B>
|
||
décrite plus tard.
|
||
|
||
Remarquez que le ping est fait par défaut de toutes façons et
|
||
seuls les hôtes qui répondent sont analysés. N’utilisez cette
|
||
option que si vous voulez faire un balayage de ping <B>sans</B> faire
|
||
d’analyse de ports.
|
||
|
||
<B>-sU</B> UDP scans : Cette méthode est utilisée pour déterminer les ports
|
||
UDP (User Datagram Protocol, RFC 768) qui sont ouverts sur
|
||
l’hôte Cette technique consiste à envoyer un paquet udp de 0
|
||
octet à chaque port de la machine cible. Si on reçoit un message
|
||
ICMP « port unreachable », alors le port est fermé. Autrement
|
||
nous supposons qu’il est ouvert.
|
||
|
||
Certaines personne pensent que l’analyse UDP est inutile. J’ai
|
||
pour habitude de leur rappeler le trou récent dans rcpbind sous
|
||
Solaris. Rpcbind peut dissimuler un port UDP non documenté
|
||
quelque part au dessus de 32 770. Comme découvrir un tel port
|
||
sans scanner UDP ? Il y a aussi le programme cDc Back Orifice
|
||
backdoor qui cache un port UDP configurable sur les machines
|
||
Windows. Sans même mentionner tous les services courants qui
|
||
utilisent UDP tels que snmp, tftp, NFS, etc.
|
||
|
||
Malheureusement l’analyse UDP peut être particulièrement longue
|
||
puisque la plupart des hôtes implémente une suggestion de la RFC
|
||
1812 (section 4.3.2.8) pour limiter le débit des messages
|
||
d’erreurs ICMP. Par exemple, le noyau Linux (dans
|
||
net/ipv4/icmp.h) limite la génération de message « destination
|
||
unreachable » à 80 pour 4 secondes, avec une pénalité de 1/4
|
||
secondes si ce nombre est dépassé. Solaris a des limites encore
|
||
plus strictes (à peu près 2 messages par seconde) et l’analyse
|
||
nécessite encore plus de temps. <I>Nmap</I> détecte cette limite de
|
||
débit et ralentit plutôt que d’inonder inutilement le réseau
|
||
avec des paquets qui seront ignorés par la machine cible.
|
||
|
||
Comme d’habitude, Microsoft a ignoré la suggestion RFC et n’a
|
||
pas implémenté de limitation de taux dans les machines Win95 et
|
||
NT. C’est pourquoi nous pouvons analyser les 65K ports d’une
|
||
machine Windows <B>tr</B><EFBFBD><B><EFBFBD></B><EFBFBD><B>s</B> rapidement. Wahoo !
|
||
|
||
<B>-sO</B> IP protocol scans : Cette méthode est utilisée pour déterminer
|
||
les protocoles IP supportés par l’hôte. La technique consiste à
|
||
envoyer des paquets IP bruts sans entête de protocole à chaque
|
||
protocole spécifié sur la machine cible. Si nous recevons un
|
||
message ICMP « protocol unreachable », alors le protocole n’est
|
||
pas utilisé. Autrement nous supposons qu’il est ouvert. Remar-
|
||
quez que certains hôtes (AIX, HP-UX, Digital UNIX) et les pare-
|
||
feux peuvent ne pas renvoyer les messages « protocol unreach-
|
||
able », faisant apparaître ouverts tous les protocoles.
|
||
|
||
Comme cette technique est très similaire à l’analyse des ports
|
||
UDP, la limitation du débit ICMP peut aussi apparaître. Mais
|
||
comme le champ protocole d’IP n’a que 8 bits, il y a au plus 256
|
||
protocoles, donc la durée restera raisonnable.
|
||
|
||
<B>-sI</B> <B><zombie</B> <B>host[:probeport]></B>
|
||
scan paresseux : cette méthode de scan avancée autorise un scan
|
||
TCP véritablement aveugle de la cible (aucun paquet ne sera
|
||
envoyé à la cible depuis votre véritable adresse IP). À la
|
||
place, une attaque unilatérale exploite la prédiction de la
|
||
séquence d’identificateur de fragmentation IP de l’hôte zombie
|
||
pour glaner des informations sur les ports ouverts de la cible.
|
||
Les systèmes de détections d’intrusion indiqueront que le scan
|
||
provient de la machine zombie spécifiée (qui doit être active et
|
||
vérifier un certain nombre de critères). J’envisage de donner
|
||
plus d’explication à http://www.insecure.org/nmap/nmap_documen-
|
||
tation.html dans un futur proche.
|
||
|
||
|
||
En plus d’être extraordinairement furtive (grâce à sa nature aveugle),
|
||
ce scan
|
||
permet de s’affranchir des relations de confiance entre machines
|
||
fondées sur l’IP. La liste de ports montre les ports ouverts
|
||
<I>tels</I> <I>que</I> <I>les</I> <I>voit</I> <I>l<EFBFBD></I><EFBFBD><EFBFBD><I>h<EFBFBD></I><EFBFBD><I>te</I> <I>zombie.</I> Aussi, vous pouvez essayer de
|
||
scanner une cible en utilisant différents zombies à qui elle
|
||
fait confiance (via les règles de filtrage des rou-
|
||
teurs/paquets). Évidemment cette information est cruciale pour
|
||
orienter l’attaque. Autrement votre test de pénétration va con-
|
||
sommer des ressources considérables appartenant au système
|
||
intermédiaire, pour s’apercevoir en fin de compte qu’il n’y a
|
||
pas de relation de confiance entre l’hôte cible et l’IP de la
|
||
machine zombie.
|
||
|
||
Vous pouvez ajouter un deux-point suivi par le numéro de port si
|
||
vous voulez tester un port particulier sur l’hôte zombie pour
|
||
les changement IPID. Autrement Nmap utilisera le port qu’il
|
||
utilise par défaut pour les pings TCP.
|
||
|
||
<B>-sA</B> ACK scan : C’est une technique avancée qui est utilisé pour
|
||
découvrir les règles des pare-feux et pour savoir si on a
|
||
affaire à un pare-feu ou un simple filtreur de paquets qui blo-
|
||
quent les paquets SYN entrant.
|
||
|
||
Ce type d’analyse envoie un paquet ACK (avec un numéro d’acquit-
|
||
tement/séquence aléatoire) aux ports spécifiés. Si un RST vient
|
||
en retour, les ports sont classés comme non filtrés. Si rien ne
|
||
revient (ou alors un message ICMP « unreachable »), les ports
|
||
sont classés comme filtrés . Remarquez que <I>nmap</I> n’affiche pas
|
||
les ports non filtrés. Aussi, si <B>aucun</B> port n’est affiché dans
|
||
la sortie, c’est souvent un signe que tous les tests ont fonc-
|
||
tionné (et retourné RSTs). Ce scan ne montrera évidement jamais
|
||
de port ouvert.
|
||
|
||
<B>-sW</B> Window scan : C’est une analyse avancée très similaire au ACK
|
||
scan, sauf qu’il peut parfois détecter aussi bien des ports
|
||
ouverts que filtrés/non filtrés grâce à une anomalie dans la
|
||
taille de la fenêtre TCP rapportée par certains systèmes. Parmi
|
||
les systèmes vulnérables se trouvent certaines versions de AIX,
|
||
Amiga, BeOS, BSDI, Cray, Tru64 UNIX, DG/UX, OpenVMS, Digital
|
||
UNIX, FreeBSD, HP-UX, OS/2, IRIX, MacOS, NetBSD, OpenBSD, Open-
|
||
Step, QNX, Rhapsody, SunOS 4.X, Ultrix, VAX, et VxWorks. Voir
|
||
les archives de la liste de diffusion nmap-hackers pour une
|
||
liste exhaustive.
|
||
|
||
<B>-sR</B> RPC scan. Cette méthode fonctionne en combinaison avec diverses
|
||
méthodes d’analyse de port de nmap. Il prend tous les ports
|
||
TCP/UDP ouverts et les inonde de commandes SunRPC NULL pour
|
||
déterminer ceux qui sont des ports RPC, et si c’est le cas, le
|
||
programme et son numéro de version qui les servent. Vous pouvez
|
||
obtenir la même information que ’rpcinfo -p’ même si le portmap-
|
||
per cible est derrière un pare-feu (ou protégé par un wrapper
|
||
TCP). Les leurres ne fonctionnent pour le moment pas avec les
|
||
scans RCP, et je dois ajouter le support pour les leurres dans
|
||
les scans UPD RCP.
|
||
|
||
<B>-sL</B> scan-liste. Cette méthode génère une liste d’IP/nom sans les
|
||
pinger ou les scanner. La résolution de nom DNS sera réalisée
|
||
sauf si vous utilisez -n.
|
||
|
||
<B>-b</B> <B><ftp</B> <B>relay</B> <B>host></B>
|
||
attaque par rebond FTP : Une caractéristique intéressante du
|
||
protocole ftp (RFC 959) est le support des connexions <B>proxy</B>. En
|
||
d’autres termes, je dois être capable de me connecter depuis
|
||
mechant.com au serveur FTP de cible.com et demander que le
|
||
serveur envoie un fichier N’IMPORTE OÙ sur Internet. Ça fonc-
|
||
tionnait bien en 1985 quand la RFC a été écrite. Mais dans
|
||
l’Internet d’aujourd’hui nous ne pouvons pas nous permettre
|
||
d’avoir des pirates qui détournent des serveurs ftp et envoient
|
||
des données n’importe où dans Internet. J’avais écrit en 1995
|
||
que ce défaut du protocole « peut être utilisé pour envoyer des
|
||
courriers et nouvelles intracables, matraquer des serveurs de
|
||
sites, saturer les disques, essayer de contourner les pare-feux
|
||
et généralement être difficile à repérer ». On peut aussi
|
||
l’exploiter pour faire un scan des ports TCP depuis un serveur
|
||
ftp « proxy ». Ainsi, vous pouvez vous connecter à un serveur
|
||
ftp derrière un pare-feu et scanner les ports sans être bloqué
|
||
(139 est un bon nombre). Si le serveur ftp autorise la lecture
|
||
et l’écriture dans certains répertoires (tel que /incoming),
|
||
vous pouvez envoyez des données arbitraires aux ports que vous
|
||
avez trouvé ouvert (nmap ne le fera toutefois pas pour vous)
|
||
|
||
L’argument passé à l’option <B>-b</B> est l’hôte que vous voulez
|
||
utiliser comme proxy, dans la notation URL standard. Le format
|
||
est : <I>username:password@server:port.</I> Tout sauf <I>server</I> est
|
||
optionnel. Pour déterminer les serveurs qui sont vulnérables à
|
||
cette attaque, vous pouvez voir mon article dans <I>Phrack</I> 51. Une
|
||
version mise à jour est disponible à l’URL http://www.inse-
|
||
cure.org/nmap.
|
||
|
||
<B>OPTIONS</B> <B>G</B><EFBFBD><B><EFBFBD></B><EFBFBD><B>N</B><EFBFBD><B><EFBFBD></B><EFBFBD><B>RALES</B>
|
||
Aucune n’est nécessaire, mais certaines peuvent être très
|
||
utiles.
|
||
|
||
<B>-P0</B> Ne pas essayer de ping sur les hôtes avant de les analyser.
|
||
Cela permet l’analyse des réseaux qui ne permettent pas les
|
||
requêtes ou les réponses ICMP à travers leurs pare-feux.
|
||
Microsoft.com en est un exemple, et vous devez toujours utiliser
|
||
<B>-P0</B> ou <B>-PT80</B> pour faire une analyse de port sur microsoft.com.
|
||
|
||
<B>-PT</B> Utilise TCP "ping" pour déterminer les hôtes actifs. Au lieu
|
||
d’envoyer une requête d’écho ICMP et d’attendre une réponse,
|
||
nous envoyons des paquets TCP ACK dans le réseau cible (ou con-
|
||
tre une machine) et attendons des réponses pour conclure. Les
|
||
hôtes devraient répondre par un RST. Cette option préserve
|
||
l’efficacité des scan des hôtes qui sont actifs mais autorise
|
||
l’analyse des hôtes/réseaux qui bloquent les paquets de ping.
|
||
Pour les utilisateurs non root, nous utilisons connect(). Pour
|
||
spécifier le port de destination du test utilisez -PT<port num-
|
||
ber>. Le port par défaut est 80, car ce port n’est pas souvent
|
||
filtré.
|
||
|
||
<B>-PS</B> Cette option utilise des paquets SYN (demande de connexion) à la
|
||
place des paquets ACK pour les utilisateurs ROOT. Les hôtes act-
|
||
ifs devrait répondre par un RST (ou, rarement par un SYN | ACK).
|
||
|
||
<B>-PI</B> Cette option utilise un véritable paquet ping (requête d’écho
|
||
ICMP). Il recherche les hôtes actifs et aussi regarde les
|
||
adresses de diffusion des sous-réseaux. Il y a des adresses IP
|
||
qui sont joignable de l’extérieur et qui sont traduites en une
|
||
diffusion de paquet entrant dans un réseau. Ça devrait être
|
||
supprimé, si découvert, car ça permet un grand nombre d’attaques
|
||
de déni de service.
|
||
|
||
<B>-PP</B> utilise un paquet ICMP de requête d’estampille temporelle (code
|
||
13) pour déterminer les hôtes qui écoutent.
|
||
|
||
<B>-PM</B> Fait la même chose que <B>-PI</B> et <B>-PP</B> sauf qu’il utilise une requête
|
||
de masque de sous-réseau (ICMP code 17).
|
||
|
||
<B>-PB</B> C’est le ping par défaut. Il utilise les balayages ACK ( <B>-PT</B> )
|
||
et ICMP ( <B>-PI</B> ) en parallèle. De cette manière, vous pouvez
|
||
passer les pare-feux qui ne filtrent que l’un des deux types de
|
||
paquets.
|
||
|
||
<B>-O</B> Cette option active l’identification de l’hôte distant via
|
||
l’empreinte TCP/IP. Autrement dit, nmap utilise un ensemble de
|
||
techniques pour détecter les subtilités dans la pile réseau du
|
||
système d’exploitation de l’ordinateur que vous êtes en train
|
||
d’analyser. Il utilise ces informations pour créer une
|
||
« empreinte » qui est comparée avec sa base de données
|
||
d’empreintes connues (le fichier nmap-os-fingerprints) pour
|
||
retrouver le type de système que vous êtes en train d’analyser.
|
||
|
||
Si Nmap est incapable de deviner le système d’exploitation de la
|
||
machine, et que les conditions sont bonnes (par exemple, au
|
||
moins un port est ouvert) Nmap fournira une URL que vous pourrez
|
||
utiliser pour soumettre si vous connaissez avec certitude le nom
|
||
du système d’exploitation à qui appartient cette nouvelle
|
||
empreinte. Vous contribuerez ainsi à augmenter le nombre de
|
||
systèmes d’exploitations détectable par nmap et la la précision
|
||
de la détection. Si vous laissez une adresse IP dans le formu-
|
||
laire, la machine pourra être analysée lorsque nous ajouterons
|
||
l’empreinte (pour valider que ça marche).
|
||
|
||
L’option -O active aussi plusieurs autres tests. L’un d’entre
|
||
eux est la mesure de « uptime » (durée écoulée depuis le dernier
|
||
redémarrage du système), qui utilise l’estampille TCP (RFC 1323)
|
||
pour deviner la date du dernier redémarrage de la machine. Ceci
|
||
n’est rapporté que pour les machines qui fournissent cette
|
||
information.
|
||
|
||
Un autre test activé par -O est la classification de la prédic-
|
||
tion de la séquence TCP. C’est une mesure qui décrit approxima-
|
||
tivement la difficulté d’établir une connexion TCP forgée contre
|
||
l’hôte distant. C’est utile pour exploiter les relations de con-
|
||
fiances fondées sur l’IP source (rlogin, firewall filters, etc)
|
||
ou pour cacher la source d’une attaque. La valeur réelle de la
|
||
difficulté est calculée sur un échantillon et peut fluctuer. Il
|
||
est généralement plus approprié d’utiliser une classification
|
||
par nom tel que « worthy challenge » ou « trivial joke ». Ceci
|
||
n’est rapporté dans la sortie normale qu’avec l’option -v.
|
||
|
||
Si le mode verbeux (-v) est activé en même temps que -O, la
|
||
génération de séquence IPID est aussi rapportée. La plupart des
|
||
machines appartiennent à la classe incrémentale, ce qui signifie
|
||
qu’elle incrémente le champ ID dans l’entête IP pour chaque
|
||
paquet envoyé. Ce qui les rend vulnérables à la collecte
|
||
d’information avancée et aux attaques par usurpation.
|
||
|
||
<B>-I</B> Active l’analyse TCP reverse ident. Dave Goldsmith dans un mes-
|
||
sage à Bugtraq en 1996, a fait remarquer que le protocole ident
|
||
(rfc 1413) autorise la découverte du nom d’utilisateur qui
|
||
possède un processus connecté via TCP, même si le processus
|
||
n’est pas à l’instigateur de la connexion. Vous pouvez ainsi
|
||
vous connecter au port http et utiliser identd pour découvrir si
|
||
le serveur tourne sous root. Ceci ne peut être fait qu’avec une
|
||
connexion TCP complète sur le port cible (i.e. l’option d’anal-
|
||
yse -sT). Quand <B>-I</B> est utilisé, l’identd de l’hôte distant est
|
||
interrogé pour chaque port ouvert trouvé. Évidemment ça ne fonc-
|
||
tionne pas si l’hôte n’utilise pas identd.
|
||
|
||
<B>-f</B> Cette option oblige les analyses FIN, XMAS, ou NULL à utiliser
|
||
de petit paquets IP fragmentés. L’idée est de partager l’entête
|
||
TCP en plusieurs paquets pour rendre leurs détections plus dif-
|
||
ficile par les filtres et les systèmes de détection d’intrusion,
|
||
et les autres enquiquineurs qui tentent de détecter ce que vous
|
||
êtes en train de faire. Faites attention avec ceci, certains
|
||
programmes ont des difficultés avec ces petits paquets. Mon
|
||
sniffer favori plante immédiatement lorsqu’il reçoit le premier
|
||
fragment de 36 octets. Cette option est inefficace contre les
|
||
filtreurs de paquets et les pare-feux qui réassemblent les frag-
|
||
ments IP (comme l’option CONFIG_IP_ALWAYS_DEFRAG dans le noyau
|
||
Linux), certains réseaux ne peuvent pas supporter cette perte de
|
||
performance et ne réassemblent pas les paquets.
|
||
|
||
Remarquez que je n’ai pas encore fait fonctionner cette option
|
||
sur tous les systèmes. Ça marche parfaitement sur les machines
|
||
Linux, FreeBSD et OpenBSD et certaines personnes m’ont rapporté
|
||
leurs succès avec d’autres saveurs d’Unix.
|
||
|
||
<B>-v</B> Mode verbeux. C’est une option hautement recommandée qui fournit
|
||
beaucoup d’informations sur ce que vous êtes en train de faire.
|
||
Vous pouvez l’utiliser deux fois pour un effet plus important.
|
||
Utiliser <B>-d</B> une paire de fois si vous voulez vraiment devenir
|
||
fou avec le défilement de l’écran !
|
||
|
||
<B>-h</B> Cette option affiche un bref récapitulatif des options de nmap.
|
||
Comme vous l’avez sans doute remarqué, cette page de manuel
|
||
n’est pas vraiment un « bref récapitulatif ». :)
|
||
|
||
<B>-oN</B> <B><logfilename></B>
|
||
Enregistre les résultats de vos analyses dans un format <B>lisible</B>
|
||
<B>par</B> <B>un</B> <B>humain</B> dans le fichier spécifié en argument.
|
||
|
||
<B>-oX</B> <B><logfilename></B>
|
||
Enregistre le résultat de vos analyses dans un format <B>XML</B> dans
|
||
le fichier spécifié en argument. Ceci permet à des programmes
|
||
d’interpréter facilement les résultats de nmap. Vous pouvez
|
||
donner l’argument ’<B>-</B>’ (sans les guillemets) pour envoyer la sor-
|
||
tie sur la sortie standard (pour les pipelines shells, etc).
|
||
Dans ce cas la sortie normale sera supprimée. Regardez atten-
|
||
tivement les messages d’erreurs si vous utilisez ceci (ils sont
|
||
encore envoyés sur la sortie d’erreur standard). Notez aussi
|
||
que <B>-v</B> peut afficher des informations supplémentaires. La
|
||
définition de type de document (DTD) définissant la structure de
|
||
la sortie XML est disponible à http://www.inse-
|
||
cure.org/nmap/data/nmap.dtd .
|
||
|
||
<B>-oG</B> <B><logfilename></B>
|
||
Enregistre les résultats de vos analyses dans une forme adaptée
|
||
pour <B>grep.</B> Ce format simple fournit toutes les informations sur
|
||
une ligne. C’est le mécanisme préféré des programmes qui inter-
|
||
agissent avec nmap, mais désormais nous recommandons plutôt la
|
||
sortie XML (-oX). Ce format simple ne contient pas autant
|
||
d’informations que les autres formats. Vous pouvez donner
|
||
l’argument «<B>-</B>» (sans les guillemets) pour envoyer la sortie sur
|
||
la sortie standard (pour les pipelines shells, etc). Dans ce
|
||
cas la sortie normale sera supprimée. Regardez attentivement
|
||
les messages d’erreurs si vous utilisez ceci (ils sont encore
|
||
envoyés sur la sortie d’erreur standard). Notez aussi que <B>-v</B>
|
||
peut afficher des informations supplémentaires.
|
||
|
||
<B>-oA</B> <B><logfilename></B>
|
||
indique à nmap d’enregistrer dans tous les formats majeurs (nor-
|
||
mal, grep et XML). Vous fournissez le préfixe du nom de fichier
|
||
et les sorties auront respectivement les suffixes .nmap, .gnmap
|
||
et .xml .
|
||
|
||
<B>-oS</B> <B><logfilename></B>
|
||
enregistre les résultats de vos analyses en format <B>script</B> <B>kiddie</B>
|
||
(NdT : C’est un langage dans lequel certaines lettres sont
|
||
remplacées par des chiffres/symboles typiquement exemple A
|
||
devient 4, E devient 3, etc. Cette langue est utilisée par les
|
||
« cowboyz » d’Internet. Cette population folklorique amuse
|
||
beaucoup les autres internautes, au point qu’il existe une
|
||
option pour eux dans nmap) V0u$ poUV3z dOnn3r l’4rgUm3nt ’<B>-</B>’
|
||
(s4ns l3$ guIll3m3ts) poUr 3nvoy3r l4 sOrti3 sUr l4 $orti3
|
||
$t4nd4rd.
|
||
|
||
<B>--resume</B> <B><logfilename></B>
|
||
L’analyse d’un réseau qui a été annulée par un Ctrl-C, problème
|
||
de réseau, etc. peut être reprise en utilisant cette option.
|
||
logfilename doit être soit un log normal (-oN) soit un log lisi-
|
||
ble par une machine (-oM) d’une analyse avortée. Aucune autre
|
||
option ne peut être donnée (ce sont obligatoirement les mêmes
|
||
que celles du scan avorté). Nmap démarrera sur la machine après
|
||
la dernière machine qui a été analysée avec succès dans le
|
||
fichier de log.
|
||
|
||
<B>--append_output</B>
|
||
indique à Nmap d’écrire à la fin des fichiers de sortie au lieu
|
||
de les écraser.
|
||
|
||
<B>-iL</B> <B><inputfilename></B>
|
||
Lit les spécifications de la cible depuis le fichier spécifié
|
||
plutôt que depuis la ligne de commande. Le fichier doit contenir
|
||
une liste d’hôtes, d’expressions de réseaux séparées par des
|
||
espaces, tabulations ou retour chariots. Utilisez le tiret pour
|
||
lire depuis stdin (comme la fin d’un pipe). Voyez la section
|
||
<I>sp<EFBFBD></I><EFBFBD><I>cification</I> <I>de</I> <I>cible</I> pour plus d’information sur les expres-
|
||
sions que vous pouvez mettre dans le fichier.
|
||
|
||
<B>-iR</B> Cette option indique à Nmap de générer ses propres hôtes à anal-
|
||
yser par tirage aléatoire :). Ça ne finit jamais. Ça peut être
|
||
utile pour un échantillon d’Internet pour estimer diverses
|
||
choses. Si vous vous ennuyez, essayez <I>nmap</I> <I>-sS</I> <I>-iR</I> <I>-p</I> <I>80</I> pour
|
||
rechercher des serveurs web à regarder.
|
||
|
||
<B>-p</B> <B><port</B> <B>ranges></B>
|
||
Cette option spécifie les ports que vous voulez essayer. Par
|
||
exemple ’-p 23’ n’essayera que le port 23 of de l’hôte cible.
|
||
’-p 20-30,139,60000-’ analysera les ports entre 20 et 30, le
|
||
port 139, et tous les ports supérieurs à 60000. Le comportement
|
||
par défaut est d’analyser tous les ports de 1 à 1024 ainsi que
|
||
tous les ports listés dans les fichiers de services fournis avec
|
||
nmap. Pour l’analyse par IP (-sO), ceci spécifie le numéro de
|
||
protocole que vous voulez analyser
|
||
|
||
Lorsque vous scannez les ports TCP et UPD vous pouvez spécifier
|
||
un protocole particulier en préfixant les numéros de ports par
|
||
« T »: ou « U: ». L’effet du spécificateur dure jusqu’à ce que
|
||
vous en spécifiez un autre. Par exemple, l’argument « -p
|
||
U:53,111,137,T:21-25,80,139,8080 » scannera les ports UDP 53,
|
||
111 et 137 ainsi que les ports TCP mentionnés. Remarquez que
|
||
pour scanner UDP et TCP, vous devez spécifier -sU et au moins
|
||
une analyse TCP (telle que -sS, -sF ou -sT). Si aucune spécifi-
|
||
cation de protocole n’est indiquée, les numéros de ports sont
|
||
ajoutés à tous les protocoles.
|
||
|
||
<B>-F</B> <B>Fast</B> <B>scan</B> <B>mode.</B>
|
||
Spécifie que vous ne voulez analyser que les ports listés dans
|
||
le fichier des services livré avec nmap (ou le fichier des pro-
|
||
tocoles pour -sO). C’est évidemment plus rapide que d’analyser
|
||
les 65535 ports d’un hôte.
|
||
|
||
<B>-D</B> <B><decoy1</B> <B>[,decoy2][,ME],...></B>
|
||
réalise un scan avec leurres. Du point de vue de l’hôte distant,
|
||
les hôtes leurres apparaîtront comme s’ils analysaient aussi le
|
||
réseau cible. Ainsi, les systèmes de détection d’intrusion ne
|
||
pourront pas savoir parmi l’ensemble des IP qui semblent les
|
||
scanner quelle est l’IP qui effectue réellement l’analyse et
|
||
quelles IP ne sont en réalité que d’innocent leurres. Bien que
|
||
ceci puisse être contré par path tracing, response-dropping, et
|
||
d’autres mécanismes actifs, c’est généralement une technique
|
||
efficace pour dissimuler son adresse IP.
|
||
|
||
Séparez chaque hôte-leurre par des virgules, et vous pouvez
|
||
optionnellement utiliser ’<B>ME</B>’ (Moi) comme l’un des leurres pour
|
||
représenter la position que vous voulez utiliser pour votre
|
||
adresse. Si vous utilisez ’<B>ME</B>’ au delà de la 6ème position, la
|
||
plupart des détecteurs de scan (même l’excellent scanlogd de
|
||
Solar Designer) seront incapables de voir votre adresse IP. Si
|
||
vous n’utilisez pas ’<B>ME</B>’, nmap choisira une position aléatoire.
|
||
|
||
Remarquez que les hôtes leurres doivent être actifs ou vous
|
||
risquez accidentellement de faire une inondation SYN sur vos
|
||
cibles. Il est aussi presque facile de déterminer qui est en
|
||
train de scanner si seul une seule machine est active sur le
|
||
réseau. Vous pouvez vouloir utiliser des adresses IP à la place
|
||
des noms (ainsi les réseaux leurres ne vous verront pas dans les
|
||
logs du serveurs de nom).
|
||
|
||
Remarquez également que quelques détecteurs (stupides) de scan
|
||
bloqueront les hôtes qui tentent des scans de ports. Aussi vous
|
||
pouvez par inadvertance bloquer l’accès des machines leurres à
|
||
la machine cible. Ceci peut provoquer de grave problèmes aux
|
||
machines cibles si le leurre s’avère être sa passerelle internet
|
||
ou même « localhost ». Il faut donc utiliser prudemment cette
|
||
option. La vraie morale de cette histoire est que les
|
||
détecteurs de scan ne doivent pas prendre de mesures contre les
|
||
machines qui semblent les analyser, car il se peut que ce soit
|
||
des leurres !
|
||
|
||
Les leurres sont utilisés pour le scan initial (en utilisant
|
||
ICMP, SYN, ACK, ou autre chose) et pendant la véritable phase de
|
||
scan. Les leurres sont aussi utilisés pendant la détection de
|
||
l’hôte distant ( <B>-O</B> ).
|
||
|
||
Il ne faut pas oublier que d’utiliser un trop grand nombre de
|
||
leurres peut ralentir le scan et même le rendre imprécis. De
|
||
plus certains fournisseurs d’accès à Internet (FAI) filtreront
|
||
vos paquets usurpés, bien que la plupart n’applique aucune
|
||
restriction sur les paquets usurpés.
|
||
|
||
<B>-S</B> <B><adresse_ip></B>
|
||
Dans certaines circonstances, <I>nmap</I> est incapable de déterminer
|
||
l’adresse source. <I>Nmap</I> vous avertira si c’est le cas). Dans
|
||
cette situation, utilisez -S avec votre adresse IP (ou l’inter-
|
||
face depuis laquelle vous voulez envoyer les paquets).
|
||
|
||
Une autre utilisation possible de ce drapeau est d’usurper le
|
||
scan pour faire croire aux cibles que <B>quelqu</B><EFBFBD><EFBFBD><B><EFBFBD></B><EFBFBD><EFBFBD><B>un</B> <B>d</B><EFBFBD><EFBFBD><B><EFBFBD></B><EFBFBD><EFBFBD><B>autre</B> <B>les</B>
|
||
<B>scanne.</B> Imaginez une entreprise qui se croit régulièrement
|
||
scannée par un concurrent ! Ce n’est pas l’utilisation première
|
||
ni le but principal de ce drapeau. Je pense que c’est juste une
|
||
possibilité intéressante pour les personnes qui sont au courant
|
||
avant qu’elles n’en accusent d’autres de les scanner. <B>-e</B> est
|
||
généralement requis pour ce type d’utilisation.
|
||
|
||
<B>-e</B> <B><interface></B>
|
||
indique l’interface réseau à utiliser pour envoyer et recevoir
|
||
les paquets. <B>Nmap</B> devrait être capable de détecter ceci mais il
|
||
vous préviendra s’il n’y parvient pas.
|
||
|
||
<B>-g</B> <B><portnumber></B>
|
||
Spécifie le numéro de port source dans le scan. Beaucoup de
|
||
pare-feux et de filtreur de paquets naïfs feront une exception
|
||
dans leurs règles pour autoriser le passage des paquets DNS (53)
|
||
ou FTP-DATA (20) pour établir une connexion. Évidemment ça
|
||
réduit complètement les avantages de sécurité d’un pare-feu
|
||
puisque les intrus n’ont qu’à se déguiser en FTP ou DNS en modi-
|
||
fiant leur port source. Évidemment pour un scan UDP vous devriez
|
||
utiliser 53 en premier et pour les scans TCP vous devriez
|
||
utiliser 20 avant 53. Remarquer que ce n’est qu’une requête --
|
||
nmap ne le fera que s’il y parvient. Par exemple, vous ne pou-
|
||
vez pas faire des analyse en parallèle avec un seul port. Aussi
|
||
<B>nmap</B> changera le port source même si vous utilisez <B>-g</B>.
|
||
|
||
Sachez qu’il y a une petite pénalité de performance sur certains
|
||
scans si vous utilisez cette option, parce que j’enregistre par-
|
||
fois des informations utiles dans le numéro de port source.
|
||
|
||
<B>--data_length</B> <B><nombre></B>
|
||
Normalement nmap envoie des paquets minimalistes qui ne contien-
|
||
nent que l’en-tête. Ainsi, les paquets TCP font 40 octets et
|
||
les requêtes d’écho ICMP, 28 octets. Cette option indique à
|
||
Nmap d’ajouter le nombre spécifié d’octets initialisés à 0 à la
|
||
plupart des paquets qu’il envoie. La détection de système
|
||
d’exploitation (-O) n’est pas affectée, mais la plupart des
|
||
paquets de ping et de scan de port le sont. Ça ralentit les
|
||
choses, mais ça peut être un peu moins voyant.
|
||
|
||
<B>-n</B> Dit à Nmap de ne <B>JAMAIS</B> faire de résolution DNS inverse sur une
|
||
adresse IP active. Comme DNS est souvent lent, ça peut aider à
|
||
accélérer les choses.
|
||
|
||
<B>-R</B> Dit à Nmap de <B>TOUJOURS</B> faire la résolution DNS inverse des
|
||
adresses IP cibles. Normalement ceci n’est fait que pour les
|
||
machines vivantes.
|
||
|
||
<B>-r</B> Dit à Nmap <B>DE</B> <B>NE</B> <B>PAS</B> changer aléatoirement l’ordre dans lequel
|
||
les ports seront analysés.
|
||
|
||
<B>--randomize_hosts</B>
|
||
Dit à nmap de mélanger chaque groupe comprenant jusqu’à 2048
|
||
hôtes avant de les analyser. Ceci rend les scans moins évidents
|
||
à de nombreux systèmes de surveillance réseau, particulièrement
|
||
quand vous le combinez avec des options pour ralentir le timing
|
||
(voir ci-dessous).
|
||
|
||
<B>-M</B> <B><max</B> <B>sockets></B>
|
||
Spécifie le nombre maximum de sockets qui seront utilisés en
|
||
parallèle pour le scan TCP connect() (celui par défaut). C’est
|
||
utile pour ralentir légèrement le scan et éviter de crasher les
|
||
machines cibles. Une autre approche consiste à utiliser <B>-sS</B>, qui
|
||
est généralement plus facile à gérer pour les machines.
|
||
|
||
<B>OPTIONS</B> <B>TIMING</B>
|
||
généralement nmap parvient à s’ajuster correctement aux car-
|
||
actéristiques du réseau et à analyser aussi vite que possible
|
||
tout en minimisant la probabilité d’être détecté. Cependant, il
|
||
y a des cas où les timings par défaut de Nmap ne correspondent
|
||
pas à vos objectifs. Les options suivantes permettent un
|
||
contrôle fin des timings :
|
||
|
||
<B>-T</B> <B><Paranoid</B> <B>|</B> <B>Sneaky</B> <B>|</B> <B>Polite</B> <B>|</B> <B>Normal</B> <B>|</B> <B>Aggressive</B> <B>|</B> <B>Insane></B>
|
||
Ce sont les différentes politiques de timing pour communiquer de
|
||
manière pratique vos priorités à nmap.
|
||
|
||
<B>Paranoid</B> analyse <B>tr</B><EFBFBD><B><EFBFBD></B><EFBFBD><B>s</B> <B>lentement</B> dans l’espoir d’éviter d’être
|
||
repéré par les système de détection d’intrusion. Il sérialise
|
||
tous les scans (pas de scan parallèle) et attend au moins 5 min-
|
||
utes entre les envois de paquets.
|
||
|
||
<B>Sneaky</B> c’est la même chose, sauf qu’il attend 15 secondes entre
|
||
les envois de paquets.
|
||
|
||
<B>Polite</B> essaye de minimiser la charge sur le réseau et de réduire
|
||
la probabilité de crasher des machines. Il sérialises les test
|
||
et attend <B>au</B> <B>moins</B> 0,4 secondes entre chaque.
|
||
|
||
<B>Normal</B> c’est le comportement par défaut de Nmap, qui essaye de
|
||
s’exécuter aussi vite que possible sans surcharger le réseau ou
|
||
oublier des hôtes/ports.
|
||
|
||
<B>Aggressive</B> ajoute un décompte de 5 minutes par hôte et n’attends
|
||
jamais les réponses individuelles plus de 1.25 secondes.
|
||
|
||
<B>Insane</B> ne convient qu’aux réseaux ultra-rapides où vous ne
|
||
risquez par de perdre d’informations. Il ajoute un décompte de
|
||
75 secondes et n’attend les réponses individuelles que pendant
|
||
0,3 secondes. Il permet de balayer très rapidement les réseaux.
|
||
Vous pouvez aussi référencer ces modes par numéro (0-5). Par
|
||
exemple, ’-T 0’ donne le mode Paranoid et ’-T 5’ le mode Insane.
|
||
|
||
Ces modes timings NE devrait PAS être utiliser en combinaison
|
||
avec les contrôles de bas niveau donnés ci-dessous.
|
||
|
||
<B>--host_timeout</B> <B><millisecondes></B>
|
||
Spécifie la durée que <B>nmap</B> est autorisée à consacrer à l’analyse
|
||
d’un hôte unique avant d’abandonner cette IP. Par défaut il n’y
|
||
a pas de temps limite pour un hôte.
|
||
|
||
<B>--max_rtt_timeout</B> <B><millisecondes></B>
|
||
Spécifie la durée maximale que <B>nmap</B> peut laisser s’écouler en
|
||
attendant une réponse à ses tests avant de retransmettre ou de
|
||
laisser tomber. La valeur par défaut est 9 000.
|
||
|
||
<B>--min_rtt_timeout</B> <B><millisecondes></B>
|
||
Quand les hôtes cibles commencent à établir un modèle de réponse
|
||
très rapidement, <B>nmap</B> diminuera la durée accordée par test.
|
||
Ceci augmente la vitesse du scan, mais peut conduire à la perte
|
||
de paquets quand une réponse prend plus de temps que d’habitude.
|
||
Avec ce paramètre vous pouvez garantir que <B>nmap</B> attende au moins
|
||
une certaine durée avant de laisser tomber un test.
|
||
|
||
<B>--initial_rtt_timeout</B> <B><millisecondes></B>
|
||
Spécifie le décompte du test initial. Ce n’est généralement
|
||
utile que lors de l’analyse d’hôte derrière un pare-feu avec
|
||
-P0. Normalement <B>nmap</B> obtient de bonnes estimations à partir du
|
||
ping et des premiers tests. Le mode par défaut est 6 000.
|
||
|
||
<B>--max_parallelism</B> <B><nombre></B>
|
||
Spécifie le nombre maximum de scans que <B>nmap</B> est autorisé à
|
||
mener en parallèle. Positionner ceci à 1 signifie que <B>nmap</B>
|
||
n’essayera jamais de scanner plus d’un port à la fois. Ce nombre
|
||
affecte aussi les autres scans parallèle comme le balayage de
|
||
ping, RPC scan, etc.
|
||
|
||
<B>--scan_delay</B> <B><millisecondes></B>
|
||
Spécifie la durée <B>minimum</B> que <B>nmap</B> doit laisser s’écouler entre
|
||
ses envois. C’est utile pour réduire la charge du réseau ou pour
|
||
ralentir le débit du scan afin de ne pas atteindre le seuil de
|
||
déclenchement des systèmes de détection d’intrusion.
|
||
|
||
|
||
|
||
</PRE>
|
||
<H2>SP<EFBFBD>ÉCIFICATION DE CIBLE</H2><PRE>
|
||
Tout ce qui n’est pas une option ou un argument d’option est traité par
|
||
nmap comme une spécification d’hôte. Le cas le plus simple et une
|
||
liste de nom d’hôtes ou d’adresse IP sur la ligne de commande. Si vous
|
||
voulez analyser un sous réseau d’adresses IP vous pouvez ajouter
|
||
<20><><B><EFBFBD></B><EFBFBD><EFBFBD><B>/mask</B><EFBFBD><EFBFBD><B><EFBFBD></B><EFBFBD><EFBFBD> au nom d’hôtes <B>mask</B> doit être compris entre 0 (scanner tout
|
||
internet) et 32 (scanner un seul hôte). Utiliser /24 pour analyser des
|
||
adresses de classe ’C’ et /16 pour la classe ’B’.
|
||
|
||
<B>Nmap</B> utilise une notation puissante pour spécifier une adresse IP en
|
||
utilisant des listes/intervalles pour chaque élément. Ainsi vous pou-
|
||
vez analyser tout un réseau de classe B 192.168.*.* en spécifiant
|
||
’192.168.*.*’ ou ’192.168.0-255.0-255’ ou même
|
||
’192.168.1-50,51-255.1,2,3,4,5-255’. Et bien sûr, vous pouvez utiliser
|
||
la notation mask : ’192.168.0.0/16’. Elles sont toutes équivalentes Si
|
||
vous utilisez des astérisques (’*’), souvenez-vous que la plupart des
|
||
shells nécessitent que vous les précédiez par des anti-slash ou que
|
||
vous les protégiez par des guillemets.
|
||
|
||
Une autre chose intéressante à faire et de découper Internet : au lieu
|
||
de scanner les hôtes dans une classe ’B’, scanner ’*.*.5.6-7’ pour
|
||
analyser toutes les adresses IP se terminant par .5.6 ou .5.7. Pour
|
||
plus d’informations sur la spécification des hôtes à analyser, voyez la
|
||
section <I>exemples.</I>
|
||
|
||
|
||
</PRE>
|
||
<H2>EXEMPLES</H2><PRE>
|
||
Voici quelques exemples d’utilisation de <B>nmap</B> du plus simple au plus
|
||
compliqué. Remarquez que les noms et adresses sont utilisées pour ren-
|
||
dre les choses plus concrètes. À leur place vous devriez substituer les
|
||
noms et adresses de <B>votre</B> <B>propre</B> <B>r</B><EFBFBD><B><EFBFBD></B><EFBFBD><B>seau.</B> Je ne pense pas que l’analyse
|
||
de ports d’autres réseaux soit illégale, ni que l’analyse de ports doit
|
||
être considérée par les autres comme une attaque. J’ai analysé des
|
||
centaines de milliers de machines et je n’ai reçu qu’une seule plainte.
|
||
Mais je ne suis pas juriste et certaines personnes pourraient être
|
||
ennuyées par les tests de <I>nmap.</I> Aussi demandez préalablement la per-
|
||
mission ou utilisez <B>nmap</B> à vos risques et périls.
|
||
|
||
<B>nmap</B> <B>-v</B> <B>cible.exemple.com</B>
|
||
|
||
Cette option analyse tous les ports TCP réservés sur la machine
|
||
cible.exemple.com . Le -v signifie d’activer le mode verbeux.
|
||
|
||
<B>nmap</B> <B>-sS</B> <B>-O</B> <B>cible.exemple.com/24</B>
|
||
|
||
Envoie un scan SYN furtif contre chaque machine active parmi les 255
|
||
machines de classe ’C’ qui sont sur cible.exemple.com. Il essaye aussi
|
||
de déterminer quel système d’exploitation fonctionne sur chaque hôte.
|
||
Ceci nécessite les privilèges root en raison du scan SYN et de la
|
||
détection de système d’exploitation.
|
||
|
||
<B>nmap</B> <B>-sX</B> <B>-p</B> <B>22,53,110,143,4564</B> <B>198.116.*.1-127</B>
|
||
|
||
Envoie un scan Xmas tree à la première moitié de chacun des 255 sous-
|
||
réseaux de l’espace d’adresse de classe B 198.116. Nous sommes en train
|
||
de tester si les systèmes font fonctionner sshd, DNS, pop3d, imapd, ou
|
||
port 4564. Remarquez que les scan Xmas ne fonctionnent pas contre les
|
||
machines Microsoft en raison de leur pile TCP déficiente. Le même
|
||
problème se produit aussi avec les machines CISCO, IRIX, HP/UX, et
|
||
BSDI.
|
||
|
||
<B>nmap</B> <B>-v</B> <B>--randomize_hosts</B> <B>-p</B> <B>80</B> <20><><B><EFBFBD></B><EFBFBD><EFBFBD><B>*.*.2.3-5</B><EFBFBD><EFBFBD><B><EFBFBD></B><EFBFBD><EFBFBD>
|
||
|
||
Plutôt que de se concentrer sur une plage spécifique d’IP, il est par-
|
||
fois intéressant de découper l’ensemble d’Internet et d’analyser un
|
||
petit échantillon de chaque tranche. Cette commande trouve tous les
|
||
serveurs web sur des machines dont l’adresse IP se termine par .2.3,
|
||
.2.4 ou .2.5 . Si vous êtes root, vous pouvez aussi ajouter <B>-sS</B>. Vous
|
||
trouverez plus de machine intéressantes en commençant à 127, aussi vous
|
||
utiliserez ’127-222’ à la place de la première astérisque car cette
|
||
section possède une plus grande densité de machine intéressantes.
|
||
|
||
<B>host</B> <B>-l</B> <B>company.com</B> <B>|</B> <B>cut</B> <20><><B><EFBFBD></B><EFBFBD><EFBFBD><B>-d</B> <20><><B><EFBFBD></B><EFBFBD><EFBFBD> <B>-f</B> <B>4</B> <B>|</B> <B>./nmap</B> <B>-v</B> <B>-iL</B> <B>-</B>
|
||
|
||
Fait un transfert DNS pour découvrir les hôtes de company.com et
|
||
utiliser leurs adresses IP pour alimenter <I>nmap</I>. Les commandes ci-
|
||
dessus sont pour mon ordinateur GNU/Linux. Vous pouvez avoir besoin
|
||
d’autres commandes/options pour d’autres systèmes d’exploitations.
|
||
|
||
|
||
</PRE>
|
||
<H2>BOGUES</H2><PRE>
|
||
Bogues ? Quels bogues ? Envoyez-moi tout ce que vous trouverez. Les
|
||
patchs sont les bienvenus. Souvenez-vous que vous pouvez aussi envoyer
|
||
les empreintes de nouveaux systèmes d’exploitation pour enrichir la
|
||
base de données. Si une empreinte appropriée est trouvée, Nmap
|
||
affichera l’URL à laquelle vous pourrez l’envoyer.
|
||
|
||
|
||
</PRE>
|
||
<H2>AUTEUR</H2><PRE>
|
||
Fyodor <I><fyodor@insecure.org></I>
|
||
|
||
|
||
</PRE>
|
||
<H2>DISTRIBUTION</H2><PRE>
|
||
La dernière version de <I>nmap</I> peut être obtenu depuis <I>http://www.inse-</I>
|
||
<I>cure.org/nmap/</I>
|
||
|
||
<I>nmap</I> est (C) 1995-2001 par Insecure.Com LLC
|
||
|
||
<I>libpcap</I> est aussi distribuée avec nmap. Il est copyrighté par Van
|
||
Jacobson, Craig Leres et Steven McCanne, tous du Lawrence Berkeley
|
||
National Laboratory, University of California, Berkeley, CA. La version
|
||
distribuée avec nmap peut être modifiée, les sources d’origine sont
|
||
disponibles à ftp://ftp.ee.lbl.gov/libpcap.tar.Z .
|
||
|
||
Ce programme est un logiciel libre, vous pouvez le redistribuer et/ou
|
||
le modifier sous les termes de la GNU General Public License telle que
|
||
publiée par par la Free Software Foundation ; Version 2. Ceci garantit
|
||
votre droit d’utiliser, modifier et redistribuer Nmap sous certaines
|
||
conditions. Si cette licence est inacceptable pour vous, Insecure.Org
|
||
pourrait éventuellement vendre d’autres licences. (contacter <B>fyo-</B>
|
||
<B>dor@dhp.com</B>).
|
||
|
||
Les sources sont fournies avec ce logiciel car nous croyons que les
|
||
utilisateurs ont le droit de savoir exactement ce que fait un programme
|
||
avant de le lancer. Ceci vous permet aussi d’auditer le logiciel pour
|
||
rechercher des trous de sécurité (aucun n’a été trouvé jusqu’à
|
||
présent).
|
||
|
||
Le code source vous permet aussi de porter Nmap vers de nouvelles
|
||
plates-formes, corriger des bogues et ajouter de nouvelles caractéris-
|
||
tiques. Vous êtes vivement encouragé à envoyer vos modifications à
|
||
<B>fyodor@insecure.org</B> pour une éventuelle incorporation dans la distribu-
|
||
tion principale. En envoyant ces modifications à Fyodor ou à quelqu’un
|
||
de la liste de diffusion de développement de insecure.org, il est sup-
|
||
posé que vous offrez à Fyodor le droit illimité et non exclusif de
|
||
réutiliser, modifier et relicencier le code. C’est important parce que
|
||
l’impossibilité de relicencier le code a provoqué des problèmes dévas-
|
||
tateurs dans d’autres projets de logiciel libre (comme KDE et NASM).
|
||
Nmap sera toujours disponible en Open Source. Si vous désirez
|
||
spécifier des conditions particulières de licence pour vos contribu-
|
||
tions, dites-le nous simplement quand vous nous les envoyez.
|
||
|
||
Ce programme est distribué dans l’espoir d’être utile, mais <B>SANS</B> <B>AUCUNE</B>
|
||
<B>GARANTIE</B> même la garantie implicite relative à la <B>QUALIT</B><EFBFBD><B><EFBFBD></B><EFBFBD> <B>MARCHANDE</B> ou
|
||
<B>D</B><EFBFBD><EFBFBD><B><EFBFBD></B><EFBFBD><EFBFBD><B>APTITUDE</B> <20><B><EFBFBD></B><EFBFBD> <B>UNE</B> <B>UTILISATION</B> <B>PARTICULI</B><EFBFBD><B><EFBFBD></B><EFBFBD><B>RE.</B> Voir la licence GPL (c’est
|
||
le fichier COPYING de la distribution <I>nmap</I>.
|
||
|
||
Remarque : Nmap a déjà fait planter certaines applications, des piles
|
||
TCP/IP et même des systèmes d’exploitations mal écrits. Par conséquent
|
||
<B>Nmap</B> <B>ne</B> <B>devrait</B> <B>jamais</B> <20><B><EFBFBD></B><EFBFBD><B>tre</B> <B>utilis</B><EFBFBD><B><EFBFBD></B><EFBFBD> <B>contre</B> <B>des</B> <B>syst</B><EFBFBD><B><EFBFBD></B><EFBFBD><B>mes</B> <B>qui</B> <B>ont</B> <B>une</B>
|
||
<B>mission</B> critique à moins que vous ne soyez prêt à souffrir d’une
|
||
éventuelle interruption de service. Nous reconnaissons ici que nmap
|
||
peut crasher vos systèmes et réseaux mais nous ne sommes pas respons-
|
||
ables des dégâts que Nmap pourrait provoquer.
|
||
|
||
En raison du léger risque de crashs et parce que quelques personnes mal
|
||
intentionnées utilisent nmap pour les reconnaissances préliminaires à
|
||
une attaque, certains administrateurs deviennent furieux et se plaig-
|
||
nent quand leurs systèmes sont scannés. C’est pourquoi il est plus sage
|
||
de demander la permission avant de lancer l’analyse d’un réseau.
|
||
|
||
Nmap ne devrait jamais être lancé avec des privilèges (par exemple suid
|
||
root) pour des raisons de sécurité.
|
||
|
||
Toutes les versions de Nmap postérieures à la 2.0 sont compatibles an
|
||
2000. Il n’y a aucune raison de penser que les versions antérieures ont
|
||
des problèmes, mais nous ne les avons pas testées.
|
||
|
||
|
||
</PRE>
|
||
<H2>TRADUCTION</H2><PRE>
|
||
Sébastien Blanchet, 2002 <sebastien.blanchet AT free.fr>
|
||
|
||
|
||
</PRE>
|
||
<H2>RELECTURE</H2><PRE>
|
||
Gérard Delafond
|
||
|
||
|
||
|
||
<B>NMAP(1)</B>
|
||
</PRE>
|
||
<HR>
|
||
<ADDRESS>
|
||
Man(1) output converted with
|
||
<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
|
||
</ADDRESS>
|
||
</BODY>
|
||
</HTML>
|