Contourner les pare-feu et les systèmes de détection d'intrusion (IDS) avec Nmap

NmapNmapBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous allez apprendre à contourner les pare - feux et les systèmes de détection d'intrusions (IDS) à l'aide de Nmap. Le laboratoire couvre plusieurs techniques, notamment l'exécution de scans de décoys, le fractionnement de paquets, la falsification d'adresses IP, le réglage des vitesses de scan et la combinaison de ces techniques. Vous allez exécuter diverses commandes Nmap dans le terminal Xfce et vérifier les résultats de contournement. N'oubliez pas d'utiliser ces techniques de manière éthique et avec l'autorisation appropriée.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) nmap/NmapGroup -.-> nmap/scan_types("Scan Types and Techniques") nmap/NmapGroup -.-> nmap/target_specification("Target Specification") nmap/NmapGroup -.-> nmap/timing_performance("Timing and Performance") nmap/NmapGroup -.-> nmap/syn_scan("SYN Scan") nmap/NmapGroup -.-> nmap/firewall_evasion("Firewall Evasion Techniques") nmap/NmapGroup -.-> nmap/stealth_scanning("Stealth and Covert Scanning") subgraph Lab Skills nmap/scan_types -.-> lab-530178{{"Contourner les pare-feu et les systèmes de détection d'intrusion (IDS) avec Nmap"}} nmap/target_specification -.-> lab-530178{{"Contourner les pare-feu et les systèmes de détection d'intrusion (IDS) avec Nmap"}} nmap/timing_performance -.-> lab-530178{{"Contourner les pare-feu et les systèmes de détection d'intrusion (IDS) avec Nmap"}} nmap/syn_scan -.-> lab-530178{{"Contourner les pare-feu et les systèmes de détection d'intrusion (IDS) avec Nmap"}} nmap/firewall_evasion -.-> lab-530178{{"Contourner les pare-feu et les systèmes de détection d'intrusion (IDS) avec Nmap"}} nmap/stealth_scanning -.-> lab-530178{{"Contourner les pare-feu et les systèmes de détection d'intrusion (IDS) avec Nmap"}} end

Exécutez un scan de décoys avec nmap -D RND:5 192.168.1.1

Dans cette étape, nous allons explorer la manière d'utiliser le scan de décoys avec Nmap pour dissimuler la source de notre scan. Le scan de décoys fait apparaître que le scan provient de plusieurs adresses IP, rendant ainsi plus difficile de localiser l'agent de scan réel.

L'option -D dans Nmap vous permet de spécifier des adresses IP de décoys. L'argument RND:5 indique à Nmap d'utiliser 5 adresses IP aléatoires et non réservées comme décoys, en plus de votre adresse IP réelle.

Effectuons un scan de décoys sur une cible. Pour les fins de démonstration, nous utiliserons 192.168.1.1 comme adresse IP cible. Notez que 192.168.1.1 est un emplacement réservé. Dans un scénario réel, vous remplacez cela par l'adresse IP réelle de la cible pour laquelle vous êtes autorisé à effectuer un scan.

Ouvrez votre terminal Xfce et exécutez la commande suivante :

sudo nmap -D RND:5 192.168.1.1

Cette commande lancera un scan Nmap sur 192.168.1.1, en utilisant 5 adresses IP aléatoires comme décoys. Vous verrez la sortie de Nmap dans le terminal, montrant la progression du scan.

Sortie exemple (la sortie spécifique variera selon la cible et le réseau) :

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:00 UTC
Nmap scan report for 192.168.1.1
Host is up (0.00043s latency).
Not shown: 999 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh

Nmap done: 1 IP address (1 host up) scanned in 1.23 seconds

Considérations importantes :

  • Utilisation éthique : Assurez-vous toujours d'avoir une autorisation expresse pour scanner un réseau ou un système. Le scan non autorisé est illégal et immoral.
  • Impact sur le réseau : Les scans de décoys peuvent générer un volume important de trafic réseau. Utilisez-les de manière responsable et évitez de surcharger le réseau cible.
  • Efficacité : Bien que les scans de décoys puissent rendre plus difficile de retracer l'origine d'un scan, ils ne sont pas infaillibles. Les systèmes de détection d'intrusions sophistiqués (IDS) peuvent encore être capables d'identifier la véritable source.

