1- ARP spoofing
Usurpation d’identité au niveau MAC
ARP (Address Resolution Protocol)
ARP est un protocole effectuant la traduction d'une adresse IP en une adresse MAC (adresse physique).
Cache ARP
Le
Cache ARP est un ensemble de couples adresse IP-adresse MAC contenu
dans la mémoire d'un ordinateur qui utilise le protocole ARP (ce qui est
le cas de tous les ordinateurs qui sont connectés à un réseau
informatique).
ARP Cache Poisoning
L’empoisonnement
du cache ARP (ARP cache poisoning) est une technique qui permet de
rediriger tous les flux entre deux machines communiquant sur un réseau
local, quelque soit le protocole encapsulé par Ethernet.
Fonctionnement du protocole ARP
Les
machines qui implémentent la couche TCP/IP utilisent leurs adresses IP
pour communiquer. Sur un réseau Ethernet, un adressage physique s’ajoute
à cet adressage logique : c’est le rôle de la sous-couche MAC, qui
permet d’identifier les machines grâce à l’adresse MAC de leur carte
réseau.
Le
protocole ARP permet justement d’établir dynamiquement une
correspondance entre les deux types d’adresses, c’est à dire de trouver
l’adresse MAC associée à une adresse IP. Lorsque une machine tente
d’établir une communication, elle doit d’abord récupérer l’adresse MAC
du destinataire. Une requête ARP (arp-request) est alors envoyée en
broadcast (diffusion) sur le réseau local, toutes les machines reçoivent
ce paquet, mais seul le destinataire répond, puisqu'il a identifié sa
propre adresse IP dans l’entête ARP, Il forge alors une réponse ARP
(arp-reply) adressée à l’émetteur qui, connaissant à présent l’adresse
physique de son
interlocuteur, peut entamer une discussion avec lui.
- Pour afficher le contenu du cache arp d’une machine : arp -a
- Pour supprimer le contenu du cache arp d’une machine : arp -d *
La vulnérabilité de ce protocole
Dans
le monde de la sécurité informatique, il existe differentes types de
failles permis eux les vulnérabilités dues a la conception d’un
système/protocole , c’est le cas par exemple du protocole ARP.
De
ce que nous pouvons savoir que le protocole ARP ne nécessite pas
d'authentification, et pour limiter l’utilisation du réseau la plupart
des systèmes mettent a jour leur cache ARP a chaque fois qu’ils
reçoivent une réponse, même s’ils ne l’on pas demandé : ce qui veut dire
qu’un pirate peut envoyer un message ARP a l’ordinateur A disant «
l’ordinateur C a mon Adresse MAC » recevra ensuite tous les messages qui
devraient normalement être délivrés a cet ordinateur C.
Par
exemple il ya trois ordinateurs hôtes sur un réseau local (GW represent
le passerelle par défaut ici), les noms d'hôte, les adresses IP et les
adresses MAC sont les suivantes ( Les adresses MAC sont simplifiés pour
une meilleure lisibilité):
HostName IP MAC MAC ip
GW 192.168.0.1 01-01-01-01-01-01
PC02 192.168.0.2 02-02-02-02-02-02
PC03 192.168.0.3 03-03-03-03-03-03
Dans des conditions normales le flux est représenté comme il montre l'illustration ci-dessous:
Maintenant l'ordinateur PC03 de l'attaquant décide de mener une attaque par usurpation ARP.
Tout
d'abord, un paquet APR est envoyé à PC02 par PC03 disant: " l'adresse
ip 192.168.0.1 corespand à l'adresse MAC 03-03-03-03-03-03 ".
PC03 envoie aussi un paquet ARP à GW, en disant: " l'adresse ip 192.168.0.2 corespand à l'adresse MAC 03-03-03-03-03-03 ".
Ainsi,
le flux de données à partir de l'ordinateur PC02 et la
GW(gatway) est représenté comme il montre l'illustration ci-dessous:
Maintenant
toutes les communications de l’utilisateur de l'ordinateur PC02 vers la
GW (ou inversement) seront routées vers PC03 (le pirate) qui pourra par
exemple récupérer les login/mot de passe.
Comme
je viens de le dire, il n’y a aucun système d’authentification. ARP est
basé sur la confiance, il considère tous les messages reçus comme
authentiques, qu’il provienne de la machine légitime ou pas et il
n’intègre aucun moyen de vérification. Je pense que les concepteurs de
ces protocoles ont sûrement simplifié les communications pour que les
réseaux fonctionnent de manière optimale mais il n'ont pas prend
en considération les impacts de sécurité.
Cette vulnérabilité permet à un pirate plusieurs vecteurs d’attaques comme:
Denial of Service, Man in the Middle et MAC Flooding, etc.
- Denial of Service:
Comme
nous l’avons vu précédemment, un pirate peut facilement associer une
adresse IP a une fausse adresse MAC. Par exemple, un pirate peut envoyer
une réponse ARP associant l’adresse de vôtre routeur avec une adresse
MAC qui n’existe pas. Votre ordinateur pense donc connaître réellement
la passerelle par défaut, mais en fait ils envoient leurs paquets a une
destination qui n’existe pas. Le pirate vous a isolé du réseau.
- L’homme du milieu (Man in the Middle):
L’attaque
MiM (man in the Middle) est une redirection complète d’une connexion
entre deux machines. Chacun des deux interlocuteurs croit dialoguer
directement avec l’autre, mais en réalité il adresse ses trames à une
troisième machine qui joue le rôle d’un routeur et renvoie les paquets
vers le véritable destinataire.
- etc.
ARP spoofing tools
- Arpspoof (linux) :
redirige
les paquets à partir d'un hôte cible destinée à un autre hôte sur le
LAN (Réseau local) par forgeage réponses ARP, il est le moyen efficace
de sniffer le trafic sur un commutateur:
arpspoof [- i interface] [-t target] host
voir video
- Ettercap (Linux, windows) voir video
- Cain an abel (windows) voir video
2- DNS spoofing
Empoisonnement du DNS est le technique pour tromper un serveur DNS en lui faisant croire qu'il a reçu des vrai informations, mais en réalité non.
Type de DNS Poisoning
Intranet DNS Spoofing (dans un réseau local):
Pour
cette technique, vous devez être connecté au réseau local (LAN) et être
capable de sniffer les paquets, et capable de faire l'empoisonnement
ARP du routeur.
1
- Le pirate lance arpspoof/dnsspoof pour lancer le DNS Poisoning (voir
le shapitre: ARP Spofong) et transferer tout le trafic à sa machine ou
son serveur (faux site).
2 - La victime envoi la requette DNS demande l'@ip du site qu'il veut visiter(vrai site: 44.1.2.3 par exemple).
3 - la victime reçio une repense DNS, le vrai site que vous voullez visiter son @ip est 10.1.2.3 par exemple (le faux site web).
4 - Le navigateur de la victime se connecte au faux site web (la machine de pirate ou son serveur).5 - Le faux site de pirate sniffe les informations d'identification et redirige la demande sur le site réel.
Internet DNS Spoofing : un peu dificile à réaliser.
Le pirate envoie un cheval de Troie sur la machine victime et change son adresse IP de DNS
1- Le pirate infecte la machine victime en changeant son adresse IP DNS en 200.0.0.2 par exemple (DNS de pirate).
2-
La demande DNS de victime va à 200.0.0.2 (il va au DNS de
pirate plutôt que d'aller au DNS reel de la victime) disant quel est
l'adresse ip de "vraisite.com" par exemple.(sachant que La vraie adresse
de "vraisite.com" est par exemple 88.10.11.12).
3-
Le DNS de pirate il va lui donner une fausse adresse ip
(41.1.2.3) disasant: le "vraisite.com" est situé à l'adresse 41.1.2.3
plutôt que de lui donner l'adresse réel de "vraisite.com ( 88.10.11.12).
4- Le navigateur de la victime se connecter doc au faux site web.5- Le faux site de pirate sniffe les informations d'identification et redirige la demande sur le site réel.
Pour rediriger tout les requête DNS vers le serveur DNS de pirate:
1 -Mettre en place un faux site Web sur votre ordinateur ou votre serveur.
2
-Installer treewalk et modifier le fichier mentionné dans le fichier
readme.txt à votre adresse IP, treewalk vous fera le serveur DNS.
3 -Modifier le fichier de dns-spoofing.bat et remplacer l'adresse IP par votre adresse IP.
4 -Trojanize le fichier dns-spoofing.bat et l'envoyer à la victime
5
-Lorsque l'hôte clique sur le fichier des chevaux de Troie, il
remplacera l'entrée DNS de la victime dans ses propriétés TCP / IP avec
celle de le votre (DNS de pirate).
6 -Vous devenir le serveur DNS pour la victime et ses requêtes DNS passera par vous.
7 -Lorsque
la victime se connecte à "vraisite.com", elle se redirige vers le
"fauxsite.com", vous pouvez donc sniffer son mot de passe et la
rediriger la victime vers le site réel ("vraisite.com").
Serveur proxy DNS Poisoning:
c'est la meme principe avec internet DNS Spoofing sauf que le pirate envoie un cheval de Troie sur la machine victime et change son paramètres du serveur proxy dans son navigateur (Internet Explorer, FIrefox, etc) par l'adresse IP de l'attaquant.
DNS Cache Poisoning:
Pour
effectuer une attaque par empoisonnement de cache, le pirate exploite
une faille dans le serveur DNS qui peut faire accepter des informations
incorrectes. le serveur ne valide pas correctement les réponses DNS
afin de s'assurer qu'ils sont venus d'une source autorisée, le serveur
finira par la mise en cache les entrées incorrectes localement et de les
servir aux utilisateurs qui font la même demande.
*
Par exemple, un attaquant poisons l'entrée d’adresse IP DNS pour un
site cible sur un serveur DNS donné, en les remplaçant par l'adresse
ip d'un serveur qu'il contrôle
* Il crée ensuite des faux entrées pour les fichiers sur le serveur DNS qu'il contrôle avec des noms correspondant à
Cette technique nécéssite l'attaque L'homme du milieu (Man in the Middle) et ARP spoofing.
Voir cette vidéo: DNS Cache Poisoning
Voir cette vidéo: Dns spoofing
Outils
Dnsspoof:
dnsspoof [-i interface] [-f fichier hostsfile] [expression]
Aucun commentaire:
Enregistrer un commentaire