Assiste.com - Sécurité informatique - Vie privée sur le Web - Neutralité d'Internet

cr  01.04.2012      r+  01.06.2024      r-  15.07.2024      Pierre Pinard.         (Alertes et avis de sécurité au jour le jour)

Les scanners de ports sont des outils logiciels automatiques (des robots) analysant les ports (portes) de communication derrière une adresse IP (un ordinateur) afin de déterminer quels sont les ports ouverts ou fermés. Lorsqu'un port de communication est ouvert, c'est que quelque chose (une fonction, un service) le maintien ouvert.

Il y a trois usages des scanners de ports (suivis éventuellement de l'identification du service derrière un port ouvert puis de scanners de failles avec des outils intégrés et gratuits comme Nessus ou Nmap (outils qui connaissent l'identification de tous les services connus, la détection de toutes les failles connues et l'application de tous les correctifs connus, mis à jour au jour le jour) :

  1. En SSI (Sécurité des Systèmes d'Information), les scanners de ports sont utilisés par des administrateurs de réseaux, de manière préventive, afin de détecter les failles et appliquer les correctifs ou les procédures de contournement.
  2. En hacking, les mêmes scanners de ports sont entre les mains de pirates et cybercriminels qui vont les utiliser presque de la même manière, à cette différence qu'une fois les failles découvertes, ils vont s'appliquer à les exploiter. Les scanners de ports ne conduisent pas une attaque en eux-mêmes, ils la précèdent (avec, éventuellement, l'usage d'un backdoor).
  3. Test des pare-feu (par exemple avec le célèbre scanner de ports du service gratuit en ligne Shields-Up, de GRC).

Fonctionnement d'un scanner de ports

Un ordinateur non connecté à l'Internet n'est jamais (ne peut pas être) la cible d'un scanner de ports.

Lorsqu'un ordinateur est connecté à l'Internet, il est identifié sur le réseau par une adresse unique, appelée adresse IP (Internet Protocol).

Dans son principe général, le fonctionnement est simple : un scanner de ports va scanner (tester, interroger) un intervalle de ports (ou une liste de ports), sur chaque machine trouvée dans un intervalle d'adresse IPs (on parle donc, parfois, de scanner d'IPs).

Exemple :
Rechercher les ports ouverts (donc les appareils connectés) entre les ports 35000 et 35100 dans l'intervalle d'adresse IPs 128.208.78.000 à 128.208.78.255.

Il existe 65.536 ports par machines Windows et 274.941.996.890.625 adresses IPs possibles en IPv4.

Les ports de communications des ordinateurs sous Windows sont tous ouverts par défaut (mais il n'y a pas forcément un service à l'écoute derrière, faillible en plus), raison pour laquelle un pare-feu est obligatoire, ne serait-ce que le pare-feu Windows !). Sans pare-feu, vous avez 4 minutes pour survivre.

Vous pouvez d'ailleurs tester l'état de vos ports avec le célèbre service gratuit en ligne Shields-Up, de GRC.

  • Adressage IPv4
    Les adresses IPs (adresse de votre ordinateur sur le réseau) vont, dans l'adressage IPv4, de 000.000.000.000 à 255.255.255.255 soit 2554, c'est-à-dire 4.228.250.625 adresses (et donc, autant d'appareils possibles connectés, y compris l'explosion, pas prévue à l'époque, des IoT - Internet of Things). L'adressage dit IPv4 fut mis en place à l'origine en pensant qu'avec plus de 4 milliards d'adresses possibles, on pourrait tenir l'adressage longtemps.
  • Adressage IPv6
    L'adressage IPv6 permet un nombre d'adresses de 2556, c'est-à-dire 274.941.996.890.625 adresses possibles, ce qui devrait nous laisser le temps de voir venir.

Les adresses IPs sont attribuées par intervalles entiers à des régions du monde (voir adresses IPs). On peut donc choisir des intervalles d'adresses IPs afin de lancer un scan de ports contre une région, une langue ou un pays, etc.

Dans l'intervalle d'adresses IPs choisi, le scan de ports commence par éviter de s'acharner à analyser les ports d'une machine qui n'est pas présente sur le réseau (adresse IP inutilisée ou machine éteinte).

  1. L'outil de scan de ports commence par envoyer un ping (paquet ICMP echo-request) - Faire un Ping) et attend la réponse à sa requête (paquet ICMP echo-reply).
  2. Une autre technique consiste, sur l'adresse IP, à contacter un port TCP (typiquement, le port 80 utilisé pour le service HTTP).

Dans les deux cas, s'il y a une réponse (« acquittement » signifiant que la connexion est acceptée, ou « reset » signifiant que la connexion est refusée - probable présence d'un pare-feu), c'est que la machine est présente et allumée - ses ports peuvent être scannés.

Les ports sont testés pour voir s'il y a, derrière :

La suite sera l'exploit.

Quelques exemples de Scanners de ports :