Fragmenter les paquets avec nmap -f 127.0.0.1

Dans cette étape, nous allons apprendre à fragmenter les paquets à l'aide de Nmap. Le fractionnement des paquets consiste à diviser les données TCP ou UDP en morceaux plus petits (fragments) avant de les envoyer à la cible. Cette technique peut être utilisée pour contourner certains pare - feux ou systèmes de détection d'intrusions (IDS) qui peuvent ne pas reassembler correctement les paquets fragmentés.

L'option -f dans Nmap active le fractionnement des paquets. Par défaut, Nmap fractionne les paquets en morceaux de 8 octets. Vous pouvez spécifier une taille différente d'unité de transmission maximale (MTU - Maximum Transmission Unit) en utilisant -mtu <taille>.

Effectuons un scan fragmenté sur l'adresse de boucle 127.0.0.1. Cette adresse fait toujours référence à la machine locale, ce qui la rend sûre pour les tests.

Ouvrez votre terminal Xfce et exécutez la commande suivante :

sudo nmap -f 127.0.0.1

Cette commande lancera un scan Nmap sur 127.0.0.1, en fragmentant les paquets. Vous verrez la sortie de Nmap dans le terminal, montrant la progression du scan.

Sortie exemple (la sortie spécifique variera selon votre configuration système) :

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:05 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000028s latency).
Other addresses for localhost: ::1

PORT     STATE SERVICE
139/tcp  closed netbios-ssn
445/tcp  closed microsoft-ds

Nmap done: 1 IP address (1 host up) scanned in 0.12 seconds

Explication :

  • sudo nmap : Exécute Nmap avec les privilèges d'administrateur, qui sont souvent nécessaires pour les opérations de socket brute telles que le fractionnement des paquets.
  • -f : Active le fractionnement. Nmap fragmentera les paquets avant de les envoyer.
  • 127.0.0.1 : Spécifie l'adresse IP cible (l'adresse de boucle).

Considérations importantes :

  • Contournement de pare - feux/IDS : Le fractionnement des paquets peut parfois contourner les pare - feux simples ou les IDS qui ne reassemblent pas correctement les fragments. Cependant, les dispositifs de sécurité modernes sont généralement capables de gérer les paquets fragmentés.
  • Impact sur les performances : Le fractionnement peut augmenter la surcharge réseau et potentiellement ralentir le scan.
  • Option MTU : Vous pouvez utiliser l'option -mtu pour spécifier une taille d'unité de transmission maximale personnalisée pour les fragments. Par exemple, nmap -f -mtu 32 127.0.0.1 fragmenterait les paquets en morceaux de 32 octets.

Falsifier l'adresse IP avec nmap -S 192.168.1.100 192.168.1.1

Dans cette étape, nous allons explorer la manière de falsifier l'adresse IP source des scans Nmap. La falsification de l'adresse IP consiste à fausser l'adresse IP source dans les paquets envoyés par Nmap. Cela peut être utilisé pour cacher votre adresse IP réelle ou pour tester les défenses du réseau.

L'option -S dans Nmap vous permet de spécifier une adresse IP source. Il est important de comprendre que la falsification d'adresses IP peut avoir de graves conséquences et ne devrait être faite que dans des environnements autorisés. Notez également que vous ne recevrez généralement pas de réponses aux paquets falsifiés, car ils seront envoyés à l'adresse falsifiée. Par conséquent, cette technique est souvent utilisée avec des techniques de balayage "aveugle" telles que le balayage SYN (-sS) ou le balayage de connexion (-sT) lorsque vous n'avez pas besoin de voir les réponses.

Effectuons un balayage SYN avec une adresse IP falsifiée sur une cible. Pour les fins de démonstration, nous utiliserons 192.168.1.100 comme adresse IP falsifiée et 192.168.1.1 comme adresse IP cible. Notez que 192.168.1.1 est un emplacement réservé. Dans un scénario réel, vous le remplaceriez par l'adresse IP réelle de la cible pour laquelle vous êtes autorisé à effectuer un scan. De plus, 192.168.1.100 n'est qu'un exemple, et vous devriez choisir une adresse IP qui n'est pas utilisée sur votre réseau pour éviter les conflits.

