TP sécurité - GIPSA-Lab
Transcription
TP sécurité - GIPSA-Lab
Université Grenoble Alpes U.F.R. Sciences de l’Homme et de la Société Licence MIASS TP sécurité ARP spoofing L'objectif de ce TP est d’expérimenter une attaque man-in-the-middle (MIM) de type ARP spoofing. Pour réaliser ce TP, vous utiliserez les outils arpspoof et ettercap dans l’environnent virtuel offert par Marionnet. TP Sécurité – Licence MIASS – 2015/2016 – Christian Bulfone / Jean-Michel Adam 1/6 Préambule 1) Copiez sur votre bureau le projet nommé TP_MIM.mar qui se trouve dans le disque « commun » puis LiMass/TPReseaux. 2) Lancez Marionnet : cliquez sur le bouton du haut du panel de gauche, et saisissez les premières lettres du mot « Marionnet ». Cliquez sur l’icône correspondante. Allez dans le menu Projet > Ouvrir, puis sélectionnez le projet que vous venez de copier. Vous devriez vous retrouver avec 3 machines nommées barbossa, m1 et m2 et un équipement nommé G1. 3) Démarrez les hôtes barbossa, m1 et m2 ainsi que le switch S1 et la passerelle G1. Notez les adresses IP des différentes machines et de la passerelle. 4) Testez le bon fonctionnement de la résolution de noms avec la commande : nslookup www.google.fr 5) Installez les outils ettercap et arpspoof (faisant partie du paquetage dsniff) sur l’hôte barbossa avec les commandes : aptitude update aptitude install dsniff Répondez Yes aux questions posées (ignorez les messages d’avertissement) aptitude install ettercap Répondez Yes aux questions posées (ignorez les messages d’avertissement) TP Sécurité – Licence MIASS – 2015/2016 – Christian Bulfone / Jean-Michel Adam 2/6 Introduction à l’ARP spoofing avec arpspoof 1) Sur barbossa, lancez le logiciel de capture et d’analyse de trames wireshark (commande wireshark &), puis sur m1 faites un ping adresse_IP_m2. Vérifiez que le switch S1 joue bien son rôle de protection et que vous ne recevez aucun des messages ICMP échangés entre m1 et m2. 2) Sur barbossa, activez l’IP forwarding afin que le noyau Linux agisse comme un routeur, avec la commande : echo 1 > /proc/sys/net/ipv4/ip_forward 3) Depuis barbossa, lancez l’attaque ciblée sur les machines m1 et m2 avec les commandes : arpspoof –t adresse_IP_m1 adresse_IP_m2 > /dev/null 2>&1 & arpspoof –t adresse_IP_m2 adresse_IP_m1 > /dev/null 2>&1 & 4) Vérifiez dans wireshark qu’à présent vous capturez bien le trafic ping (c’est-à-dire les trames ICMP echo request et echo reply) entre les machines m1 et m2. Stoppez l’attaque par la commande : killall arpspoof TP Sécurité – Licence MIASS – 2015/2016 – Christian Bulfone / Jean-Michel Adam 3/6 ARP spoofing évolué avec ettercap 1) Depuis la machine barbossa, lancez une attaque ciblée sur la machine m1 à l’aide de la commande : ettercap –T /tmp/result –q –M arp:remote /adresse_IP_m1/ /adresse_IP_G1/ -w 2) Sur m1, connectez-vous en ftp sur le serveur distant ftp.sebsauvage.net à l’aide de la commande : ftp ftp.sebsauvage.net et des identifiant et mot de passe de votre choix. Que constatez-vous ? 3) Lancez à présent un navigateur Web (commande firefox), et tapez l’URL http://imss-www.upmf-grenoble.fr/~bulfonec/blog. Cliquez sur le lien redirigeant vers la page d’administration du site et saisissez comme identifant « admin » et n’importe quel mot de passe. Que constatez-vous ? 4) Arrêtez l’attaque en tapant « q ». Lancez le logiciel wireshark et ouvrez le fichier result qui se trouve dans le répertoire /tmp. Analysez les trames capturées. 5) Lancez wireshark sur m1, et démarrez une capture. Relancez sur barbossa la même attaque contre m1. Observez les trames échangées. Affichez le contenu du cache ARP de m1 à l’aide de la commande arp –n 6) Récupération d’un trafic chiffré en HTTPS : éditez le fichier /etc/etter.conf et remplacez dans la section [privs] ec_uid = 65534 ec_gid = 65534 par ec_uid = 0 ec_gid = 0 et décommentez les deux lignes # redir_command_on = "iptables –t nat … # redir_command_off = "iptables –t nat … Enregistrez les modifications puis relancez l’attaque : ettercap –T –q –M arp:remote /adresse_IP_m1/ /adresse_IP_G1/ Sur m1, dans le navigateur Web tapez l’URL https://www.gipsa-lab.grenoble-inp.fr/messitesweb Acceptez le certificat présenté par le navigateur, et saisissez comme identifiant « bulfonec » et n’importe quel mot de passe. Que constatez-vous ? TP Sécurité – Licence MIASS – 2015/2016 – Christian Bulfone / Jean-Michel Adam 4/6 Modification de contenu à la volée Le logiciel ettercap permet d’utiliser des filtres qu’il est possible de créer pour réaliser des actions particulières. 1) Créez dans le répertoire /tmp de votre machine barbossa, un fichier nommé ig.filter contenant les lignes suivantes : if (ip.proto == TCP && tcp.dst == 80) { if (search(DATA.data, "Accept-Encoding")) { replace("Accept-Encoding", "Accept-Rubbish!"); msg("zapped Accept-Encoding!\n"); } } if (ip.proto == TCP && tcp.src == 80) { replace("img src=", "img src=\"http://www.irongeek.com/images/jollypwn.png\" "); replace("IMG SRC=", "img src=\"http://www.irongeek.com/images/jollypwn.png\" "); msg("Filter Ran.\n"); } 2) Compilez votre filtre à l’aide de la commande : etterfilter ig.filter –o ig.ef 3) Utilisez à présent votre filtre contre la machine m1 avec la commande : ettercap –T –q –F ig.ef –M arp /adresse_IP_m1/ // 4) Sur m1, dans le navigateur Web Firefox (iceweasel), saisissez l’URL : http://imss-www.upmf-grenoble.fr/master-ic2a Que constatez-vous à présent ? TP Sécurité – Licence MIASS – 2015/2016 – Christian Bulfone / Jean-Michel Adam 5/6 DNS spoofing Ettercap dispose également d’un certain nombre de plugins utilisables. Parmi eux, dns_spoof permet de réaliser du DNS spoofing. 1) Editez le fichier /usr/share/ettercap/etter.dns et remplacez toute occurrence de l’adresse 198.182.196.56 par 91.121.22.172 2) Lancez ettercap avec le plugin dns_spoof avec la commande : ettercap –T –q –P dns_spoof –M arp:remote /adresse_IP_m1/ /adresse_IP_srv_DNS1/ 3) Sur m1, ouvrez le navigateur Web et tapez l’URL http://www.microsoft.com. Que constatez-vous ? 4) Editez le fichier /usr/share/ettercap/etter.dns et ajoutez les directives nécessaires pour que les requêtes DNS vers www.google.fr renvoient l’adresse IP de votre machine barbossa. Vous pouvez testez sur m1 le bon fonctionnement avec la commande nslookup www.google.fr 1 L’adresse du ou des serveurs de noms figure dans le fichier /etc/resolv.conf (ligne nameserver) de chaque machine. Marionnet utilise le composant « gateway » pour jouer ce rôle. TP Sécurité – Licence MIASS – 2015/2016 – Christian Bulfone / Jean-Michel Adam 6/6