Nessus: introduction

Forum sur la sécurité des réseaux, la configuration des firewalls, la mise en place de protections contre les attaques, de DMZ, de systèmes anti-intrusion ...

Modérateur: modos Ixus

Messagepar BioNerve » 19 Juil 2002 03:14

<BR>Hello ! <BR> <BR>Dans le cadre d'un cours de sécurité, j'ai dû établir une documentation sur l'utilisation de Nessus. Elle dont toute en français, et je me suis dit qu'elle pourrait peut-être s'avérer utile pour d'éventuels interressés... <BR> <BR>.Bio <BR> <BR><!-- BBCode u2 Start --><A HREF="http://www.nxtg.net/security/docs/tutoriels/nessus01/index.html" TARGET="_blank">Introduction à Nessus</A><!-- BBCode u2 End --> <BR>
Avatar de l’utilisateur
BioNerve
Matelot
Matelot
 
Messages: 6
Inscrit le: 18 Juil 2002 00:00

Messagepar OXO90 » 19 Juil 2002 08:35

Simple et efficace. <BR> <BR>A quand la même chose pour nmap
"Passe Le Fun Autour De Toi ..."
Avatar de l’utilisateur
OXO90
Capitaine de vaisseau
Capitaine de vaisseau
 
Messages: 305
Inscrit le: 29 Déc 2001 01:00
Localisation: Strasbourg

Messagepar BioNerve » 19 Juil 2002 10:39

<BR>Hello OXO90, <BR> <BR>Et bien... en fait j'attends un peu les avis 'externes'. C'est la première fois que je publie un document, je suis donc un peu 'stressé' quant aux éventuelles critiques que je vais recevoir. Se faire bien noter en cours ce n'est pas trop dur, mais il me semble que la scène au niveau de la sécurité est relativement plus sévère en termes de qualité. <BR> <BR>J'ai par contre bien apprécié l'exercice de faire une documentation sur un outil. Si celui-ci passe, il est clair que je continuerai... <BR> <BR>A plus! <BR> <BR>.Bio <BR> <BR> <BR>
Avatar de l’utilisateur
BioNerve
Matelot
Matelot
 
Messages: 6
Inscrit le: 18 Juil 2002 00:00

Messagepar drlin » 19 Juil 2002 11:49

n'hésite par à publier ta doc.... on essayera d'être sympas... <IMG SRC="images/smiles/icon_razz.gif"> <BR> <BR>les critiques c'est toujours positif, ca permet de rendre ta doc meilleur.... c'est quand il n'y a pas de retour qu'il faut s'inquieter...
A+

Dr Lin (aka Johan Denoyer)
Avatar de l’utilisateur
drlin
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 211
Inscrit le: 24 Jan 2002 01:00
Localisation: FRANCE

Messagepar lucky » 18 Août 2002 20:07

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>
Avatar de l’utilisateur
lucky
Second Maître
Second Maître
 
Messages: 30
Inscrit le: 29 Avr 2002 00:00

Messagepar didier » 18 Août 2002 23:02

Et <BIG>BOOM</BIG>! plus de base! <IMG SRC="images/smiles/icon_lol.gif"> <BR> <BR>Faut éviter quand même; demande plutot à Bruno de le mettre en article. <BR> <BR>Pasque là la page met du temps à charger sur les petites connections.
-+ Entendu dans les couloirs... +-<br>/kickban reason: stack overflow in garbage collector
Avatar de l’utilisateur
didier
Capitaine de vaisseau
Capitaine de vaisseau
 
Messages: 307
Inscrit le: 18 Sep 2001 00:00
Localisation: montrouge(paris)

Messagepar black_plague » 03 Sep 2002 15:43

Merci pour les 2 tutos bien réalisés et clair ! <BR>Je connaissait déjà mais il est vrai que de nombreuses personnes recherche des docs en fr. <BR>Qui se sent pour snort et l'écriture de ses règles undefined
"Ce que nous vendons à Coca-Cola, c’est du temps de cerveau humain disponible" M.Le Lay - PDG de TF1
Avatar de l’utilisateur
black_plague
Major
Major
 
Messages: 99
Inscrit le: 03 Sep 2002 00:00

Messagepar tetack » 03 Sep 2002 23:17

tiens nessus !! <BR>sympa !
L'univers et la $%#&! humaine sont infini ... quoique pour l'univers je ne suis pas sur ! " <br>Albert Einstein
Avatar de l’utilisateur
tetack
Capitaine de vaisseau
Capitaine de vaisseau
 
Messages: 275
Inscrit le: 26 Fév 2002 01:00
Localisation: Paris


Retour vers Sécurité et réseaux

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité

cron