Ouvrez votre terminal Xfce et exécutez la commande suivante :

sudo nmap -sS -S 192.168.1.100 192.168.1.1

Cette commande lancera un balayage SYN Nmap sur 192.168.1.1, en utilisant 192.168.1.100 comme adresse IP source falsifiée. Vous verrez la sortie de Nmap dans le terminal, montrant la progression du scan.

Sortie exemple (la sortie spécifique variera selon la cible et le réseau) :

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:10 UTC
Nmap scan report for 192.168.1.1
Host is up (0.00029s latency).
Not shown: 999 filtered ports
PORT   STATE SERVICE
22/tcp open  ssh

Nmap done: 1 IP address (1 host up) scanned in 2.12 seconds

Explication :

  • sudo nmap : Exécute Nmap avec les privilèges d'administrateur, qui sont nécessaires pour les opérations de socket brute telles que la falsification d'adresses IP.
  • -sS : Spécifie un balayage SYN, qui est un balayage discrètement qui ne termine pas la main - shake TCP.
  • -S 192.168.1.100 : Spécifie l'adresse IP source falsifiée.
  • 192.168.1.1 : Spécifie l'adresse IP cible.

Considérations importantes :

  • Utilisation éthique : La falsification d'adresses IP ne devrait être utilisée que dans des environnements autorisés à des fins légitimes, telles que les tests de sécurité.
  • Privilèges d'administrateur : La falsification d'adresses IP nécessite des privilèges d'administrateur.
  • Fonctionnalité limitée : Comme vous ne recevrez pas de réponses aux paquets falsifiés, vous devrez peut - être utiliser d'autres techniques pour recueillir des informations sur la cible.
  • Configuration du réseau : La falsification peut ne pas fonctionner si votre réseau est configuré pour l'empêcher. Les routeurs et les pare - feux ont souvent des mécanismes pour empêcher les paquets avec des adresses IP source falsifiées de quitter le réseau.

Régler le taux avec nmap --max - rate 100 192.168.1.1

Dans cette étape, nous allons apprendre à contrôler le taux de balayage de Nmap. Régler le taux de balayage est crucial pour éviter la détection et prévenir la congestion du réseau. Nmap propose plusieurs options pour contrôler le taux auquel il envoie des paquets.

L'option --max - rate limite le nombre de paquets que Nmap envoie par seconde. Cela peut être utile pour éviter la détection par les systèmes de détection d'intrusions (IDS) ou pour prévenir la congestion du réseau, en particulier lors du balayage de réseaux avec une largeur de bande limitée.

Effectuons un balayage sur une adresse IP cible, en limitant le taux maximal de paquets à 100 paquets par seconde. Pour les fins de démonstration, nous utiliserons 192.168.1.1 comme adresse IP cible. Notez que 192.168.1.1 est un emplacement réservé. Dans un scénario réel, vous le remplaceriez par l'adresse IP réelle de la cible pour laquelle vous êtes autorisé à effectuer un scan.

Ouvrez votre terminal Xfce et exécutez la commande suivante :

sudo nmap --max - rate 100 192.168.1.1

Cette commande lancera un balayage Nmap sur 192.168.1.1, en limitant le taux maximal de paquets à 100 paquets par seconde. Vous verrez la sortie de Nmap dans le terminal, montrant la progression du scan.

Sortie exemple (la sortie spécifique variera selon la cible et le réseau) :

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:15 UTC
Nmap scan report for 192.168.1.1
Host is up (0.00028s latency).
Not shown: 999 filtered ports
PORT   STATE SERVICE
22/tcp open  ssh

Nmap done: 1 IP address (1 host up) scanned in 2.50 seconds

Explication :

  • sudo nmap : Exécute Nmap avec les privilèges d'administrateur, qui peuvent être nécessaires pour certains types de balayage.
  • --max - rate 100 : Limite le taux d'envoi à un maximum de 100 paquets par seconde.
  • 192.168.1.1 : Spécifie l'adresse IP cible.

