🖥️ Sécurité des réseaux informatiques
📋 Attaque 1 : Dépassement de la capacité de la table MAC (MAC OVERFLOW)
🎯 Objectif
- Réaliser une attaque MAC OVERFLOW (MACof)
- Réaliser une solution pour l’attaque MAC OVERFLOW (MACof)
📋 Prérequis
- Une machine KALI LINUX : « Kali »
- Un commutateur Cisco : « SW1 »
- Le travail est réalisé en utilisant le simulateur GNS3
🔄 Tâche 1 : Préparation de l’environnement de travail
Nous allons utiliser le schéma suivant dans le simulateur GNS3.
Le pirate utilise la machine « Kali » pour réaliser l’attaque. Elle a comme adresse 192.168.0.100.
On clique sur le petit triangle qui se trouve dans le coin en haut à droite.
On clique par la suite sur « Filaire connecté ».
On clique sur « Filaire » puis sur le petit bouton dans le coin en bas à droite de la fenêtre qui s’affiche pour configurer l’adresse IP (Dans notre cas, l’adresse est déjà configurée « 192.168.3.100 ». Nous allons la modifier à « 192.168.0.100 »).
On clique sur « IPv4 » puis on choisit la configuration manuelle de l’adresse IP.
On configure l’adresse IP « 192.168.0.100 », le masque « 255.255.255.0 » et la passerelle par défaut « 192.168.0.1 ».
Pour afficher la configuration sur un terminal, on clique sur le terminal et tape la commande « ifconfig ». L’adresse IP est correctement configurée.
🔄 Tâche 2 : Réalisation de l’attaque « Dépassement de la capacité de la table MAC » (MAC OVERFLOW)
Vérifier l’état de la table MAC au niveau du commutateur avant de réaliser l’attaque MAC OVERFLOW. Pour se faire, on utilise la commande « Show mac address-table ».
La commande affiche une adresse MAC « 0050.56C0.0003 » mappée au port Et0/0.
Au niveau de la machine « Kali », on utilise l’outil « macof ». On affiche tout d’abord l’aide de cet outil et par la suite on lance l’attaque en utilisant la commande « macof –i eth0 » (eth0 est le nom de l’interface « Kali » affiché par la commande « ifconfig »).
Voici l’état du terminal après l’exécution de la commande.
On arrête l’attaque MAC OVERFLOW en cliquant sur les touches « Contrôle » et « C ».
On se déplace vers la console du commutateur et on tape de nouveau la commande « Show mac address-table ».
On peut afficher le nombre d’adresses MAC enregistrées dans la table MAC en utilisant la commande « Show mac address-table count » (ici 8192).
Comme vous le constatez, la table MAC est bombardée par des adresses MAC qui sont toutes associées au port Et0/0. Ainsi, le commutateur va fonctionner en tant que concentrateur et toutes les trames reçues au niveau d’un port seront redirigées vers tous les autres ports y compris Et0/0.
D’où, le pirate « Kali » peut recevoir tout le trafic réseau qui passe par ce commutateur.
💡 Remarque
L’attaque MAC OVERFLOW peut causer le plantage du commutateur lorsqu’elle est en cours d’exécution.
🔄 Tâche 3 : Implémentation de la solution contre l’attaque MAC OVERFLOW
La solution contre l’attaque MAC OVERFLOW est la configuration de la sécurité des ports.
Entrez dans le mode de la configuration d’interface Eth0/0 et configurer le port comme port d’accès.
Activer la sécurité du port Eth0/0.
Configurer l’apprentissage dynamique des adresses MAC pour le port Et0/0.
Configurer le maximum d’adresses MAC à apprendre sur 2.
Configurer le mode de violation sur « Protect ».
Afficher la configuration de la sécurité du port Et0/0.
On lance l’attaque de nouveau et on arrête l’exécution de la commande. On affiche après la configuration de la sécurité du port Et0/0.
Comme vous le constatez, le nombre total d’adresses MAC apprises est 2.
On affiche l’état du compteur de violation (Il est toujours sur 0). Le mode « Protect » n’incrémente pas le compteur de violation.
On modifie le mode de violation en « Restrict ».
On lance l’attaque de nouveau et on l’arrête. Puis on affiche les informations de la sécurité du port Et0/0 y compris l’état du compteur de violation.
La valeur du compteur de violation est 768. C’est-à-dire 768 fois que nous n’avons pas respecté la sécurité du port Et0/0.
On modifie le mode de violation en « Shutdown ».
On lance l’attaque et on l’arrête. Puis on constate ce qui se passe au niveau du commutateur.
Le port est en état « DOWN » après avoir dépassé 2 adresses MAC.
Le compteur de violation est sur la valeur 769. C’est-à-dire que nous avons dépassé largement le maximum d’adresses MAC autorisées sur ce port. C’est pour cette raison qu’il est en état « DOWN ».
Si on affiche l’état du port, on trouve qu’il est en état « ERR-DISABLED ».
Pour que le port devienne actif manuellement, on utilise la commande « Shutdown » puis « No shutdown ».
On peut configurer que le port passe à l’état actif après une durée définie par nous même en tant qu’administrateur réseau.
- On affiche tout d’abord l’état de cette propriété. On constate qu’elle est désactivée. On constate aussi que la durée est configurée par défaut sur 300 secondes.
- On active cette propriété pour « Psecure-violation » avec une durée de 30 secondes.
- On lance de nouveau l’attaque et on l’arrête. Puis on revient au niveau du commutateur pour observer ce qui se passe.
Le port Et0/0 est en état « ERR-DISABLED » depuis 11:54:15.
Le port est activé automatiquement après 30 secondes.
💡 Remarque
On peut configurer d’autres paramètres au niveau de la sécurité des ports comme le minuteur de vieillissement « Aging time ».
- Aging Time : La durée de vieillissement d’une adresse MAC sécurisée.
- Aging type : permet de choisir le type de vieillissement. Si on utilise « Absolute », les adresses MAC sécurisées sont supprimées au bout d’un délai d’expiration spécifique appelé « Durée de vieillissement ». Si on utilise « Inactivity », les adresses MAC sécurisées sont supprimées uniquement si l’adresse MAC sécurisée est inactive pendant la période de vieillissement.
