Utilisation de Nmap et outil de detection des scans de ports


searchtool
Cet article décrit le fonctionnement principal de la commande nmap sous linux et les solutions existantes permettant la détection de ce genre d'action.

Avant de commencer, je tiens à rappeler qu'un balayage de ports effectué sur un système tiers est considéré comme une tentative d'intrusion et est donc considéré comme illégal.

En revanche, vous pouvez parfaitement scanner votre propre réseau, afin de verifier si ce dernier est sécurisé.

1. Installation de Nmap

Pour installer Nmap sur une distribution à base de Debian, ouvrez un terminal et lancez la commande suivante :

sudo apt-get install nmap

Ou celle-ci pour une distribution à base de RPM :

sudo yum install nmap

2. Utilisation principal de nmap

Voir tous les ports TCP ouverts sur une machine, utilisation de messages SYN, donc pas de log sur la machine cible :

nmap -sS 127.0.0.1

La même chose mais avec l'option -F (fast scan) et -n (sans résolution DNS) :

nmap -F -n -sS 127.0.0.1

Voir tous les ports UDP ouverts sur une machine :

nmap -sU 127.0.0.1

Voir si une machine est sur le réseau (scan Ping) :

nmap -sP 127.0.0.1

Scanner une plage d'adresses. Ici toutes les adresses de 192.168.0 à 192.168.255 :

nmap 192.168.0-255

Connaitre le système d'exploitation de la machine (TCP/IP fingerprint) :

nmap -O 127.0.0.1

Si nmap n'arrive pas à determiner la version, on pourra lui demander de nous donner une liste des systèmes qui pourraient potentiellement correspondre :

nmap -O --osscan-guess 127.0.0.1

Scanner un port précis. Ici, c'est le port http :

nmap -p 80 127.0.0.1

Scanner une plage de ports. Ici on scan du port 0 au 80 et tous ceux supérieurs à 60000 ) :

nmap -p 0-80,60000 127.0.0.1

Scanner des serveurs web au hasard sur le réseau :

nmap -v -sS -iR 0 -p 80

Désactiver la résolution DNS inverse des hôtes, augmente la rapidité :

nmap -n 127.0.0.1

Scan par rebon ftp, permet de demander à un serveur FTP de scanner les ports à votre place (envoie des fichiers pour tester les ports ouverts). Cette fonctionnalité est souvent désactivée des serveurs FTP afin d'éviter les abus. Ici on passe par le serveur ftp qui a pour adresse 127.0.0.1 pour scanner une plage d'adresses ip :

nmap -b 127.0.0.1 192.168.0,.0-255

Usurper l'adresse ip source. Ici on scan 127.0.0.1, par l'interface réseau eth0, en se faisant passer pour 10.0.0.0 depuis le port 80 :

nmap -S 10.0.0.0 -g 80 -e eth0 -P0 127.0.0.1

Usurper l'adresse MAC :

nmap --spoof-mac 01:02:03:04:05:06 127.0.0.1
nmap --spoof-mac Cisco 127.0.0.1

Choisir un fichier de sortie pour y ecrire les résultats du scan :

nmap -oN resultat 127.0.0.1
nmap -oX resultat.xml 127.0.0.1

Trace les paquets et les données envoyés et reçus. Pratique pour verifier qu'une usurpation fonctionne :

nmap --packet-trace -S 10.0.0.0 -eth0 127.0.0.1

3. Solution

Enpêcher le balayage des ports d'une machine reste assez difficile en soi. En effet, même en rajoutant des règles à iptables, les techniques de scan étant tellement diverses, cela ne sera ne fonctionnera pas à 100%.

En revanche, on peut très bien utiliser des outils spécialisés dans la détection de ces derniers comme scnalogd par exemple.

Pour s'en servir, nous allons devoir récupérer les sources sur le site officel et lancer les commandes suivantes :

cd /usr/local/src/
tar zxvf scanlogd-*.tar.gz
rm -f scanlogd-*.tar.gz
cd scanlogd-*/
make linux
adduser scanlogd

On pourra ensuite le lancer manuellement, via la commande scanlogd. Toutes les tentatives de scan sur la machine seront alors visibles dans le fichier /var/log/messages :

# tailf /var/log/messages | grep scanlogd
Dec 3 17:54:43 localhost scanlogd: 192.168.0.188 to 192.168.0.175 ports 80, 554, 256, 21, 22, 23, ..., TOS 00, TTL 64 @18:54:43


7 Commentaires pour "Utilisation de Nmap et outil de detection des scans de ports"

Flux des commentaires de cet article Ajouter un commentaire
  •  

    Très bon article.

    Juste un lien vers mon blog pour le compléter (en anglais, désolé) :
    http://www.phocean.net

    Ça parle de SinFP qui est une alternative pour détecter l'OS quand Nmap échoue.

    RépondreRépondre
    JCB , le 1 février 2007 à 12:53
  •  

    Salut,

    merci pour cet article très intéressant.

    RépondreRépondre
    mikonox , le 2 avril 2008 à 10:17
  •  

    Très bon tutoriel merci et comme ça on peut se protéger un peu mieux.

    RépondreRépondre
    arioke , le 5 mars 2009 à 20:53
  •  

    Bonjour,

    c'est très bien fait ça m'a bcp aidé, merci
    ça serai mieux d'ajouter l'installation de nmap!!

    RépondreRépondre
    Maha , le 2 mai 2012 à 02:29
  •  

    @Maha : c'est ajouté.

    RépondreRépondre
    pti-seb , le 2 mai 2012 à 08:11
  •  

    c cool et pratique merci du fond du cœur...........

    RépondreRépondre
    hacker , le 27 juin 2012 à 01:09
  •  

    merci pour ce tuto. mais quel est la commande pour scanner un site web et voir les ports ouverts et fermés. merci !!!!

    RépondreRépondre
    best.hacker7 , le 2 avril 2014 à 10:42
 

Ajouter un commentaire

actualité android apache apple astuce astuces bash bilboblog blog boot chrome clavier commande commandes conky date debian Desktop développement elementary exploit faille fedora firefox flash gimp gnome google graphique Graphisme hack hacking Hardware humour intel internet iphone jailbreak Jeux Kde kernel libre Linux log logiciels Logiciels Libres lucid lynx maemo mail maquette metasploit microsoft mobile mockup monitoring mozilla multi-touch musique mysql n900 nautilus nokia noyau openoffice open source password photos php Planet publicité red hat redhat rpm réseau screenshot script serveur serveurs shell sql ssh statistiques sysadmin system Sécurité thème tux-planet tv twitter ubuntu unity vidéo vidéos vlc voyage wallpaper windows wordpress yum