Autres options de limitation de taux :

Nmap propose plusieurs autres options pour contrôler le taux de balayage :

  • --min - rate <nombre> : Spécifie le nombre minimum de paquets à envoyer par seconde.
  • --scan - delay <temps> : Régle la durée pendant laquelle Nmap attend après chaque sonde qu'il envoie.
  • --min - rtt - timeout <temps>, --max - rtt - timeout <temps>, --initial - rtt - timeout <temps> : Contrôle les valeurs de délai d'attente des sondes.

Considérations importantes :

  • Conditions réseau : Le taux de balayage optimal dépend des conditions réseau. Si le réseau est congestionné, un taux plus bas peut être nécessaire pour éviter la perte de paquets.
  • Évasion de IDS/IPS : Régler le taux de balayage peut aider à éviter la détection par les systèmes de détection/prévention d'intrusions.
  • Temps de balayage : Baisser le taux de balayage augmentera le temps total de balayage.

Combiner des techniques avec nmap -f --max - rate 50 127.0.0.1

Dans cette étape, nous allons combiner les techniques de fragmentation de paquets et de limitation de taux pour affiner encore nos scans Nmap. La combinaison de techniques peut être utile pour éviter la détection et optimiser les performances de balayage.

Nous utiliserons l'option -f pour fragmenter les paquets et l'option --max - rate pour limiter le taux d'envoi. La fragmentation des paquets divise l'en - tête TCP sur plusieurs paquets pour rendre plus difficile la détection du balayage par les filtres de paquets et les pare - feux. La limitation du taux assure que le balayage ne surcharge pas le réseau ou ne déclenche pas d'alerte.

Effectuons un balayage sur l'adresse de boucle locale (127.0.0.1), en utilisant la fragmentation des paquets et en limitant le taux maximal de paquets à 50 paquets par seconde.

Ouvrez votre terminal Xfce et exécutez la commande suivante :

sudo nmap -f --max - rate 50 127.0.0.1

Cette commande lancera un balayage Nmap sur 127.0.0.1, fragmentant les paquets et limitant le taux maximal de paquets à 50 paquets par seconde. Vous verrez la sortie de Nmap dans le terminal, montrant la progression du balayage.

Sortie exemple (la sortie spécifique variera selon la cible et le réseau) :

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:20 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000070s latency).
Other addresses for localhost: ::1
Not shown: 999 closed ports
PORT     STATE SERVICE
135/tcp  open  msrpc

Nmap done: 1 IP address (1 host up) scanned in 1.85 seconds

Explication :

  • sudo nmap : Exécute Nmap avec les privilèges d'administrateur, qui peuvent être nécessaires pour certains types de balayage.
  • -f : Fragmenter les paquets en parties plus petites.
  • --max - rate 50 : Limite le taux d'envoi à un maximum de 50 paquets par seconde.
  • 127.0.0.1 : Spécifie l'adresse IP cible (adresse de boucle locale).

Considérations importantes :

  • Surcoût de fragmentation : La fragmentation des paquets peut augmenter le surcoût du balayage, car plus de paquets doivent être envoyés.
  • Comportement des pare - feux : Certains pare - feux peuvent reassembler les paquets fragmentés avant de les inspecter, annulant ainsi les effets de la fragmentation.
  • Efficacité de la limitation de taux : L'efficacité de la limitation de taux dépend des conditions réseau et de la sensibilité du système cible.
  • Combinaison de techniques : Combiner différentes techniques d'évitement peut augmenter les chances de contourner les mesures de sécurité, mais cela augmente également la complexité du balayage.

Vérifier l'évitement dans le terminal Xfce

Dans cette étape, nous allons discuter de la manière de vérifier l'efficacité des techniques d'évitement que nous avons utilisées dans les étapes précédentes. Bien que nous ne puissions pas prouver de manière définitive que nos scans sont complètement indétectables, nous pouvons utiliser diverses méthodes pour évaluer la probabilité d'évitement.

