- Introduction à Nping ARP scan
- Types de scan ARP de Nping
- Découverte ARP de Nmap
- Conclusion
.
ARP (Address Resolution Protocol) est un protocole de bas niveau fonctionnant au niveau de la couche Link du modèle Internet ou de la suite de protocoles Internet qui a été expliqué lors de l’introduction aux bases de Nmap. Il existe 3 couches supérieures : la couche Internet, la couche Transport et la couche Application.
Source de l’image : https://linuxhint.com/nmap_basics_tutorial
Note : certains experts décrivent le modèle Internet avec 5 couches dont la couche physique alors que d’autres experts affirment que la couche physique n’appartient pas au modèle Internet, cette couche physique ne nous concerne pas pour le Nmap.
La couche de liaison est un protocole utilisé dans les réseaux locaux IPv4 pour découvrir les hôtes en ligne, il ne peut pas n’est pas utilisé sur internet et est limité aux appareils locaux, il est soit utilisé dans les réseaux IPv6 dans lesquels le protocole NDP (Neighbor Discovery) remplace le protocole ARP.
Lorsque vous utilisez Nmap sur un réseau local le protocole ARP est appliqué par défaut pour être plus rapide et plus fiable selon les données officielles , vous pouvez utiliser le flag -send-ip pour forcer Nmap à utiliser le protocole Internet au sein d’un réseau local, vous pouvez empêcher Nmap d’envoyer des ping ARP en utilisant l’option -disable-arp-ping également.
Nping ARP scan types
Les anciennes versions de Nmap étaient livrées avec une variété d’options pour effectuer des scans ARP, actuellement Nmap ne supporte pas ces drapeaux qui sont maintenant utilisables à travers l’outil Nping inclus dans Nmap, si vous avez Nmap installé vous avez déjà cet outil.
Nping permet de générer des paquets sous de nombreux protocoles, comme le décrit son site officiel il peut aussi être utilisé pour l’empoisonnement ARP, le déni de service et plus encore. Son site Web énumère les caractéristiques suivantes :
- Génération de paquets TCP, UDP, ICMP et ARP personnalisés.
- Support de la spécification de plusieurs hôtes cibles.
- Support de la spécification de plusieurs ports cibles.
- Modes non privilégiés pour les utilisateurs non root.
- Mode écho pour le dépannage et la découverte avancés.
- Prise en charge de la génération de trames Ethernet.
- Prise en charge d’IPv6 (actuellement expérimental).
- Fonctionne sur Linux, Mac OS et MS Windows.
- Capacités de traçage de route.
- Hautement personnalisable.
- Libre et open-source.
(Source https://nmap.org/nping/)
Protocoles pertinents pour ce tutoriel :
ARP : une demande régulière de paquet ARP recherche l’adresse MAC en utilisant l’adresse IP du périphérique. (https://tools.ietf.org/html/rfc6747)
RARP : une requête RARP (Reverse ARP) résout l’adresse IP en utilisant l’adresse MAC, ce protocole est obsolète. (https://tools.ietf.org/html/rfc1931)
DRARP : un protocole DRARP (Dynamic RARP), ou une extension de protocole développée pour attribuer une adresse IP dynamique basée sur l’adresse physique d’un périphérique, il peut être utilisé pour obtenir l’adresse IP également. (https://tools.ietf.org/html/rfc1931)
InARP : une requête InARP (Inverse ARP) résout l’adresse DLCI (Data Link Connection Identifier) qui est similaire à une adresse MAC. (https://tools.ietf.org/html/rfc2390)
Exemples basiques de paquets ARP, DRARP et InARP:
L’exemple suivant envoie une requête ARP pour apprendre l’adresse MAC du routeur:
Comme vous pouvez le voir, le drapeau -arp-type ARP a renvoyé l’adresse MAC de la cible 00:00:CA:11:22:33
L’exemple suivant imprimera des informations sur le protocole, les adresses physiques et IP des périphériques en interaction:
Where:
HTYPE: Type de matériel.
PTYPE : Type de protocole.
HLEN : Longueur de l’adresse matérielle. (6 bits pour l’adresse MAC)
PLEN : Longueur de l’adresse de protocole. (4 bits pour IPv4)
SIP : Adresse IP source.
SMAC : Adresse Mac source.
DMAC : Destination Mac Address.
DIP : Destination IP Address.
L’exemple suivant renvoie la même sortie:
Nmap ARP discovery
L’exemple suivant utilisant nmap est un scan ARP ping omettant contre toutes les possibilités du dernier octet, en utilisant le joker (*), vous pouvez également définir des plages séparées par des tirets.
Où:
-sP : Ping scanne le réseau, en listant les machines qui répondent au ping.
-PR : Découverte ARP
L’exemple suivant est un scan ARP contre toutes les possibilités du dernier octet, y compris le scan du port.
L’exemple suivant montre un scan ARP contre toutes les possibilités du dernier octet
Le scan suivant force un scan ip sur un scan arp, à nouveau le dernier octet en utilisant le joker.
Comme vous pouvez le voir alors que le scan effectué avant prenait 6 secondes il en a pris 23.
Une sortie et un timing similaires se produisent si vous désactivez le protocole ARP en ajoutant l’indicateur -disable-arp-ping:
Conclusion
Les scans ARP de Nmap et Nping sont ok pour découvrir des hôtes, alors que selon la documentation officielle les programmes peuvent être utiles pour le DoS, ARP Poisoning et d’autres techniques d’attaque mes tests n’ont pas fonctionné, il existe de meilleurs outils centrés sur le protocole ARP comme ARP spoofing, Ettercap,ou arp-scan qui méritent plus d’attention concernant cet aspect. Cependant, en utilisant Nmap ou Nping, le protocole ARP ajoute au processus de scan la confiance de marquer les paquets comme du trafic de réseau local pour lequel les routeurs ou les firewalls montrent plus de patience que pour le trafic externe, bien sûr cela n’aidera pas si vous inondez le réseau de paquets. Les modes et types ARP ne sont plus utiles sous Nmap mais toute la documentation est encore utile si elle est appliquée à Nping.
J’espère que vous avez trouvé cette introduction à Nmap et au scan ARP de Nping utile. Continuez à suivre LinuxHint pour plus de conseils et de mises à jour sur Linux et les réseaux.
- Comment scanner les services et les vulnérabilités avec Nmap
- Utiliser les scripts nmap : Capture de bannière Nmap
- nmap network scanning
- nmap ping sweep
- Traceroute avec Nmap
- nmap flags and what they do
- Nmap Stealth Scan
- Nmap Alternatives
- Nmap : scan IP ranges
.