en voila une pour nmap
<BR>
<BR>Nmap network security scanner
<BR>
<BR>--------------------------------------------------------------------------------
<BR>
<BR>NOM
<BR> nmap - Network exploration tool and security scanner
<BR>
<BR>
<BR>SYNOPSIS
<BR> nmap [Type(s) de scan] [Options] <hôte ou réseau #1 ... [#N]>
<BR>
<BR>
<BR>
<BR>DESCRIPTION
<BR> Nmap est conçu pour permettre aux administrateurs système
<BR> ainsi qu'aux personnes curieuses de scanner de larges réseaux pour
<BR> déterminer quels sont les hôtes connectés et quels services ils offrent.
<BR> Nmap supporte un grand nombre de techniques de scan tel que:
<BR> UDP, TCP connect(), TCP SYN (mi-ouvert), ftp proxy (bounce attack),
<BR> reverse-ident, ICMP (ping sweep), FIN, ACK sweep, Xmas tree, SYN sweep,
<BR> et NULL scan. Voir la section types de scan pour plus de détails.
<BR> Nmap possède aussi un certain nombre de fonctions avancés telles que
<BR> la détection de l'OS distant grâce à l'empreinte digitale TCP/IP, le
<BR> stealth scanning, le dynamic delay, le calcul
<BR> de retransmission, le scan en parallèle, la détection d'hôtes éteints
<BR> grâce au ping en parallèle, les scans avec leurres,la détection de ports
<BR> filtrés, le scan RPC direct (sans-portmap), le scan avec fragmentations
<BR> de paquets et une flexibilité dans l'écriture des cibles et des ports.
<BR>
<BR> Des efforts ont été fournis pour faciliter l'utilisation
<BR> aux utilisateurs n'ayant pas d'accès root. Malheureusement,
<BR> de nombreuses interfaces de kernels (ex: raw sockets) nécessitent
<BR> les privilèges root.
<BR>
<BR> Le résultat de l'exécution de nmap nous donne normalement
<BR> une liste de ports intéressants sur la machine scannée.
<BR> Nmap donne toujours le nom du service correspondant
<BR> (s'il est connu), le numéro, l'état, et le protocole. L'état
<BR> est soit 'open', 'filtered', 'unfiltered'. Open signifie que
<BR> la cible acceptera - 'accept()' - des connexions sur ce port.
<BR> Filtered signifie qu'il y a un firewall/filtre ou un obstacle
<BR> qui couvre ce port et qui empêche nmap de déterminer s'il
<BR> est ouvert ou non. Unfiltered signifie que le port est connu par nmap
<BR> pour être fermé et qu'aucun firewall/filtre n'apparaît interférer avec
<BR> nmap. Les résultats 'unfiltered' sont courants et sont affichés
<BR> uniquement quand la plupart des ports sont trouvés à l'état filtrés.
<BR>
<BR> En fonction des options utilisées, les caractéristiques suivantes
<BR> peuvent être affichées :
<BR> Le type d'OS.
<BR> Le séquencement TCP.
<BR> Les noms des utilisateurs sous lesquels fonctionnent les programmes
<BR> ayant ouverts des ports.
<BR> Le nom DNS.
<BR> Si l'hôte est une adresse de smurf.
<BR> ...
<BR>
<BR>
<BR>OPTIONS
<BR> Les options dont la combinaison paraît logique peuvent
<BR> généralement être utilisées ensemble dans nmap. Certaines
<BR> options sont spécifiques à certains modes de scans.
<BR> nmap essaie de prévenir quand vous spécifiez des
<BR> options mal placées ou ne fonctionnant pas.
<BR> Si vous êtes impatients vous pouvez passer directement
<BR> à la section exemples, à la fin, elle vous montre les
<BR> utilisations les plus fréquentes. Vous pouvez aussi
<BR> taper nmap -h pour avoir une référence des options.
<BR>
<BR> Types de scan
<BR>
<BR> -sT
<BR> TCP connect() scan:
<BR> C'est le type le plus basique des scans TCP. L'appel
<BR> système connect() est utilisé pour ouvrir un port sur l'hôte distant.
<BR> Si le port est en écoute, connect() fonctionnera, autrement,
<BR> le port ne sera pas accessible. Un gros avantage de cette technique est
<BR> qu'elle ne nécessite pas les privilèges root. N'importe quel utilisateur
<BR> sur la plupart des UNIX est libre d'utiliser cette option.
<BR>
<BR> Ce type de scan est, par contre, facilement détectable.
<BR> Les logs du système montreront des connections et des
<BR> erreurs résultantes au service qui accept() les connections.
<BR> En effet, elles seront rapidement arrêtées par le serveur suite au
<BR> connect() car le client n'enverra pas d'autres demandes pour cette
<BR> connexion ouverte.
<BR>
<BR> -sS
<BR> TCP SYN scan:
<BR> Cette commande fait souvent référence à la technique de
<BR> scan "mi-ouvert" (half open), car vous n'ouvrez pas
<BR> une connexion TCP complète. Vous envoyez un paquet avec
<BR> le flag SYN, comme pour faire la requête d'une connexion
<BR> normale et vous attendez la réponse.
<BR> Si vous recevez comme réponse un SYN/ACK, c'est que
<BR> le port est en écoute, donc ouvert.
<BR> Un paquet avec le flag RST signifie que le port n'est
<BR> pas en écoute. Si un SYN/ACK est reçu, alors quelques
<BR> secondes plus tard vous recevrez un RST (le kernel de
<BR> l'OS fait cela pour nous) . Cela ne sera pas le cas si
<BR> vous avez répondu au précèdent SYN/ACK.
<BR> Le premier avantage de ce type de scan est qu'il
<BR> ne sera pas la plupart du temps détecté par la cible.
<BR> Malheureusement, les privilèges root seront nécessaires.
<BR>
<BR> -sF -sX -sN
<BR> Stealth (scan de type "mi-ouvert") FIN, Xmas Tree,
<BR> et le mode de NULL scan : certaines fois, le scan de type SYN
<BR> n'est plus suffisamment clandestin. Certains
<BR> firewall, IDS, filtreur de paquets repèrent
<BR> ce type de scans sur des ports restreints. Des programmes
<BR> tel que Synlogger et Courtney sont connus pour cela.
<BR> D'un autre côté, ces types de scans auront de moins bon
<BR> résultats, et pourront passer à côté de ports ouverts.
<BR>
<BR> L'idée est que les ports fermés doivent nous répondre par
<BR> un RST, alors que ceux ouverts ne doivent pas prendre en
<BR> compte le paquet en question (RFC 793 pp 64).
<BR> Le scan FIN utilise un paquet avec le fag FIN, alors que
<BR> l'Xmas lui utilise la combinaison des flags FIN, URG et
<BR> PUSH. Le scan NULL ne met aucun flag.
<BR> Comme d'habitude, microsoft ne respecte pas du tout les
<BR> règles et fait à sa manière. A cause de cela, ces types de
<BR> scans ne fonctionneront pas face à des machines de type
<BR> windows95/NT.
<BR>
<BR> D'une autre manière, c'est un bon moyen pour faire la
<BR> distinction entre des machines windows ou non. Si le scan
<BR> trouve des ports ouverts, vous pouvez alors être sûr que
<BR> ce n'est pas un windows. Si un scan de type -sF, -sX ou
<BR> encore -sN vous montre tous les ports fermés,
<BR> et qu'avec un -sS il y en a d'ouverts, alors vous pouvez
<BR> être quasiment sûr que c'est un windows. Ceci est moins utile
<BR> toutefois, depuis que nmap possède un module de "remote OS
<BR> identification" par le "TCP/IP fingerprinting". Windows n'est
<BR> pas non plus le seul à travailler de cette manière.
<BR> Cisco, BSDI, HU/UX, MSV et IRIX renvoyent aussi des RST
<BR> depuis leurs ports ouverts alors qu'ils devraient simplement
<BR> jeter les paquets et ne pas en tenir compte.
<BR>
<BR> -sP
<BR> Ping scanning : quelques fois, vous avez besoin de connaître
<BR> uniquement si tel ou tel hôte est là ou non. Nmap fait cela
<BR> en envoyant une requête 'ICMP echo' à chaque IP de la liste.
<BR> Les hôtes qui répondent sont présents. Malheureusement, certains
<BR> sites tel que microsoft.com ne respectent pas cette règle et bloquent
<BR> l'ICMP en entrée. De cette manière nmap ne peut envoyer que des
<BR> paquets avec des TCP ack en direction du port 80 (par défaut).Si
<BR> nous avons un RST en réponse alors l'hôte est présent. Une autre
<BR> technique est d'envoyer un paquet SYN et d'attendre un RST ou
<BR> SYN/ACK. Les utilisateurs n'ayant pas le root,
<BR> utiliseront la méthode connect().
<BR>
<BR> Par défaut (pour les utilisateurs root) nmap utilise à la fois
<BR> la technique ICMP et ACK en parallèle. Vous pouvez changer cela
<BR> grâce à l'option -P décrite plus bas.
<BR>
<BR> Il faut savoir que le ping est effectué par défaut, et qu'uniquement
<BR> les hôtes qui répondent sont scannés. Utilisez cette méthode
<BR> uniquement si vous voulez faire un ping sweep sans aucun port scan.
<BR>
<BR> -sU UDP scan: Cette méthode est utilisée pour connaître tous
<BR> les ports UDP (User Datagram Protocol, RFC 768) ouverts sur la
<BR> machine. La technique consiste à envoyer un paquet UDP de 0 octets sur
<BR> chaque ports de la machine. Si nous recevons un message "ICMP port
<BR> unreachable", alors le port est fermé. Autrement, nous considèrerons
<BR> qu'il est ouvert.
<BR>
<BR> Certaines personnes considèrent que le scan UDP est inutile.
<BR> J'ai pour habitude de leur rappeler un bug récent sur
<BR> Solaris concernant rpcbind.
<BR> Rpcbind peut être caché quelque part sur un port UDP
<BR> au dessus de 32770. Donc si le port 111 est
<BR> bloqué par le firewall, ce n'est pas grave; Vous pouvez chercher
<BR> sur les 30 000 ports plus hauts.
<BR> Avec un scanner UDP c'est possible. C'est aussi
<BR> le cas du cheval de troie du cDc (BackOrifice) qui est en écoute
<BR> sur un port UDP configurable. Il n'est pas nécessaire de mentionner
<BR> non plus les services très couramment vulnérables qui écoutent aussi
<BR> sur de l'UDP tel que snmp, tftp, NFS, etc...
<BR>
<BR> Malheureusement, le scanning UDP est quelques fois extrêmement
<BR> lent depuis que quelques hôtes implémentent une suggestion de
<BR> la RFC 1812 (section 4.3.2.<IMG SRC="images/smiles/icon_cool.gif"> qui limite la vitesse de transmission
<BR> des messages d'erreur ICMP. Par exemple, le Kernel de Linux limite
<BR> les messages "destination unreachable" (dans net/ipv4/icmp.h) à 80
<BR> toutes les 4 secondes, avec 1/4 de seconde de pénalité si cela excède.
<BR> Solaris possède des limites encore plus strictes (à peu près 2 messages
<BR> par seconde) et donc cela prend encore beaucoup plus de temps
<BR> pour les scanner.
<BR> nmap détecte cette limite et ralentie en s'accordant
<BR> à celle-ci, plutôt que d'innonder le réseau avec des paquets
<BR> qui seront ignorés par la cible.
<BR>
<BR> Comme d'habitude, Microsoft ignore la suggestion de la RFC
<BR> et donc ne fait pas de limitation, ce qui à pour avantage
<BR> de pouvoir scanner d'un trait les 64K port d'une machine
<BR> de type windows. Wahoo!!
<BR>
<BR>
<BR> -sR RPC scan. Cette méthode fonctionne avec la plupart des
<BR> combinaisons de scan. Il prend les divers ports TCP et UDP et
<BR> les inondent sous des commandes SunRPC NULL avec espoir
<BR> de découvrir s'ils sont des ports RPC et si oui, il essaie de
<BR> savoir quel est le programme derrière et sa version.
<BR> De cette manière vous pouvez obtenir les mêmes informations que
<BR> 'rpcinfo -p' même si la cible est derrière un firewall (ou si
<BR> elle possède un wrapper). Decoy (voir ci-dessous) ne fonctionne
<BR> pas avec le scan RPC, mais, un jour viendra ou je l'ajouterai.
<BR>
<BR>
<BR> -b <ftp relay host>
<BR> FTP bounce attack : Une fonctionnalité intéressante du protocole
<BR> ftp (RFC 959) est le support du proxy pour les connexions ftp.
<BR> En d'autres mots, je dois être capable de me connecter depuis
<BR> evil.com sur le serveur ftp de cible.com et de demander à celui-ci
<BR> d'envoyer un fichier N'IMPORTE où sur Internet! En fait cela
<BR> devait bien fonctionner en 1985 quand la RFC a été écrite.
<BR> Mais sur l'Internet d'aujourd'hui, il n'est plus possible
<BR> que des gens 'hijack' (=détournent) des serveurs ftp pour disperser
<BR> les données à travers l'Internet. Comme *Hobbit* l'a écrit en
<BR> 1995, cette faiblesse du protocole "peut permettre de poster
<BR> des mails, news totalement intraçables, remplir jusqu'à
<BR> saturation des disques, et généralement être gênant et
<BR> être plutôt difficiles à tracer". Nous allons utiliser
<BR> donc cette faille pour, "surprise, surprise...", scanner
<BR> des ports TCP depuis un serveur ftp "proxy". De cette
<BR> manière, nous pouvons scanner des ports qui sont
<BR> généralement bloqués (139 est un bon choix). Si le
<BR> serveur ftp permet la lecture, écriture dans un
<BR> répertoire (ex: /incoming), alors, il vous est possible
<BR> d'envoyer des données sur les ports trouvés ouverts
<BR> (nmap ne fait pas cela pour vous).
<BR>
<BR> Les arguments donnés à l'option 'b' sont les serveurs que
<BR> vous souhaitez utiliser comme proxy, en utilisant
<BR> la notation standard d'URL. Le format est:
<BR> pseudo:pass <!-- BBcode auto-mailto start --><a href="mailto:mot@serveur:port.">mot@serveur:port.</a><!-- BBCode auto-mailto end --> Tout sauf serveur
<BR> est optionnel. Pour déterminer quels sont les hôtes vulnérables,
<BR> vous pouvez lire mon article dans Phrack 51. Et une version
<BR> plus récente est présente sur le site de nmap
<BR> (
http://www.insecure.org/nmap/).
<BR>
<BR>
<BR> OPTIONS GENERALES
<BR> Aucunes d'entre elles ne sont obligatoires, mais elles
<BR> sont parfois très utiles.
<BR>
<BR> -P0 N'essaie pas de "pinger" les hôtes avant de les scanner.
<BR> Ceci permet de scanner des réseaux qui n'accèptent pas les requêtes
<BR> (ou réponses) ICMP echo à traverser leur firewall.
<BR> Microsoft est un exemple qui utilise ce type de filtrage dans
<BR> son réseau, donc il vous faudra utiliser -P0 ou encore
<BR> -PT80 si vous voulez le scanner.
<BR> Mais de toute manière Microsoft n'est qu'une petite
<BR> crotte de nez.
<BR>
<BR> -PT Utilise la technique de ping TCP pour repérer
<BR> les hôtes qui sont présents.
<BR> A la place d'envoyer des requêtes ICMP echo et d'attendre
<BR> une réponse, nous envoyons des paquets TCP ACK à travers
<BR> le réseau (ou machine) cible et attendons les réponses.
<BR> Les hôtes présents doivent répondre par un RST.
<BR> Ceci nous permet de passer à travers des réseaux
<BR> n'autorisant pas le ping. Les utilisateurs n'ayant
<BR> pas d'accès root utiliserons connect(). Pour spécifier
<BR> le port destination pour faire sa requête, nous
<BR> utilisons -PT<numerodeport>. Le port par défaut
<BR> est le 80 car c'est celui qui est le moins souvent filtré.
<BR>
<BR>
<BR> -PS Cette option utilise les paquets SYN
<BR> (requête de connexion) à la place des paquets ACK
<BR> (pour les utilisateurs root). Les hôtes présents doivent
<BR> répondre par un RST, et (très rarement par un SYN|ACK).
<BR>
<BR>
<BR> -PI Cette option utilise le vrai ping (requêtes ICMP echo).
<BR> Il regarde quels sont les hôtes présents et cherche
<BR> des adresses qui autorisent les broadcasts de sous-réseaux sur
<BR> votre réseau. Ce sont des adresses IP extrêmement accessibles
<BR> et qui transmettent les paquets entrants en des broadcasts en
<BR> direction des ordinateurs du sous réseau.
<BR> Si des adresses de ce type sont trouvées, elles doivent aussitôt
<BR> être éliminées car elles permettent de nombreux types de dénie de
<BR> service (DoS), tel que les attaques Smurf.
<BR>
<BR> -PB Ceci est le ping utilisé par défaut dans nmap. Il utilise
<BR> à la fois le paquet ACK ( -PT ) et ICMP ( -PI )
<BR> en parallèle. De cette manière vous pouvez atteindre à la fois
<BR> des réseaux qui en filtrent un (mais pas les deux).
<BR>
<BR> -O Cette option active l'authentification par l'empreinte
<BR> TCP/IP. En d'autres mots, il utilise quelques techniques pour
<BR> repérer des subtilités de la couche réseau de l'ordinateur
<BR> scanné. Il utilise les informations recueillies "empreinte
<BR> digitale" pour les comparer à une base de donnée d'empreintes
<BR> connues (le fichier nmap-os-fingerprints) et peut ainsi
<BR> voir quel type de système nous sommes en train de scanner.
<BR>
<BR> Si vous trouvez une machine mal diagnostiquée et qui a au
<BR> minimum un port ouvert, il serait très utile que vous
<BR> m'envoyez les détails (du type: OS blabla version xxx
<BR> was detected as OS bloblo version ZZZ). Si vous trouvez
<BR> une machine avec au moins un port d'ouvert, et sur laquelle
<BR> nmap répond "unknown operating system", alors, il serait
<BR> utile que vous envoyez l'adresse IP avec l'OS et la version
<BR> de celui-ci. Si vous ne pouvez envoyer l'adresse IP, la
<BR> dernière bonne chose que vous puissiez faire est d'envoyer
<BR> le résultat de l'execution de nmap sur l'hôte donné
<BR> avec l'option -d (ceci doit vous donner trois fichiers)
<BR> ainsi que le système d'exploitation et sa version. En faisant
<BR> cela, vous contribuez à augmenter la base de données
<BR> d'empreintes connues par nmap ce qui sera mieux
<BR> pour tout le monde.
<BR>
<BR> -I Met en action la fonction 'TCP reverse ident scanning'.
<BR> Comme l'a écrit en 1996 Dave Goldsmith dans un post sur Bugtraq,
<BR> le protocole ident (rfc 1413) permet de détecter le nom de
<BR> l'utilisateur qui fait fonctionner n'importe quel processus
<BR> connecté en utilisant TCP, même si ce processus n'a pas
<BR> initialisé la connexion. Donc vous pouvez, de cette manière
<BR> vous connecter sur le port 80 et utiliser identd pour trouver
<BR> si ce serveur est lancé par le root ou non. Ceci ne peut
<BR> être fait uniquement que par une connexion complète à
<BR> l'hôte distant (c'est à dire: l'option de scan -sT).
<BR> Quand -I est utilisé, le serveur identd de l'hôte distant
<BR> questionne chaque ports ouvert. Naturellement, ceci ne
<BR> fonctionne pas si l'hôte ne fait pas fonctionner identd.
<BR>
<BR> -f Cette option force les scans par SYN, FIN, XMAS,
<BR> ou encore NULL à utiliser de tous petits fragments de
<BR> paquets IP. L'idée est de fragmenter le header TCP sur
<BR> plusieurs paquets pour pouvoir rendre plus compliqué
<BR> aux filtreurs de paquets ainsi qu'au détecteurs d'intrusions
<BR> (IDS), de détecter ce que vous êtes en train de faire.
<BR> Attention avec cette option! Certains programmes ont du
<BR> mal à gérer les paquets fragmentés. Mon sniffer préféré
<BR> fait une erreur de segmentation après réception des
<BR> 36 premiers octets de fragments, après réception d'un
<BR> paquet de 24 octets ! Attention, ces paquets ne sont pas
<BR> repérés par les sniffers de paquets ainsi que par
<BR> les firewalls qui n'utilisent pas l'option du kernel
<BR> linux CONFIG_IP_ALWAYS_DEFRAG, et certains réseaux ne
<BR> peuvent pas supporter la nombre de hits que
<BR> cause ce type de scan.
<BR> Il faut noter que l'option ne fonctionne pas encore
<BR> correctement sur certains systèmes. Elle fonctionne
<BR> bien sur Linux, FreeBSD, et OpenBSD, certaines personnes
<BR> ont aussi reporté un succès sur certains *NIX.
<BR>
<BR> -v Mode détaillé. Cette option est fortement
<BR> conseillée, car elle donne des informations sur ce qui
<BR> est en train de se passer. Vous pouvez l'utiliser
<BR> en double pour un plus grand effet. Attention, ne tapez pas
<BR> -d -d -d...... sinon les informations détaillées apparaîtront
<BR> autant de fois qu'il y a de 'd' sur la ligne de commande.
<BR>
<BR> -h Option pratique pour afficher une rapide
<BR> référence des options de nmap. Comme vous pouvez le
<BR> remarquer ce fichier man n'est pas une 'référence rapide' <IMG SRC="images/smiles/icon_smile.gif">
<BR>
<BR> -oN <fichierdelog>
<BR> Ceci crée un log du résultat et l'inscrit dans un
<BR> fichier lisible humainement.
<BR>
<BR> -oM <fichierdelog>
<BR> Ceci crée un log du résultat dans un fichier, spécifié en
<BR> argument, au format utilisable par un ordinateur.
<BR> Vous pouvez mettre l'argument '-' (sans les guillemets) pour
<BR> envoyer le résultat vers stdout (pour une utilisation avec
<BR> des pipes sous shell, etc). Dans ce cas l'affichage normal
<BR> sera supprimé. Faites tout de même attention aux messages
<BR> d'erreurs si vous utilisez cela (ils seront toujours envoyés
<BR> sur stderr).
<BR>
<BR> -oS <fichierdelog>
<BR> C3c1 l0G l3 R3suLt4 2oUs uN f0Rm4t à L4 scr1p|
<BR> kiDd|3 d4n2 uN fiCh1e5 9ue v0u2 spEc1f1e2 eN
<BR> 4r9umEn|! v0U2 P0uVeZ util12er l'4rgum2n| '-'
<BR> (Z4nZ leZ gu1lleme7s) pouR tou| eNV0y2r sUr stDouT!@!!
<BR>
<BR> -iL <nomdufichierentrant>
<BR> Récupère la spécification des cibles dans un fichier plutôt
<BR> que dans la ligne de commande. Ce fichier doit contenir
<BR> une liste d'expressions d'hôtes ou réseaux séparés par
<BR> des espaces, tabulations, ou encore des retours chariots.
<BR> Utilisez le signe '-' comme 'nomdufichierentrant' si
<BR> vous souhaitez que nmap lise les spécifications
<BR> sur stdin (comme à la fin d'un 'pipe'). Voir la section
<BR> Expression de cible pour plus
<BR> d'informations sur les expressions à utiliser dans ce
<BR> fichier.
<BR>
<BR> -iR
<BR> Cette option dit à nmap de générer son propre fichier
<BR> d'hôtes à scanner, par simple utilisation de nombres
<BR> aléatoires <IMG SRC="images/smiles/icon_smile.gif">. Cela n'arrètera jamais. Cette option peut
<BR> être utile pour faire des statistiques sur divers sujets.
<BR> Si vous vous ennuyez réellement essayez d'utiliser:
<BR> nmap -sS -iR -p 80
<BR> pour trouver des serveur web.
<BR>
<BR> -p <port champ>
<BR> Cette option spécifie quels ports doivent être scannés.
<BR> Par exemple '-p 23' n'essayera que le port 23 sur la
<BR> machine cible. Le défaut est de scanner tout les ports
<BR> entre 1 et 1024 et tous ceux présents dans le fichier
<BR> 'services' livré avec nmap.
<BR>
<BR> -F Méthode de scan rapide.
<BR> Spécifie que vous ne voulez scanner que les ports
<BR> listés dans le fichier 'services' fournis avec nmap. C'est de
<BR> toute manière bien plus rapide que de scanner les 65535 ports
<BR> cibles.
<BR>
<BR> -D <decoy1 [,decoy2][,ME],...>
<BR> Effectue un scan avec leurres (decoy), ce qui permet de faire
<BR> croire à l'hôte cible que les IP que vous spécifiez en
<BR> tant que 'decoy' sont aussi en train de le scanner.
<BR> De cette manière, les IDS détecteront quelques fois 5-10
<BR> ports scan provenant de la même source, et seront
<BR> incapables de dire qui à réellement effectué le scan et quel
<BR> sont les leurres envoyés. Tandis que cette technique ne
<BR> fonctionne pas avec des routeurs traçant la route, ou encore
<BR> des mécanismes dits 'actifs', cette technique est très puissante
<BR> pour cacher son IP.
<BR>
<BR> Séparez chaque leurre (decoy) avec des virgules, vous
<BR> pouvez optionnellement utiliser 'ME' en tant que leurre pour
<BR> spécifier à quelle position vous souhaitez que votre IP soit
<BR> utilisée. Si vous placez le 'ME' en sixième position ou plus
<BR> tard, de nombreux détecteurs de port-scan (tels que l'excellent
<BR> Solar Designer's scanlogd) seront incapables de montrer
<BR> votre IP. Si vous n'utilisez pas le 'ME', nmap le positionnera
<BR> aléatoirement.
<BR>
<BR> Il faut noter que les hôtes que vous utilisez en tant que
<BR> leurres doivent être présents si vous ne voulez pas
<BR> créer une inondation SYN sur votre cible. De plus, il sera
<BR> plus aisé de repérer qui est en train de scanner s'il ne
<BR> se trouve qu'un seul hôte présent sur le réseau. Vous
<BR> pouvez utiliser des IP plutôt que des noms (si vous ne
<BR> souhaitez que votre IP n'apparaisse dans le fichier de
<BR> log du serveur DNS de vos leurres).
<BR>
<BR> Il faut aussi noter que certains "détecteurs de port scan"
<BR> (stupides) refusent le routage avec des hôtes qui
<BR> essayent de les scanner. De cette manière vous pouvez causer
<BR> sur cette machine le refus de dialoguer avec les hôtes que
<BR> vous spécifiez en tant que leurres. Cela peut poser des
<BR> problèmes majeurs si vous spécifiez une machine du réseau
<BR> leur passerelle internet, ou encore le "localhost".
<BR> De cette manière il faut faire attention avec cette option.
<BR> La réelle morale de cette histoire est que les détecteurs
<BR> de scan ne devraient pas prendre d'action lorsqu'ils
<BR> détectent quelque chose car cela pourrait très bien être un
<BR> leurre!
<BR>
<BR> Le scan avec leurres peut être utilisé à la fois avec
<BR> le ping scan (utilisant ICMP, SYN, ACK, ou n'importe quoi)
<BR> et aussi durant la phase de port scan. Les leurres peuvent
<BR> aussi être utilisés durant l'authentification d'OS ( -O ).
<BR>
<BR> Il est inutile et même c'est une peine perdue d'utiliser trop de
<BR> leurres cela ne sert à rien et pourra rendre les réponses
<BR> moins justes. A l'heure actuelle uniquement quelques FAIs filtrent les
<BR> paquets spooffés.
<BR>
<BR> -S <AdressesIP>
<BR> Dans certain cas, nmap sera incapable de trouver
<BR> votre adresse IP source (il vous le dira si c'est le cas).
<BR> Si cela vous arrive, utilisez -S avec votre adresse IP
<BR> (l'interface sur laquelle vous voulez envoyer les paquets).
<BR>
<BR> Une autre utilité de cette option est de faire un spoofed
<BR> scan pour faire croire à la cible que quelqu'un d'autre est en train
<BR> de la scanner. Imaginez une entreprise se faisant souvant
<BR> scanner par un concurant! Je ne l'ai pas créé dans ce but,
<BR> mais plutôt pour montrer le résultat et les problèmes que
<BR> cela pouvait causer. -e sera généralement nécessaire
<BR> dans avec ce type d'usage.
<BR>
<BR> -e <interface>
<BR> Spécifie à nmap l'interface sur laquelle les paquets
<BR> doivent êtres envoyés. Nmap devrait être capable de
<BR> détecter l'interface à utiliser, mais au cas ou il n'y arriverait pas,
<BR> il vous le dira.
<BR>
<BR> -g <portsource>
<BR> Fixe le port source utilisé dans les scan.
<BR> De nombreuses installations de firewall et filtreurs de
<BR> paquets feront une exception dans leurs règles aux paquets
<BR> DNS (53) ou encore FTP-DATA (20) qui entreront pour
<BR> effectuer une connexion. Naturellement pour un scan UDP
<BR> il faudra mieux utiliser le port 53 et pour un scan TCP,
<BR> le port 20 avant le 53. Il faut noter que ceci n'est qu'une
<BR> requête et que nmap ne l'utilisera uniquement que si cela
<BR> est possible.
<BR> Par exemple, vous ne pouvez pas faire d'échantillonage TCP ISN
<BR> d'un hôte:port vers un hôte:port, car nmap change le port source
<BR> même si vous utilisez l'option -g.
<BR>
<BR> Il faut aussi savoir qu'il y a des inconvénients à utiliser
<BR> cette option sur certains scan car nmap place des informations
<BR> utiles dans les ports sources.
<BR>
<BR>
<BR> -r Demande à nmap de ne PAS placer les ports scannés
<BR> dans un ordre aléatoire.
<BR>
<BR> --randomize_hosts
<BR> Demande à nmap de mélanger l'ordre de 2048 hôtes
<BR> avant de les scanner. Ceci peut rendre le scan plus discret
<BR> pour des moniteurs réseau, spécialement si vous utilisez
<BR> des techniques de minuterie lente (voir ci-dessous).
<BR>
<BR> -M <max sockets>
<BR> Spécifie le nombre maximum de sockets qui seront utilisées
<BR> en parallèle pour un scan avec le TCP connect() (celui
<BR> par défaut). Ceci est utile pour ralentir un petit peu
<BR> le scan et pour ne pas crasher la cible. Une autre solution
<BR> est d'utiliser le -sS, car il est généralement plus facile
<BR> à gérer pour les machines.
<BR>
<BR> OPTIONS DE MINUTERIE
<BR> En général nmap se débrouille pas mal du tout pour
<BR> s'ajuster aux caractéristiques du réseau en le scannant
<BR> pour pouvoir aller le plus vite possible tout en minimisant
<BR> les chances de ne pas détecter des hôtes/ports. Seulement,
<BR> certaines fois, la politique de chronométrage de nmap, ne
<BR> représente pas les objectifs voulu. Les options suivantes
<BR> permettent de contrôler totalement ce temp:
<BR>
<BR> -T <Paranoid|Sneaky|Polite|Normal|Aggressive|Insane>
<BR> Le mode Paranoid scan très lentement dans
<BR> l'espoir d'éviter les IDS et détecteurs de scan.
<BR> Il fait les scans en série (et non pas en parallèle) et
<BR> attend au moins 5 minutes entre chaque paquet. Sneaky est
<BR> similaire, il attend seulement 15 secondes entre chaque.
<BR> Polite est conçu pour ne pas surcharger le réseau
<BR> et crasher les machines. Il fait les scans en série et
<BR> attend au moins 0.4 secondes entre chaque
<BR> paquets. Normal est l'attitude normale de nmap,
<BR> en ce sens qu'il essaie de fonctionner le plus vite
<BR> possible sans pour autant perdre en précision dans
<BR> les résultats. Les mode Agressive ajoute
<BR> 5 minutes de timeout par hôte et n'attend pas plus
<BR> de 1.25 seconde pour les réponses des requêtes.
<BR> Insane n'est convenable que pour des réseaux très
<BR> rapides ou s'il ne vous importe pas de perdre
<BR> des informations. Il met un timout pour les hôtes
<BR> de 75 secondes et attend seulement 0.3 secondes pour
<BR> les requêtes individuelles. Il permet de scanner
<BR> des réseaux très rapidement <IMG SRC="images/smiles/icon_smile.gif">. Vous pouvez aussi faire
<BR> vos spécifications avec des nombres (0-5). Par exemple,
<BR> '-T 0' vous donne le mode paranoïd et '-T 5' Insane.
<BR>
<BR> Ces types de scan ne doivent pas être utilisés en
<BR> combinaison avec les contrôles ayant un niveau inférieur
<BR> situés ci-dessous.
<BR>
<BR> --host_timeout <millisecondes>
<BR> Spécifie le total de temps que doit passer Nmap à scanner
<BR> un hôte avant de laisser tomber avec celui-ci. Le mode
<BR> de minuterie par défaut n'utilise pas cette option.
<BR>
<BR> --max_rtt_timeout <millisecondes>
<BR> Spécifie le temps maximum que Nmap est autorisé pour
<BR> attendre les réponses aux requêtes ou retransmettre
<BR> cette requêtes particulière. Le mode par défaut est
<BR> 9000.
<BR>
<BR> --min_rtt_timeout <millisecondes>
<BR> Quand l'hôte cible commence à envoyer quelques réponses
<BR> au requêtes précédentes très rapidement, Nmap ajustera
<BR> le temps total pour chaque requête. Ceci accélère
<BR> le scan, mais peut laisser de côté des réponses un peu
<BR> trop lentes à arriver. Avec ce paramètre vous pouvez être
<BR> garantit que nmap attendra au moins le minimum de temps
<BR> possible pour une requête.
<BR>
<BR> --initial_rtt_timeout <millisecondes>
<BR> Spécifie le time-out pour la requête initiale. Ceci est
<BR> généralement utile quand l'on scanne des réseaux
<BR> protégés par un firewall en utilisant l'option '-P0'.
<BR> Normalement Nmap peut obtenir une bonne estimation de RTT
<BR> grâce au ping et les première requêtes. Le mode par défaut
<BR> utilise 6000.
<BR>
<BR> --max_parallelism <nombre>
<BR> Spécifie quel est le nombre maximum de scan que Nmap est
<BR> autorisé à effectuer en parallèle. En mettant ceci à 1 nmap ne
<BR> scannera pas plus d'un port à la fois. Il affecte aussi
<BR> d'autre types de scan en parallèles tel que le ping sweep,
<BR> RCP scan, etc...
<BR>
<BR> --scan_delay <milliseconds>
<BR> Spécifie le temps minimum à nmap pour attendre
<BR> chaque requête. Ceci est utile pour limiter la
<BR> charge du réseau ou pour ralentir le scan en ayant
<BR> pour but d'être moins facilement repéré.
<BR>
<BR>SPECIFICATION DE CIBLE
<BR> Tout ce qui n'est pas une option (ou un argument d'option)
<BR> dans nmap est traité comme une spécification de cible.
<BR> Le cas le plus simple est d'être à l'écoute de simples noms
<BR> d'hôtes ou adresses IP sur la ligne de commande. Si vous
<BR> souhaitez scanner un réseau, vous devriez utiliser
<BR> '/mask' en l'ajoutant au nom d'hôte ou à l'adresse IP.
<BR> Mask doit être entre 0 (scan tout l'Internet)
<BR> et 32 (scan un simple ordinateur). Utilisez /24 pour scanner
<BR> un réseau de class 'C' et /16 pour un de class 'B'.
<BR>
<BR> Nmap a aussi une technique de notation puissante qui vous
<BR> permet de spécifier les adresses IP en utilisant pour
<BR> chaque élément des listes/champs. De cette manière vous pouvez
<BR> décrire un réseau de class 'B' 128.210.0.0 en spécifiant
<BR> '128.210.*.*' ou '128.210.0-255.0-255' ou encore
<BR> '128.210.1-50,51-255.1,2,3,4,5-255'. Et bien sûr, vous
<BR> pouvez utiliser la notation suivante avec mask: '128.210.0.0/16'.
<BR> Ils sont tous équivalent. Si vous utilisez des astérisques
<BR> ('*'), il faut juste se souvenir que de nombreux shells
<BR> ont besoins de guillemets et de séquences d'échapements.
<BR> Une autre chose intéressante est de diviser l'internet
<BR> d'une manière différente: Au lieu de scanner les hôtes d'une
<BR> classe 'B', une spécification du type '*.*.5.6-7' effectuera
<BR> un scan sur toute les IP se terminant par .5.6 ou .5.7,
<BR> choisissez vos propres numéros. Pour plus d'informations,
<BR> sur les spécifications à utiliser pour scanner des hôtes,
<BR> il faudra se reporter à la section des exemples.
<BR>
<BR>EXAMPLES
<BR> Vous trouverez ici quelques exemples d'utilisation de
<BR> nmap, en partant des plus simples en passant par les
<BR> normaux et en terminant par les plus complexes et ésotériques.
<BR> Il faut noter que certains numéros et domaines ont été
<BR> choisis pour rendre cela plus concret. Dans ces parties
<BR> vous devez remplacer les noms/adresses par VOS
<BR> PROPRES PARAMETRES RESEAU. Je ne
<BR> pense pas que faire des scannage de ports d'autres réseaux est
<BR> illégal et qu'ils doivent être forcément interprétés comme
<BR> des attaque. J'ai scanné des centaines de milliers de
<BR> machines et reçu uniquement une seule plainte.
<BR> Mais je ne suis pas juge et certaines personnes
<BR> (trou du $%#&!) peuvent être ennuyées par les requêtes de
<BR> nmap. Demandez premièrement l'autorisation
<BR> ou utilisez-le à vos propres risques.
<BR>
<BR> nmap -v example.cible.com
<BR>
<BR> Cette option scan tous les ports TCP sur la machine
<BR> example.cible.com. Le -v signifie mode 'verbose', c'est
<BR> à dire: bavard, détaillé.
<BR>
<BR> nmap -sS -O example.cible.com/24
<BR>
<BR> Lance un SYN scan sur le réseau de classe 'C' ou
<BR> exemple.cible.com réside. Il essaie aussi de récupérer
<BR> l'identification du système sur chacuns des hôtes qu'il
<BR> trouve grâce au TCP fingerprinting. Ceci nécessite les
<BR> droits root du fait du SYN scan et de l'identification
<BR> de l'OS.
<BR>
<BR> nmap -sX -p 22,53,110,143,4564 128.210.*.1-127
<BR>
<BR> Envoie un scan de type Xmas sur la première moitié des
<BR> 255 possibilités dans le réseau de class 'B' 128.210.
<BR> Nous testons si le système possède sshd, DNS, pop3, imapd,
<BR> ou le port 4564. Il est bon de savoir que Xmas ne fonctionne
<BR> pas contre les machines de type windows du faite d'une
<BR> malformation dans leur pile TCP. Même chose pour CISCO,
<BR> IRIX, HP/UX, et BSDI.
<BR>
<BR> nmap -v --randomize_hosts -p 80 '*.*.2.3-5'
<BR> Au lieu de se focaliser sur une class IP, il est
<BR> parfois intéressant de découper l'internet en plusieurs
<BR> partie que l'on scanne en tranches. Cette commande trouve
<BR> tous les serveurs webs sur les machines dont l'IP se
<BR> termine par .2.3, .2.4 ou .2.5. Si vous êtes root, vous
<BR> devrez ajouter -sS. De même vous trouverez des machines
<BR> plus intéressantes en commençant par 127.
<BR>
<BR> Donc vous pourriez utiliser '127-222' à la place des astérisques
<BR> car cette section possède un plus grand nombre de
<BR> machines intéressantes.
<BR>
<BR> host -l company.com | cut '-d ' -f 4 | ./nmap -v -iL -
<BR>
<BR> Effectue un transfert de zone pour trouver les hôtes de
<BR> 'company.com', envoie le résultat à nmap. Les commandes
<BR> ci-dessus sont pour mon GNU/Linux. Vous pouvez avoir différentes
<BR> commandes sur votre OS.
<BR>
<BR>BUGS
<BR> Des Bugs? Quels bugs? Envoyez moi ce que vous trouvez.
<BR> Les patches sont sympas aussi <IMG SRC="images/smiles/icon_smile.gif"> N'oubliez pas d'envoyer
<BR> les nouveaux fingerprints pour grossir la base de donnée.
<BR> Nmap vous donnera une URL de soumission dans le cas d'un
<BR> fingerprint approprié trouvé.
<BR>
<BR>AUTEUR
<BR> Fyodor <fyodor@insecure.org>
<BR>
<BR>TRADUCTEUR
<BR> Hertz <hertz@webmails.com>
<BR> Texte traduit le 18 Avril 2000.
<BR> Merci à <blured@linuxmail.org>
<BR> et <Guilux> pour leur aide à la correction.
<BR>
<BR>NOTE DU TRADUCTEUR
<BR> Cette traduction, n'est en aucun cas la meilleure
<BR> traduction qui puisse être de ce texte. Si vous
<BR> trouvez des erreurs, fautes... veuillez me contacter
<BR> pour que je puisse mettre à jour le document et
<BR> que tout le monde puisse profiter de ces correctifs.
<BR> En ce qui concerne le chapitre 'DISTRIBUTION', je
<BR> dois en aucun cas être tenu responsable d'une mauvaise
<BR> interprétation du texte. Si vous êtes intéressé par
<BR> celui-ci alors veuillez consulter le document en Anglais.
<BR>
<BR>DISTRIBUTION
<BR> Toute nouvelle version de Nmap peut être trouvée sur
<BR>
http://www.insecure.org/nmap/
<BR>
<BR> nmap est un Copyright(C) 1997,1998,1999 de Fyodor
<BR> (
fyodor@insecure.org, <!-- BBcode auto-mailto start --><a href="mailto:fyodor@insecure.org)">fyodor@insecure.org)</a><!-- BBCode auto-mailto end -->
<BR>
<BR> libpcap est aussi distribué avec nmap.
<BR> Il est sous le copyright de Van Jacobson, Craig Leres et
<BR> Steven McCanne chacuns faisant partie du Lawrence Berkeley
<BR> National Laboratory, Université de Californie, Berkeley, CA.
<BR> La version distribuée avec nmap peut être légèrement modifiée,
<BR> vous pouvez récupérer les source sur :
<BR>
ftp://ftp.ee.lbl.gov/libpcap.tar.Z .
<BR>
<BR> Ce programme est gratuit; vous pouvez le redistribuer et/ou
<BR> modifier selon les termes de la 'GNU General Public License'
<BR> telle qu'elle est publiée par la 'Free Software Foundation';
<BR> Version 2. Cela vous donne le droit à l'utilisation ainsi
<BR> qu'a la modification, mais la demande de license est
<BR> inacceptable, Insecure.Org peut vouloir vendre des licenses
<BR> alternatives (contactez <!-- BBcode auto-mailto start --><a href="mailto:fyodor@insecure.org).">fyodor@insecure.org).</a><!-- BBCode auto-mailto end -->
<BR>
<BR> Les sources sont fournies avec ce logiciel car nous
<BR> sommes persuadés que l'utilisateur à le droit de savoir
<BR> ce que va faire son programme avant même son exécution.
<BR> Cela vous permet de la même manière de faire un audit
<BR> sur le logiciel, à la recherche de failles de sécurité
<BR> (aucune n'a encore à ce jour été trouvée).
<BR>
<BR> Le code source vous permet aussi de porter nmap sur
<BR> de nouvelles plateformes, de corriger les bugs, ou
<BR> encore d'ajouter de nouvelles fonctionnalités. Vous
<BR> êtes fortement encouragés à envoyer vos modification
<BR> à Fyodor, pour pouvoir les incorporer à la distribution
<BR> de Nmap. Par l'envoi de ces changements à Fyodor, ou
<BR> nmap-hackers, il faut assumer que vous lui offrez le code
<BR> et qu'il pourra être sans exclusivité, réutilisé, modifié,
<BR> et licensé. Si vous voulez spécifier un type de license
<BR> particulier, vous pouvez l'indiquer tout en haut de votre
<BR> code source.
<BR>
<BR> Ce programme est distribué dans l'espoir qu'il sera utile,
<BR> mais il est fournit SANS AUCUNE GARANTIE;
<BR> sans même la garantie implicite d'être COMMERCIALISABLE ou
<BR> même de pouvoir CONVENIR A UNE
<BR> APPLICATION PARTICULIERE. Consulter la
<BR> 'GNU Public License' pour plus de détails (elle se trouve dans
<BR> le fichier COPYING de la distribution de Nmap.
<BR>
<BR> Il est aussi nécessaire de savoir que Nmap à été connu
<BR> pour crasher certaine applications mal programmées,
<BR> piles TCP/IP, et même des OS. Nmap ne devrait jamais
<BR> être lancé contre des serveurs à haut risque sauf si
<BR> vous êtes prêt à ce qu'il souffre d'indisponibilité.
<BR> Nous approuvons le fait que nmap peut crasher des systèmes
<BR> ou réseaux et nous déclinons toute responsabilité sur les
<BR> dommages ou problèmes que Nmap peut causer.
<BR>
<BR> Toutes les versions de Nmap supérieures ou égales à 2.0
<BR> sont connues pour être compatibles AN 2000 (Y2K). Cela
<BR> à été dit, mais Nmap n'est fournit avec aucune garantie.
<BR> Il n'y a pas de raison que les versions précédentes à la
<BR> 2.0 soient sujettes à des problèmes, mais nous n'avons
<BR> jamais testé.
<BR>
<BR>
<BR>voila en esperant que cela ne soit pas trop long <IMG SRC="images/smiles/icon_razz.gif"> <BR><BR><font size=-2></font>