Méthodes de vérification de l'évitement :

  1. Surveillance du réseau : Utilisez des outils tels que tcpdump ou Wireshark pour capturer le trafic réseau et analyser les caractéristiques des scans Nmap. Recherchez des paquets fragmentés, des adresses IP de décoys et un trafic limité en taux. Cela nécessite une machine séparée sur le même réseau que la cible. Étant donné que nous sommes dans un environnement clos, cela n'est pas faisable.

  2. Journaux d'IDS/IPS : Si vous avez accès aux journaux d'un système de détection/prévention d'intrusions (IDS/IPS), examinez - les pour tout alerte liée aux scans Nmap. L'absence d'alertes n'assure pas l'évitement, mais c'est un signe positif. Cela nécessite également l'accès à des systèmes externes dont nous n'avons pas accès.

  3. Journaux du système cible : Vérifiez les journaux du système cible à la recherche de toute preuve des scans Nmap. Cela peut inclure des tentatives de connexion à des ports spécifiques ou une activité réseau inhabituelle. Encore une fois, cela nécessite l'accès au système cible.

  4. Services en ligne tiers : Certains services en ligne peuvent analyser le trafic réseau et identifier les menaces de sécurité potentiellement. Vous pouvez soumettre un échantillon de trafic de scan Nmap à ces services pour analyse.

Limitations dans l'environnement de la machine virtuelle LabEx :

En raison des limitations de l'environnement de la machine virtuelle LabEx (par exemple, manque d'une machine de surveillance séparée, pas d'accès aux journaux d'IDS/IPS ou au système cible), nous ne pouvons pas effectuer une vérification complète de l'évitement. Cependant, nous pouvons réviser les commandes que nous avons exécutées et comprendre comment elles contribuent à l'évitement.

Revue des techniques d'évitement :

  • Balayage de décoys (nmap -D RND:5 192.168.1.1) : Cette technique fait apparaître que le scan provient de plusieurs adresses IP, y compris des adresses générées aléatoirement. Cela peut confondre les administrateurs de réseau et rendre difficile le traçage du scan jusqu'à la source réelle.

  • Fragmentation de paquets (nmap -f 127.0.0.1) : Cette technique divise l'en - tête TCP sur plusieurs paquets, rendant plus difficile la détection du scan par les filtres de paquets et les pare - feux.

  • Spoofing d'IP (nmap -S 192.168.1.100 192.168.1.1) : Cette technique cache votre adresse IP réelle en utilisant une adresse IP source différente.

  • Limitation de taux (nmap --max - rate 100 192.168.1.1) : Cette technique ralentit le scan, réduisant la probabilité de déclencher des alertes ou de causer une congestion réseau.

  • Techniques combinées (nmap -f --max - rate 50 127.0.0.1) : La combinaison de la fragmentation et de la limitation de taux offre une approche multi - couche pour l'évitement.

Conclusion :

Bien que nous ne puissions pas vérifier de manière définitive l'évitement dans l'environnement de la machine virtuelle LabEx, comprendre les principes derrière ces techniques et la manière dont elles fonctionnent est crucial pour effectuer des scans Nmap discrètes et efficaces. Dans un scénario réel, vous utiliseriez les méthodes décrites ci - dessus pour évaluer l'efficacité de vos efforts d'évitement.

Cette étape porte plus sur la compréhension des concepts et des limitations que sur l'exécution d'une action spécifique dans le terminal. Par conséquent, l'étape de vérification vérifiera simplement que vous avez consulté cette étape dans le laboratoire.

Sommaire

Dans ce laboratoire, les participants apprennent à contourner les pare - feux et les IDS (Intrusion Detection System/Prévention) à l'aide de Nmap. Ils explorent diverses techniques, notamment exécuter un balayage de décoys avec nmap -D RND:5, fragmenter les paquets avec nmap -f, falsifier les adresses IP avec nmap -S, ajuster le taux de balayage avec nmap --max - rate et combiner ces techniques. Chaque commande est exécutée dans le terminal Xfce, et les participants sont rappelés de l'importance de l'utilisation éthique, de l'impact sur le réseau et des limites de ces méthodes d'évitement.