Vous êtes sur la page 1sur 55

2015 - 2016

Implémentation
d’attaques de type
Man In The Middle
sur un réseau.

Rapport réalisé par CHEMINADE Julien, GRZESKIEWICZ Teddy et HUGUET


Anthony étudiants en licence Administration Et Sécurité des Réseaux.
Sous la tutelle de Monsieur GERAULT David.
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Remerciements

Nous tenons à remercier toutes les personnes qui ont contribué au succès de notre
projet tuteuré et qui nous ont aidés lors de la rédaction de ce rapport.

Tout d’abord, nous adressons nos remerciements à notre tuteur et responsable de


projet Monsieur GERAULT David pour nous avoir aidé et guidé au travers de ce projet, ainsi
que pour sa patience et toutes les connaissances qu’il nous a apportées.

Pour finir, nous remercions l’ensemble de l’équipe pédagogique de la licence


Administration et Sécurité des Réseaux pour le contenu des cours et des travaux dirigés.

GRZESKIEWICZ Teddy
1
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Sommaire
Remerciements .......................................................................................................................... 1

Sommaire ................................................................................................................................... 2

Table des figures ........................................................................................................................ 4

Introduction................................................................................................................................ 5

I. Contexte du projet (fictif) ................................................................................................... 6

a) L’entreprise Tout & Bon .................................................................................................. 6

b) Le réseau de l’entreprise ................................................................................................. 7

c) Les besoins et les outils de l’entreprise .......................................................................... 8

II. Man In The Middle ............................................................................................................ 11

a. Les moyens d’intrusions sur un réseau ......................................................................... 11

b. Le principe du Man In The Middle ................................................................................ 13

a. Explication du principe .............................................................................................. 13

b. L’usurpation d’adresse IP .......................................................................................... 14

c. Man in the middle sur les mails .................................................................................... 19

d. Man in the middle sur FTP: ........................................................................................... 21

e. Man in the middle sur HTTP .......................................................................................... 22

a. Caractéristiques ......................................................................................................... 22

b. Installation ................................................................................................................. 23

c. Mise en œuvre ........................................................................................................... 25

f. Man the middle sur HTTPS ............................................................................................ 26

a. Le protocole TLS......................................................................................................... 26

b. L’attaque .................................................................................................................... 33

c. MITMproxy ................................................................................................................ 33

d. Mise en pratique........................................................................................................ 36
GRZESKIEWICZ Teddy
2
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

III. Moyens de défense ........................................................................................................... 39

a) Protection du protocole ARP ......................................................................................... 39

b) Le chiffrement de mail .................................................................................................. 41

c) Chiffrement du trafic FTP .............................................................................................. 43

d) Protection des protocoles HTTP / HTTPS ...................................................................... 44

Conclusion ................................................................................................................................ 46

Bilan humain ............................................................................................................................ 47

Abstract .................................................................................................................................... 48

Glossaire ................................................................................................................................... 49

Bibliographie ............................................................................................................................ 52

Annexes .................................................................................................................................... 53

GRZESKIEWICZ Teddy
3
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Table des figures


Figure 1 : Logo de l’entreprise.................................................................................................... 6
Figure 2 : Réseau de l’entreprise ................................................................................................ 7
Figure 3 : Trafic réseau normal................................................................................................. 16
Figure 4:Trafic d'ARP Spoofing ................................................................................................. 16
Figure 5 : Trame ARP Wireshark............................................................................................... 18
Figure 6 : Trafic des mails ......................................................................................................... 19
Figure 7 : Trame mails Wireshark............................................................................................. 19
Figure 8:Détails de trame mail Wireshark................................................................................ 20
Figure 9 : Trafic FTP .................................................................................................................. 21
Figure 10:Trame FTP Wireshark ............................................................................................... 21
Figure 11: Trafic HTTP .............................................................................................................. 25
Figure 12 : TLS HandShake ....................................................................................................... 28
Figure 13 : Paquet ServerHello de TLS ..................................................................................... 29
Figure 14: Capture de trame de certificat avec Wireshark ...................................................... 29
Figure 15: Protocole TLS Record .............................................................................................. 31
Figure 16: Trafic HTTPS avec MITM proxy................................................................................ 33
Figure 17: Schéma attaque Mitmproxy ................................................................................... 36
Figure 18 : Étapes TLS réussies ................................................................................................. 38
Figure 19 : Récupération informations en clair sur HTTPS ...................................................... 38
Figure 20 : Anti-Arp .................................................................................................................. 40
Figure 21:Log du logiciel Anti-Arp ............................................................................................ 40
Figure 22: Génération clés. ..................................................................................................... 42
Figure 23: Capture trame mali chiffré ...................................................................................... 43
Figure 24: Trame FTPS .............................................................................................................. 44

GRZESKIEWICZ Teddy
4
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Introduction

Notre projet se déroule dans le cadre de la licence Administration et Sécurité des Réseaux
de l’Institut Universitaire et Technologique situé à Clermont-Ferrand. Nous avons effectué ce
projet dans le but d’obtenir notre licence.

Ce projet a pour intitulé : « L’implémentation d’attaques de type Man In The Middle ». C’est
un projet qui nous a attiré tous les trois. Effectivement, un pirate informatique peut écouter
n’importe quelles communications entre un client et un serveur, et ainsi voler les informations
échangées tels que des mots de passe ou des données sensibles. En effet, à l’heure actuelle,
la sécurité du système d’informations est quelque chose de très sensible dans toutes les
entreprises, il n’est pas concevable pour une entreprise de se faire voler des informations par
des concurrents.

Pourtant, grâce à certaines techniques, un pirate peut contourner les sécurités mises en
œuvre et parvenir à voler les informations. C’est principalement par cette motivation que
nous avons décidé de nous orienter vers ce sujet, que nous trouvons très intéressant et
enrichissant, pour la suite de nos expériences professionnelles.

Ce rapport a pour objectif de répondre à la thématique suivante : Comment et pourquoi


effectuer des attaques de type Man In The Middle ?

Pour répondre à cette problématique, nous allons tout d’abord présenter le contexte de
notre entreprise fictive en détaillant les besoins et les outils de cette entreprise. Dans un
second temps, nous détaillerons les différents types d’attaques Man In The Middle existantes
ainsi que les outils pour les réaliser. Nous terminerons ce rapport en présentant les différents
mécanismes nous permettant de nous défendre.

GRZESKIEWICZ Teddy
5
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

I. Contexte du projet (fictif)


a) L’entreprise Tout & Bon

L’entreprise « Tout & Bon » est une société du domaine agroalimentaire basé à
Clermont-Ferrand (63 000). Cette société a pour activité principale la création de recettes de
spécialité Auvergnate, existante depuis 2012 cette société est en pleine croissance et compte
actuellement 65 salariés et plus de 10 clients tels que des grandes surfaces, des revendeurs...

Figure 1 : Logo de l’entreprise

Cette société comprend plusieurs services. Tout d’abord, un service de Recherche pour
la recherche et découverte de nouvelle recette pour les clients. Un service de Production de
plat cuisiné. Le service de Dégustation pour valider les nouveaux produits avant la mise en
vente. Un service de Communication et Administratif pour la communication avec les clients,
les prestataires, les partenaires pour assurer la bonne communication et la publicité de
l’entreprise. Un service Commercial qui s’occupe de la relation clientèle et de la vente chez les
professionnels et les distributeurs. Et évidemment un service Informatique pour assurer le
bon fonctionnement de tout ceci avec les nouvelles technologies.

Malgré que la société veuille devenir leader sur le marché de l’agroalimentaire


Auvergnat, elle ne possède pas de politique de sécurité rigoureuse permettant d’éviter le vol
d’informations et de données de la part de ses concurrents.

Sa politique de sécurité minime s’applique cependant à tous les salariés de l’entreprise.


Ils utilisent des outils informatiques très ciblés pour différentes raisons. Tout d’abord
GRZESKIEWICZ Teddy
6
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

l’entreprise a besoin d’un accès internet pour le service de Recherche pour les nouvelles
recettes (navigateur internet imposé  Mozilla Firefox), ensuite un client de transfert de
fichier pour échanger des données en interne comme en externe avec des partenaires (client
FTP imposé  FileZilla) et pour terminer un client de messagerie pour l’échange d’information
aussi bien en interne qu’en externe (client messagerie imposé  Thunderbird).

Nous allons maintenant analyser le réseau de l’entreprise.

b) Le réseau de l’entreprise

Figure 2 : Réseau de l’entreprise

Le réseau de l’entreprise est composé des éléments suivants :

 Un serveur LDAP pour l’authentification des salariés en interne. C’est le contrôleur du


domaine.
 Un serveur FTP qui est utilisé pour partager les données concernant l’avancement sur
les projets ainsi que les informations concernant les produits.
 Un serveur WEB qui héberge à la fois le site web de l’entreprise qui est utilisé comme
publicité, mais aussi héberge un intranet pour la gestion des données interne à
l’entreprise.

GRZESKIEWICZ Teddy
7
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

 Un serveur MAIL qui assure les échanges mails de l’entreprise aussi bien en interne
qu’en externe.
 Et une soixantaine de postes informatiques pour les salariés.

c) Les besoins et les outils de l’entreprise

Afin de répondre à ces besoins, la société a mis en place les outils suivants :

 Navigation internet / intranet : Navigateur internet Mozilla Firefox,


Serveur web Apache2 (HTTP/HTTPS)
 Transfert de fichiers : la société utilise le client lourd FileZila pour récupérer les fichiers
sur un serveur ProFTPD (FTP)
 Messagerie électronique : utilisation d’un serveur Postfix (SMTP) et d’un client lourd
Thunderbird

Présentation des protocoles de communication utilisés :

HTTP : le HTTP (HyperText Transfert Protocol) ou protocole de transfert hyper texte est un
protocole de niveau application pour les systèmes d’information multimédia distribués et
collaboratifs. Il est utilisé depuis 1990 par l’initiative mondiale d’information de la toile
(World-Wide Web). Ce protocole fonctionne sur n’importe connexion, il utilise le protocole
TCP comme couche de transport.

Il fonctionne suivant le mode Client / Serveur, un client HTTP est plus communément appelé
un navigateur internet. Pour les échanges le port TCP utilisé est le port 80. C’est donc un
moyen de communication entre un ordinateur et un serveur fait pour le web.

HTTPS : le protocole HTTPS est la version sécurisée du protocole HTTP, elle est la combinaison
du HTTP avec une couche de chiffrement comme TLS. HTTPS permet au visiteur d’un site
internet de vérifier l’identité du site web auquel il accède, grâce à un certificat
d’authentification. Il garantit la sécurité de l’utilisateur ainsi que la confidentialité des
informations reçues, il est généralement utilisé pour le commerce électronique ainsi que la
consultation de site bancaire.

GRZESKIEWICZ Teddy
8
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

TLS : Transport Layer Security, est un protocole de sécurisation assurant la confidentialité des
informations échangées entre des applications et leurs utilisateurs sur internet. TLS ou
anciennement SSL permet de satisfaire aux objectifs de sécurité suivants :

 L’authentification du serveur.
 La confidentialité des données échangées.
 L’intégrité des données échangées.
 De manière optionnelle, l’authentification du client, bien qu’elle soit souvent assurée
par le serveur.
Il est très largement utilisé, car il est totalement transparent.

Pour la suite du rapport, il est nécessaire d’expliquer le fonctionnement en détail de ce


protocole, il sera détaillé dans la partie 2.

FTP : File Transfer Protocole (protocole de transfert de fichier) est un protocole de


communication permettant le transfert de fichier dans un réseau. Plus simplement il permet
à un ordinateur de copier, créer, modifier ou supprimer un fichier présent sur un autre
ordinateur. Ce protocole est généralement utilisé dans le cadre de la mise en place d’un site
web chez un hébergeur pour transférer des données.

SMTP : Simple Mail Transfer Protocol (protocole simple de transfert de courrier) est un
protocole de communication utilisé pour transférer les courriers vers un serveur de
messagerie. Plus simplement, le protocole SMTP est celui qui est utilisé lorsqu’une personne
envoie un courrier électronique, il vérifie la bonne existante des destinataires et de l’émetteur
puis il transmet le courrier.

IMAP : (Internet Message Access Protocol) est un protocole qui permet d’accéder à ses
courriers électroniques en se connectant aux serveurs de messagerie. Le protocole effectue
une synchronisation de la boîte aux lettres par rapport au serveur. Il nous affiche donc une
copie de notre boîte aux lettres.
GRZESKIEWICZ Teddy
9
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

POP : Post Office Protocol (Protocole du bureau de poste) est un protocole qui permet de
télécharger les courriers électroniques situés sur un serveur de messagerie électronique
directement sur notre machine. Contrairement à IMAP, les mails récupérés par POP sont
enregistrés en local et ne sont donc plus présents sur le serveur de messagerie.

Malgré les différents éléments de sécurité du réseau de l’entreprise, un pirate a réussi


à s’infiltrer et effectuer des attaques de type Man In The Middle. Ce qui lui a permis de
récupérer des informations et données sensibles de l’entreprise.

Dans la seconde partie de ce rapport, nous allons donc voir les différentes méthodes
d’intrusions et les outils utilisés pour réussir ce genre d’attaque.

GRZESKIEWICZ Teddy
10
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

II. Man In The Middle


a. Les moyens d’intrusions sur un réseau

Un réseau informatique d’entreprise même étant sécurisé comprend quand même des
failles d’intrusions pour un pirate. Nous allons présenter les différents moyens existant pour
s’introduire sur un réseau.

L’introduction filaire :

Généralement dans les entreprises, chaque prise Ethernet présente dans les salles de
réunion, salles d’attente, bureaux, est câblée jusque dans la salle serveur et connectée sur des
switches qui accèdent au réseau de l’entreprise et à internet. Il est rare que certaines prises
ne soient pas câblées jusqu’aux équipements d’interconnexions.

Ce qui implique donc que toute personne présente dans l’entreprise, et qui se
connecte sur une prise Ethernet avec son ordinateur portable accède à toutes les ressources
disponibles (hormis les dossiers comprenant des droits spécifiques) et à internet. Il y a de
faibles chances pour que la personne se connectant veuille effectuer du vol d’informations ou
des attaques Man In The Middle, mais cela peut arriver.

Dans notre contexte, le pirate qui est un commercial externe de l’entreprise avait un
rendez-vous avec les dirigeants de l’entreprise pour la signature d’un nouveau contrat de
partenariat. Cet intervenant est arrivé avec son ordinateur portable et s’est connecté à l’aide
d’un câble Ethernet pendant la réunion, sur le réseau de l’entreprise pour accéder à internet
et à ces ressources distantes. Malheureusement, cette personne en a profité pour effectuer
une attaque Man In The Middle et ainsi récupérer des informations et des données sensibles.

GRZESKIEWICZ Teddy
11
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

L’introduction sans-fil :

Très fréquemment, un réseau wifi (de type hot spot) est disponible dans les
entreprises, qu’il soit pour les salariés ou pour les intervenants extérieur. Il est très souvent le
cas que ce réseau ne soit pas parfaitement sécurisé voir très peu sécurisé et même pas du
tout à certains endroits pour faciliter la connexion des salariés.

Mais avoir un réseau wifi disponible dans une entreprise est un risque supplémentaire
d’intrusion de la part d’un pirate. En effet il est très facile de se connecter à un réseau wifi qui
est sécurisé par mot de passe.

Il existe des outils tels que « Aircrack-ng », qui permettent de casser des clés wifi
(WEP). Cet outil va capturer des paquets encryptés pour ensuite retrouver la clé WEP en
utilisant différentes méthodes. Nous ne détaillerons pas ces méthodes, car ce n’est pas dans
le but de notre projet.

Le Social Engineering :

Le social engineering est une technique qui a pour but de récupérer des
informations (mot de passe, identifiant...) à des personnes sans qu’elles s’en rendent compte.
Elle ne nécessite donc pas de logiciel spécial. Cette méthode se base sur les failles humaines
des salariés d’une entreprise, par exemple le fait d’écrire son mot de passe sur un post-it à
côté de notre clavier, ou bien de laisser la session de l’ordinateur ouverte lors d’une absence
même de courte durée. Il est aussi courant de nos jours que des informations soient prises sur
des personnes pouvant disposer d’accès intéressant pour un pirate généralement grâce aux
réseaux sociaux.

Cette faille permet donc d’avoir accès à différentes ressources sans réellement
utiliser de méthodes techniques. Le meilleur moyen de défense contre cette méthode est le
fait de sensibiliser les employés de l’entreprise.

GRZESKIEWICZ Teddy
12
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Après avoir présenté les différents moyens d’intrusion, la prochaine partie expliquera le
principe du Man In The Middle.

b. Le principe du Man In The Middle

a. Explication du principe

L’attaque Man In The Middle est une technique de piratage informatique consistant à
intercepter des échanges entre deux personnes ou deux ordinateurs pour récupérer des
informations. Man In The Middle signifie l’homme du milieu. L’attaque se déroule entre trois
personnes, un client qui souhaite communiquer avec un serveur et un pirate (attaquant) qui
va pouvoir se faire passer pour le client auprès du serveur et pour le serveur auprès du client.
L’attaquant doit donc être capable de recevoir les messages des deux parties et d’envoyer des
réponses à une partie en se faisant passer pour l’autre, sans éveiller de soupçons chez les
autres parties. Il existe différentes méthodes d’attaque de type man in the middle que nous
expliquerons plus loin dans ce rapport.

Prenons l’exemple de la cryptographie asymétrique. Les deux personnes (Alice et Bob)


possèdent chacune leur clé publique et leur clé privée. La clé publique est utilisée pour chiffrer
le message et la clé privée pour le déchiffrer. Pour qu’un échange soit sécurisé entre Alice et
Bob ils doivent donc s’échanger leur clé publique. Alice envoie un message à Bob en chiffrant
ce message avec la clé publique de Bob, et Bob le déchiffre donc avec sa propre clé privée.

Mais imaginons qu’un attaquant, que nous appellerons Intrus s’interpose entre Alice
et Bob pendant qu’ils échangent leur clé publique. Et cet intrus échange la clé publique d’Alice
et la clé publique de Bob avec sa propre clé privée à lui.

Alice pense donc chiffrer le message avec la clé publique de Bob alors qu’en réalité le
message est chiffré avec la clé publique de l’intrus. Celui-ci à la réception du message le
déchiffre donc avec sa propre clé privée, et le chiffre ensuite avec la clé publique de Bob.
L’intrus peut donc modifier le message, le supprimer… et ensuite le renvoyer chiffré avec la
clé publique de Bob.

C’est donc une attaque de type Man In The Middle.

GRZESKIEWICZ Teddy
13
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

b. L’usurpation d’adresse IP

Le pirate, une fois introduit sur le réseau de l’entreprise, utilise une suite d’outils qui
lui permettra d’effectuer une attaque Man In The Middle et ainsi outrepasser et détourner
certains mécanismes de sécurité.

L’action principale permettant de réaliser ce type d’attaque est l’ARP spoofing. Cette
action est basée sur une falsification des mécanismes mis en place par le protocole ARP que
nous allons vous présenter.

ARP : Le protocole ARP intervient parmi la couche des protocoles internet de la suite TCP/IP,
il en est un des protocoles les plus importants de cette suite, car il permet de faire la
correspondance entre l’adresse physique d’une carte réseau et une adresse IP, voilà pourquoi
il est appelé Protocole de Résolution d’Adresse (Address Resolution Protocol en anglais).

Pour faire cette correspondance entre les adresses physiques et les adresses IP, le protocole
ARP interroge les machines du réseau afin d’obtenir les informations le concernant, puis il crée
une table nommée « Table ARP » qui permet l’enregistrement des correspondances
d’adresse. Chaque machine du réseau possède sa propre table ARP.

Lors d’une communication entre les machines, elles consultent leurs tables ARP. Si une
adresse qui est demandée lors d’une communication ne s’y trouve pas, le protocole ARP émet
une requête sur le réseau. Cette requête est émise à destination de l’ensemble des machines
du réseau, à la réception de cette requête, elles vont toutes comparer cette adresse à la leur.
Si l’une de ces machines répond en s’identifiant à cette adresse, alors ce couple d’adresse sera
enregistré dans la table ARP.

GRZESKIEWICZ Teddy
14
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

ARP spoofing

L’ARP spoofing ou ARP poisoning est une technique qui vise à détourner les
mécanismes de fonctionnement du protocole ARP afin d’usurper l’identité d’une machine sur
un réseau.

Grâce à cette technique, on peut détourner les flux de communication entre une
machine et un routeur ou un serveur, en faisant transiter les flux par la machine réalisant
l’attaque.

Pour réaliser cette attaque, l’attaquant créé lui-même des paquets ARP grâce â un outil
tel qu’Arpspoofing qui permet de dire à une machine que cette adresse IP correspond à cette
adresse physique. C’est ainsi que l’attaquant va envoyer au routeur ou au serveur un paquet
contenant les informations suivantes :

Ip_source= « adresse IP de la victime »

Mac_source= « adresse physique de l’attaquant »

Ip_destination= « adresse IP du routeur/serveur »

Type= « is-at » (correspond à une réponse du type IP source = adresse mac)

Le résultat de cette requête est grossièrement : « <adresse IP victime> is-at <adresse mac
attaquant>

À la suite de la réception de ce paquet par la machine qui a l’ip_destination, elle met à jour sa
table ARP avec la nouvelle correspondance. Afin que cette technique soit fonctionnelle, il faut
envoyer le paquet d’usurpation environ une fois toutes les secondes, car cela permet de
rendre impossible à la machine cible la mise à jour de sa table ARP avec les bonnes
correspondances (@ MAC  @ IP).

GRZESKIEWICZ Teddy
15
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Pour illustrer le fonctionnement de cette attaque, voici les deux schémas suivants.

Le trafic normal sur un réseau :

Figure 3 : Trafic réseau normal

Comme nous pouvons le voir sur la Figure 3 ci-dessus, lors d’un trafic normal la cible
ou n’importe qu’elle machine communique avec un serveur ou routeur à travers un ou
plusieurs switches. C’est ce switch qui permet de rediriger le trafic vers le bon destinataire.

Trafic durant l’ARP Spoofing :

Figure 4:Trafic d'ARP Spoofing

La figure 4 ci-dessus nous montre cette fois le trajet du trafic durant l’ARP Spoofing. En
constate donc bien que tous les trafics passent à travers le poste du pirate. C’est lui-même qui
joue donc le rôle du switch en redirigeant les trafics reçus de la cible vers le routeur, le pirate
peut donc consulter, modifier, supprimer les informations reçues avant de les retransmettre
au routeur. Et ensuite, effectuer les mêmes opérations lors du retour du trafic allant du
routeur jusqu’à la cible.
GRZESKIEWICZ Teddy
16
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Nous allons maintenant vous présenter un outil permettant de réaliser cette attaque.

Arpspoof : Cet outil au nom très explicite provient de la suite dsniff qui est un paquet
disponible sous GNU/Linux. Cette suite contient beaucoup d’autres outils, mais dans notre
cas, nous allons simplement nous intéresser à Arpspoof.

Premièrement il faut télécharger le paquet avec la commande suivante :

apt-get install dsniff

Après cette commande, le paquet Arpspoof est disponible. Son utilisation est la suivante :

Arpspoof –i [interface réseau] [adresse IP à usurper] –t [adresse IP du routeur / serveur]

 Exemple : dans un réseau où les adresses sont les suivantes :


 Routeur : 192.168.0.1
 Cible : 192.168.0.20
 Interface: eth0 (interface Ethernet)
La commande arpspoofing est la suivante :

arpspoof –i eth0 192.168.0.20 –t 192.168.0.

Nous pouvons voir le résultat de cette commande grâce à un logiciel d’analyse de trame
comme Wireshark. Les captures de trame Wireshark sont toutes composées généralement de
la façon suivante, mais il est possible de configurer autrement les informations visibles :

 La 1re colonne indique le numéro de la requête.


 La 2e colonne, le temps écoulé depuis le début de la capture de la trame.
 La 3e colonne représente l’adresse source du paquet (adresse IP, MAC…).
 La 4e colonne indique l’adresse de destination du paquet (adresse IP, MAC…).
 La 5e colonne indique le type de protocole présent dans la trame (ARP, ICMP, POP…).
 La 6e colonne est la longueur totale de la trame en bytes.
 La 7e colonne représente les informations contenues dans la trame.

La capture donne le résultat suivant :


GRZESKIEWICZ Teddy
17
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Figure 5 : Trame ARP Wireshark

Sur cette capture, on peut voir que l’attaquant : « Apple_31 : 19 : 26 » envoie des
paquets ARP du type « is at » au serveur « IbmCorp_1d : 33 : 0 b » en lui disant que la nouvelle
adresse physique de la victime « 192.168.0.20 » est l’adresse physique de l’attaquant
« 38:c9:86:31:19:26 ».

Afin de rediriger par la suite les paquets à la victime, il faut sous le système GNU/Linux,
changer un paramètre sur la machine de l’attaquant pour lui dire de faire suivre les paquets à
la façon d’un routeur.

Pour cela il faut passer la valeur du paramètre suivant : /proc/sys/net/ipv4/ip_forwars à 1


avec la commande suivante :

echo 1 > /proc/sys/net/ipv4/ip_forward

L’attaquant se trouve maintenant en position de Man in the middle, le flux de la victime est
redirigé sur le pc de l’attaquant avant d’être renvoyé au routeur ou au serveur.

Une fois ces deux actions réalisées, l’attaquant peut utiliser un programme de capture pour
obtenir en clair des mots de passe et informations du trafic de la victime.

GRZESKIEWICZ Teddy
18
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

c. Man in the middle sur les mails

Dans notre cas, en ce qui concerne les vols d’information de notre société nous allons
présenter comment l’attaquant a pu récupérer les informations contenues dans les mails.

L’exemple suivant est réalisé selon le schéma réseau suivant :

Figure 6 : Trafic des mails

Adresses IP victime : 192.168.0.20

Adresse IP serveur mail : 192.168.0.26

Pour réaliser cette attaque, il faut se placer en position de MITM grâce à la commande
arpspoofing.
arpspoof –i eth0 192.168.0.20 – t 192.168.0.20
Une fois dans cette position, on lance un outil de capture. Nous allons utiliser Wireshark, une
fois lancé nous allons spécifier que l’on veut écouter sur l’interface eth0.
Les paquets devraient commencer à arriver, afin d’obtenir uniquement ce que l’on veut, nous
mettons un filtre sur POP3/IMAP. Lorsque la victime récupérera ses mails nous obtenons les
trames suivantes :

Figure 7 : Trame mails Wireshark

GRZESKIEWICZ Teddy
19
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Si nous regardons le détail de cette trame, voici les informations que nous obtenons :

Figure 8:Détails de trame mail Wireshark

En analysant cette trame, voici les informations que l’on peut obtenir :

Destination : root@licence.rt

Sujet du mail : yhuj

Date d’envoi : 1 juin 2016 20:14:08

Programme de mail : Mozilla Thunderbird 45.1.0

Contenu du mail : testtesttest

Voici les informations que l’on a pu obtenir d’une telle capture, autrement dit l’intégralité des
informations contenues dans le mail. Dans l’utilisation classique des protocoles POP3/IMAP,
toutes les informations sont transmises en clair, de véritables cartes postales.

Il est donc très aisé de s’imaginer les informations que le pirate a pu obtenir, mais ce type de
faille n’est pas uniquement présente sur les mails, voyons voir ce que donne cette faille sur le
protocole FTP.

GRZESKIEWICZ Teddy
20
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

d. Man in the middle sur FTP:


Cette attaque est basée sur le même type d’architecture réseau que l’attaque précédente à
savoir, le schéma suivant :

Figure 9 : Trafic FTP

Adresse IP victime : 192.168.0.20

Adresse IP serveur FTP : 192.168.0.26

Une fois de plus, pour réaliser cette attaque, on se place dans la position d’un attaquant MITM
avec la commande suivante :

arpspoof –i eth0 192.168.0.20 – t 192.168.0.26

Ainsi, nous ouvrons encore notre logiciel de capture de trame Wireshark. Une fois lancé, il
suffit de mettre un filtre sur le protocole FTP, puis attendre que la victime effectue une
demande d’authentification au près du serveur FTP.

Voici une capture du trafic lors de l’identification de la victime :

Figure 10:Trame FTP Wireshark


GRZESKIEWICZ Teddy
21
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Voici les informations que nous pouvons obtenir en analysant les résultats de Wireshark :

Login : lucky

Mot de passe : password

Comme on peut le voir, l’utilisateur est authentifié sur le serveur ftp avec les login et mot de
passe : lucky/password.

e. Man in the middle sur HTTP

Pour effectuer des attaques sur le protocole http nous allons utiliser un outil nommé MITMf
(Man In The Middle framwork)

MITMF est une boîte à outils qui a pour but de fournir un grand nombre d’éléments
permettant de mettre en pratique de nombreuses attaques différentes, dans le cadre où
l’attaquant est en position de man in the middle. Construit à l’origine pour combler les lacunes
d’autres outils utilisés auparavant pour mettre en place ce type d’attaque tel qu’Ettercap ou
Mallory. Il a été presque complètement réécrit de zéro pour fournir un cadre modulaire et
facilement extensible que quiconque peut utiliser pour mettre en œuvre leur propre attaque
man in the middle.

a. Caractéristiques

Le Framework dispose de serveur HTTP, DNS, et SMB préconçut qui peuvent être configurés
et utilisés par l’utilisation de différents plugins. Il contient aussi une version modifiée du
programme SSLStrip qui permet la modification de HTTP et le bypass partiel de HSTS (HTTP
Strict Transport Security) qui est une politique de sécurité des navigateurs internet forçant
l’utilisation du protocole HTTPS.
MITMF modifie la sécurité des sites utilisant le protocole HSTS, en effet lors de la réception de
la requête d’une cible pour accéder à un site web utilisant le HSTS, MITMF va modifier cette
requête en rajoutant un 4e « w » dans l’en-tête de la trame avant de l’envoyer au routeur. Ce
qui va impliquer que le routeur sera donc incapable de répondre et c’est donc à ce moment

GRZESKIEWICZ Teddy
22
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

que le rôle serveur DNS de MITMF va intervenir en redirigeant le trafic vers la version HTTP de
la page demandée. C’est donc de cette façon que MITMF va contourner le HSTS des sites web.

Dans sa version 0.9.8, MITMf supporte le filtrage et la manipulation active de paquets, il


permet de modifier n’importe quel type de trafic ou protocole.
Le fichier de configuration peut être modifié à la volé tant que MITMf est en fonction, ce qui
permet de modifier les paramètres des serveurs ou les options des plugins pendant les
attaques.

MITMf peut capturer les mots de passe et nom d’authentification lors des échanges avec les
protocoles FTP, IRC, POP, IMAP, Telnet, SMTP, SNMP, Kerberos, NTLMv1/v2 ainsi que tout
autres protocoles semblables à HTTP, SMB ou LDAP.

b. Installation

Man In The Middle Framework a besoin de très nombreuses librairies externes, il est donc
vivement recommandé d’utiliser un environnement virtuel python afin d’éviter les conflits de
permission avec les paquets du système.

Les dépendances suivantes sont nécessaires :


python-dev python-setuptools libpcap 8,0 libnetfilter-queue-dev libssl-dev
libjpeg-dev libxml2-dev libxslt1-dev libcapstone3 libcapstone-dev

Vous pouvez les installer avec la commande suivante :


apt-get install python-dev python-setuptools libpcap0.8-dev
libnetfilter-queue-dev libssl-dev libjpeg-dev libxml2-dev
libxslt1-dev libcapstone3 libcapstone-dev

Premièrement, nous allons installer le paquet virtualwrapper qui va nous permettre de créer
notre environnement virtuel. Vous pouvez l’installer avec la commande suivante :
pip install virtualenvwrapper

GRZESKIEWICZ Teddy
23
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Ensuite, il faut éditer le fichier de configuration de votre Shell (.bashrc, .zshrc,..) avec la
commande source pour lier le script d’environnement virtuel à votre Shell. L’emplacement du
script peut être différent selon la distribution de votre système.
source /usr/bin/virtualenvwrapper.sh

Redémarrez ensuite votre terminal pour appliquer la configuration. Maintenant nous allons
créer l’environnement virtuel grâce à python 2.7.
mkvirtualenv MITMf -p /usr/bin/python2.7

Il faut maintenant récupérer l’ensemble des fichiers nécessaires à l’installation depuis le


répertoire git des créateurs du Framework qui est le suivant :
HTTPS://github.com/byt3bl33d3r/MITMF
git clone https://github.com/byt3bl33d3r/MITMf

Ensuite nous initialisons et clonons les sous-modules du répertoire.


cd MITMf && git submodule init && git submodule update --recursive

Puis il faut installer les dépendances de MITMf :


pip install -r requirements.txt

Si toutes les étapes se sont exécutées avec succès, vous pouvez lancer MITMf.
Avec la commande suivante, vous obtiendrez une aide explicative sur le fonctionnement des
plugins et des options du Framework.
python mitmf.py –help

GRZESKIEWICZ Teddy
24
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

c. Mise en œuvre
Comme pour les attaques précédentes, cette attaque suit le schéma réseau suivant :

Figure 11: Trafic HTTP

Adresse IP cible : 192.168.0.18

Adresse IP Routeur : 192.168.0.1

MITMf étant un Framework complet et puissant, ici nous n’avons pas besoin d’utiliser le
paquet arpspoof, car le Framework inclut déjà un module faisant de l’arpspoofing. Voici donc
la commande à exécuter pour lancer le Framework :

python mitmf.py -i eth0 -- spoof --arp -- gateway 192.168.0.1 --target 192.168.0.18

Même si la syntaxe diffère, MITMf utilise le paquet arpspoof de la suite Dsniff pour effectuer
ses requêtes. Une fois cette commande exécutée, nous sommes capables de récupérer le flux
HTTP de la cible, le résultat pour nous est le suivant :

Lors de cette écoute de flux, on voit que la victime fait une requête sur le site internet
cas.u-clermont1.fr.

GRZESKIEWICZ Teddy
25
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Sur la deuxième partie, on voit que la victime vient de remplir un formulaire et qu’il envoie les
informations suivantes au serveur web avec la méthode POST :
username jucheminad1&password P@ssw0rd.

En réalité la partie authentification du site internet cas.u-clermont1.fr est une page sécurisée,
mais grâce à l’utilisation de MITMf, on a pu outrepasser le mécanisme HSTS en forçant la
victime à utiliser le protocole HTTP au lieu de HTTPS.

MITMf n’est pas uniquement tourné vers les attaques du protocole HTTP, il est
possible comme décris plus haut d’attaquer de nombreux autres protocoles non sécurisés.

f. Man the middle sur HTTPS

a. Le protocole TLS

Pour réaliser des attaques sur le protocole HTTPS, il est essentiel de comprendre le
fonctionnement en détail de la partie sécurité de ce protocole qui est basé sur TLS.

Comme expliqué précédemment, le protocole TLS assure l’authentification des


parties, la confidentialité et l’intégralité des données échangées autrement dit l’intégrité. Pour
mettre en place ce mécanisme, TLS utilise en réalité deux protocoles :
 TLS Handshake qui permet l’authentification des parties.
 TLS Record qui permet le contrôle de la confidentialité et l’intégrité des données
échangées.

TLS est un protocole d’échange sécurisé qui permet l’envoi de données chiffrées, de
plus il utilise des certificats au format x509 pour identifier les acteurs de l’échange. Il se situe
un peu au-dessus de la couche 4 du modèle OSI. Le type de cryptographie utilisée pour
permettre le chiffrement des informations est la cryptographie symétrique, par exemple AES
(Advanced Encryption Standard). Les clés générées pour le chiffrement sont générées
uniquement pour chaque connexion. Ces clés sont basées sur un secret qui provient du

GRZESKIEWICZ Teddy
26
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

protocole TLS Handshake. Le transport des informations est fiable, car il y a un contrôle
d’intégrité grâce à l’utilisation d’une fonction de Hachage tel que SHA-1 par exemple.

i. Les certificats.

Afin de communiquer de manière sécurisée, le client commence par identifier le


serveur TLS sur lequel il se connecte.
L’identification du serveur se fait grâce à l’utilisation de certificat au format x509. Ce certificat
contient les informations suivantes :
 Version du certificat.
 Numéros de série du certificat.
 L’objet du certificat.
 Informations sur la clé publique
o Algorithme de la clé publique.
o Clé publique.
 Identifiant unique du signataire du certificat.
 Identifiant unique du détenteur du certificat.
 Extensions
o Liste des extensions
 Signature des informations précédentes par l’autorité de certification

Ce certificat est délivré et signé par des autorités de certification (AC). Les certificats
sont dits de confiance, car ils proviennent d’autorités de certification qui sont incluses dans
les « listes blanches » des navigateurs internet. Ces certificats sont utilisables jusqu’à la fin de
leur validité ou jusqu’à ce qu’ils soient révoqués par l’autorité de certification. Afin de
comprendre au mieux les échanges entre le client et le serveur, nous allons détailler le
fonctionnement de ces deux protocoles (TLS Handshake / TLS Record).
Pour plus de précision, tous les échanges seront détaillés un par un.

ii. TLS ShandShake


Le protocole d’échange TLS Handshake est construit de la façon suivante :
GRZESKIEWICZ Teddy
27
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Figure 12 : TLS HandShake

1 : ClientHello
La négociation commence, le client envoie ce message, « Client Hello ». Dans ce
message, le client propose un ensemble de suites cryptographiques qu’il est capable de
mettre en œuvre. Dans chacune de ces suites, sont décrits des mécanismes cryptographiques
correspondants aux quatre étapes suivantes :

 Création des éléments secrets de la session


 L’authentification des parties
 Chiffrement des données
 Protection en intégrité des données
Lors de la réception du message ClientHello par le serveur, deux cas de figure peuvent
de présenter :
- Aucune des propositions émises par le client n’est jugée acceptable, le serveur met
alors fin à la connexion avec un message de type Alert.
- Dans le deuxième cas, le serveur choisit une suite cryptographique parmi celles que le
client a proposées. Le serveur répond alors avec le message ServerHello
2 : ServeurHello

Après le ClientHello le serveur répond par ce message afin de préciser quelle suite
cryptographique il a choisi dans celles proposées par le client. Il choisit la suite
cryptographique de deux manières différentes :

- Le serveur parcourt la liste des suites, et il choisit la première suite qu’il supporte.

GRZESKIEWICZ Teddy
28
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

- Le serveur parcourt sa liste de préférence, et choisit la première suite qui se trouve


dans la liste du client.
Ce message contient aussi une valeur aléatoire appelée ServeurRandoparcoure. De manière
générale, TLS préfère maintenant la suite : TLS_RSA_WITH_AES_128_CBC_SHA256,
comparé à la suite TLS_RSA_WITH_RC4_128_MD5 qui est maintenant cassée. Ici RSA est
utilisé pour l’établissement de la connexion puis par la suite lors de l’échange des secrets de
la session.

Voici une capture d’un paquet ServerHello contenant les informations concernant le choix de
la suite cryptographique :

Figure 13 : Paquet ServerHello de TLS

3 : Certificate (optionnel)

Le serveur envoie une chaîne de certificat, le premier est celui du serveur, le dernier est celui
de l’autorité de certification. En voici un provenant d’une capture Wireshark :

Figure 14: Capture de trame de certificat avec Wireshark

4 : certificat request (optionnel)

Le serveur fait une demande de certificat au client pour qu’il puisse l’authentifier.

GRZESKIEWICZ Teddy
29
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

5: Server key exchange (optionnel)

Message complémentaire qui contient la clé publique du serveur utilisée par le client pour
chiffrer les informations de clé de session.

6 : Server Hello Done

Ce message annonce la fin d’émission d’informations du serveur.

7 : Certificate (optionnel)

Le client envoie son certificat au serveur afin qu’il puisse l’authentifier.

8: Client key exchange

Le client crée un secret prémaître (pre-master key) et le chiffre avec la clé publique du serveur
reçu dans le message 5.

9 : Change Cipher Spec

Passage du client en mode chiffré avec la clé master comme clé symétrique

10 : Certificate Verify (optionnel)

Ce message contient un hash signé numériquement qui est créé à partir des
informations de clé et de tous les messages précédents. Ce message permet de confirmer au
serveur, de vérifier si le client possède la clé privée qui correspond au certificat client du
message 7.

11 : Client Fnished

Le client a fini d’émettre ces informations, il envoie ce message chiffré à l‘aide des paramètres
contenu dans la suite cryptographique.

12 : Change Cipher Spec

Le Serveur passe en mode de connexion chiffré grâce à la clé master.

13 : Server Finished

Le serveur informe le client qu’il va passer en mode chiffré, ce message est lui aussi chiffré
avec les paramètres inclus dans la cuite cryptographique.

14 : Encrypted Data

GRZESKIEWICZ Teddy
30
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Le tunnel TLS est maintenant opérationnel, c’est maintenant le TLS Record Protocol qui prend
la suite des opérations pour chiffrer les données.

iii. TLS Record

Ce protocole représente le niveau inférieur de l’application de TLS. C’est lui qui va encapsuler
les messages et assurer la confidentialité et l’intégrité.

Afin d’être mis en œuvre, il suit les étapes suivantes :

Figure 15: Protocole TLS Record

Étape 1 : Les blocs de données sont découpés en fragment de 16 Ko maximum

Étape 2 : Une compression est appliquée sur le fragment (optionnel). Si les blocs sont très
courts, cette compression augmente la taille initiale du bloc.

GRZESKIEWICZ Teddy
31
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Étape 3 : Une empreinte est prise de C.1 (corresponds au fragment compressé). L’algorithme
qui permet ce hachage est spécifié dans le message « cypher Suite » du protocole Handshake.

Étape 4 : l’empreinte est concaténée avec le fragment compressé C.1 et donne le


message M.1.

Étape 5 : Ensuite lors de cette étape le message M.1 est chiffré par l’algorithme symétrique
en utilisant la clé symétrique échangé lors de l’Handshake. Le résultat de cette opération crée
le message chiffré Mc.1.

Étape 6 : Une en-tête est ajouté au paquet, cette en-tête contient un champ type qui définit
le type du protocole de niveau supérieur. Ces types sont les suivants :

- 20 : ChangeCipherSpec Protocol
- 21 : Alert Protocol
- 22 : Handshake Protocol
- 23 : Application Protocol
Étape 7 : Le message est transmis à la couche transport, de manière générale TCP.

Voici la présentation du fonctionnement de TLS. Dans la suite de ce rapport, vous


allez découvrir une attaque sur le protocole HTTPS, mais cette attaque n’exploite pas une faille
de TLS. Cette attaque va fonctionner sur le principe d’une attaque Man In The Middle en
prenant l’identité du serveur pour le client, et celle du client pour le serveur.

GRZESKIEWICZ Teddy
32
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

b. L’attaque
Pour réaliser cette attaque, il faut se placer en position de MITM et utiliser un serveur proxy
un peu particulier.

L’attaque est réalisée selon le schéma réseau suivant :

Figure 16: Trafic HTTPS avec MITM proxy

c. MITMproxy

i. Description :

MITMproxy est un outil extrêmement flexible. Savoir exactement comment fonctionne le


programme de proxy vous aidera à le déployer, et à tenir compte de ses fonctions
fondamentales et la façon de l’utiliser. Cette partie du rapport explique le mécanisme de proxy
de MITMproxy en détail, en commençant par le plus simple mandatement explicite en clair,
jusqu’à l’interaction la plus compliquée : proxy transparent sur trafic TLS protégé.

ii. Fonctionnalités :

MITMproxy permet de :

 Intercepter les requêtes et réponses HTTP pour les modifier à la volée


 Enregistrer le flux HTTP pour une analyse ultérieure.
 Rejouer le côté client de la transaction HTTP.
 Rejouer les réponses HTTP d’un serveur pour les réexploiter.
 Fonction de proxy inverse pour faire suivre les requêtes HTTP vers un autre serveur.
 Fonctionne en mode proxy transparent sous Linux et OSX.
 Utiliser Python pour faire des modifications sur le trafic HTTP.
 Génération de certificat TLS à la volée pour intercepter le trafic HTTPS.
GRZESKIEWICZ Teddy
33
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

iii. Fonctionnement :

Le MITMproxy dans son nom est synonyme de Man-In-The-Middle, il fait référence au type
d’attaque que nous utilisons pour intercepter et interférer sur des flux de données
théoriquement chiffrées.

L’idée de base est de faire semblant d’être le serveur vers le client, et faire semblant d’être le
client vers le serveur, dans cette configuration nous sommes au milieu des deux côtés et nous
bénéficions donc d’un trafic en clair.

La partie délicate est que le principe d’autorité de certification est conçu pour empêcher
exactement ce type d’attaque, en permettant à un tiers de confiance de signer des certificats
TLS d’un serveur pour vérifier qu’ils sont légitimes comme nous l’avons vu dans la description
de TLS.

Si cette signature ne correspond pas ou est d’un parti qui ne correspond pas à un tiers de
confiance, le client va simplement abandonner la connexion et refuser de poursuivre les
échanges.

Malgré les nombreuses lacunes du système d’autorité de certification tel qu’il existe
aujourd’hui, il est généralement fatal aux tentatives de MITM sur connexion TLS.

La réponse à ce problème est de devenir une autorité de certification de confiance nous-


mêmes. MITMproxy inclut l’implémentation d’autorité de certification complète qui génère
des certificats à la volée pour intercepter le trafic. Pour que le client fasse confiance à ces
certificats, nous enregistrons manuellement MITMproxy comme une autorité de certification
de confiance.

MITMproxy permet d’interagir avec les protocoles HTTP et HTTPS, mais comme nous avons
présenté les attaques sur HTTP avec l’outil MITMf, ici nous allons uniquement présenter
l’utilisation de MITMproxy sur HTTPS.

Un proxy conventionnel ne peut pas manipuler les flux TLS chiffrés, alors lorsqu’un client émet
une simple requête CONNECT cela demande simplement au proxy d’ouvrir un tunnel entre le
GRZESKIEWICZ Teddy
34
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

client et le serveur. Le proxy fait simplement suivre le flux sans pouvoir en connaître le
contenu. La négociation TLS se fait en dehors du tunnel ce qui rend complètement opaques
les requêtes et réponses pour le proxy.

Avec MITMproxy cela est différent, son but est de séparer le flux en deux. Il fait croire au client
qu’il est le serveur et au serveur qu’il est le client. Il y a donc pour le coup deux connexions
TLS.

Le mécanisme de MITMproxy permettant de faire cette attaque est que dans un


premier temps, dès qu’il reçoit du client une requête CONNECT, MITMproxy répond au client
en lui disant que la connexion est établie, comme si le tunnel de connexion était prêt. Le client
croit donc qu’il est en relation avec le serveur voulu, il initie donc la connexion TLS avec
l’extension SNI (Server Name Indication) ce qui lui permet de déclarer le nom du serveur avec
qui il tente de démarrer une connexion TLS. Ensuite MITMproxy se connecte au serveur en
utilisant le SNI indiqué par le client, alors le serveur répond avec un certificat qui correspond
et qui contient le CN (common name) et le SAN (Subject Alternative Name : permets de
spécifier des noms de domaine alternatif sur un certificat). MITMproxy génère alors un
certificat dit « d’interception » et continu le Handshake avec le client mis en pause
précédemment. Le client envoie alors une requête comme quoi la connexion est établie,
MITMproxy va donc passer cette requête au serveur et terminer la phase de négociation.

Le flux de la connexion apparaît, et est donc à présent en clair sur la machine qui exécute
MITMproxy.

GRZESKIEWICZ Teddy
35
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Pour illustrer cet échange, voici l’image suivante tirée de la documentation officielle :

Figure 17: Schéma attaque Mitmproxy

d. Mise en pratique.

Pour réaliser cette attaque, nous allons prendre le cas typique ou un employé est connecté
avec son téléphone portable ou sa tablette sur un hotspot de la société.
La première étape bien commune aux autres attaques présentées, est bien évidement de se
placer dans la position d’un man in the middle en utilisant l’arpspoofing.
Dans ce cas les adresses IP sont les suivantes :
Victime : 192.168.0.20
Routeur : 192.168.0.1
La commande arpspoof est donc la suivante :
arpspoof –i eth0 192.168.0.20 – t 192.168.0.1

Une fois cette commande réalisée vous faites donc croire au routeur que vous êtes le client.
Ensuite il faut bien évidemment activer l’ip_forward afin de rediriger les paquets en
provenance du routeur vers le vrai client.

La deuxième étape est de préparer le terrain à MITMproxy pour qu’il puisse récupérer les flux
de connexion HTTP et HTTPS sur ces ports d’écoutes. Vous pouvez réaliser cela en faisant de

GRZESKIEWICZ Teddy
36
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

la redirection de paquet grâce à Iptables. Le port d’écoute de base de MITMproxy est 8080,
les deux règles correspondent au résultat que nous voulons obtenir sont les suivantes :

iptables -t nat -À PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-


port 8080

iptables -t nat -À PREROUTING -i eth0 -p tcp -- dport 443 -j REDIRECT -- to-


port 8080

Une fois cette étape réalisée, nous pouvons lancer MITMproxy. Afin d’obtenir les résultats
voulus, certains paramètres sont nécessaires. Le premier est d’activer le paramètre –T, ce
paramètre va indiquer à MITMproxy qu’il doit agir de manière transparente. C’est-à-dire qu’il
ne nécessite pas que le client inscrive le proxy dans ses paramètres de navigateur. Ensuite
pour avoir une visualisation plus claire des données que nous recevrons, nous pouvons
spécifier l’option –host, cette option permet de séparer les flux capturés selon leur nom
d’hôte. La commande pour lancer MITMproxy est :

Mitmproxy –T –host

Notre attaque est presque montée, il ne manque plus qu’un élément, le certificat. Il faut
trouver un moyen pour que l’appareil de la victime installe un certificat depuis le domaine
« mitm.it » ou depuis le fichier contenant le certificat, cette installation peut se faire sur les
mobiles, tablettes et pc en envoyant le certificat du proxy en pièce jointe d’un mail par
exemple, puis en l’installant dans la liste des certificats de confiance du navigateur internet.
Pour arriver à ces fins, le pirate dispose de plusieurs moyens, le premier est de profiter de la
crédulité de la victime en lui indiquant que la pièce jointe du mail est un composant visant à
améliorer la sécurité de son navigateur. Il est aussi possible comme nous l’avons vu
précédemment d’ajouter le fichier du certificat au serveur ftp puis usurper une adresse email
interne de la société et ensuite informer les victimes que ceci est un fichier important à
installer pour qu’ils poursuivent leur travail. Les moyens ne manquent pas, de plus il est aussi

GRZESKIEWICZ Teddy
37
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

possible de le masquer dans un autre fichier, un PDF par exemple puis exécuter son
installation lors que la victime ouvre le fichier.

Une fois le certificat installé les données en provenance du flux HTTPS apparaissent en clair
sur l’ordinateur du pirate.

Il obtient par exemple les informations suivantes qui se trouvent sur les captures :

Figure 18 : Étapes TLS réussies

Ici sur cette capture nous pouvons voir que toutes les étapes de TLS on était réalisées avec
succès.

Figure 19 : Récupération informations en clair sur HTTPS

Et ici sur cette capture nous pouvons constater que nous avons les données en clair qui
transite par le flux TLS, pour illustrer cet exemple nous avons fait l’attaque sur le même site
que dans notre partie sur HTTP, or dans cet exemple, nous n’avons pas forcé l’utilisation de
HTTP, cela est prouvé par le nom de la requête en elle-même qui porte sur le site https://cas.u-
clermont1.fr.

GRZESKIEWICZ Teddy
38
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Nous avons réalisé des attaques de type Man-In-The-Middle sur les protocoles
HTTP/HTTPS, POP/IMAP, et FTP. Ces attaques ne sont que des exemples, bien d’autres
protocoles non sécurisés sont sensibles à ce type d’attaque. Dans la partie suivante, nous allons
reprendre les attaques précédemment expliquées et mettre en place des mécanismes de
défense pour ne plus être victimes de vol d’informations.

III. Moyens de défense

Afin de protéger au mieux les échanges de notre entreprise, nous allons mettre en place
certains mécanismes qui vont rendre plus difficile les attaques du type man in the middle.

Nous avons pu remarquer tous au long de ce rapport, que l’ensemble des attaques était toutes
basé sur l’arpspoofing, c’est pourquoi il nous semble judicieux de sécuriser cet aspect.

a) Protection du protocole ARP

Une technique pour se protéger face à l’arpspoofing est d’entrer de manière statique
toutes les adresse IP des éléments actifs qui communiqueront entre eux dans la table ARP de
chaque élément actif. Cela peut être une action fastidieuse, mais cela permet d’éviter
l’usurpation d’adresse IP, car un élément actif qui recevra une requête lui demandant de
mettre à jour sa table, il la rejettera, car l’IP ne correspondra pas à l’adresse MAC qui est fixée
de manière statique dans la table.

Il existe aussi des outils qui permettent de surveiller les tables ARP des éléments actifs, et que
même si par n’importe quel moyen elles sont modifiées, ces logiciels leur rendent leurs
paramètres statiques.

ANTI-ARP : Ce logiciel dispose de fonctions qui permet de détecter les attaques du type
arpspoofing, il permet aussi de faire des vérifications sur l’état des tables ARP, et peu la
modifier en ajoutant des correspondances. L’interface du programme se présente sous la
forme suivante :

GRZESKIEWICZ Teddy
39
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Figure 20 : Anti-Arp

Un outil de log permet d’avoir une visualisation dans le temps des changements qui ont eu lieu ou des
évènements douteux qui méritent l’attention de l’utilisateur, cet outil se présente sous la forme
suivante.

Figure 21:Log du logiciel Anti-Arp


GRZESKIEWICZ Teddy
40
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

De nombreux autres outils sont disponibles, mais la base de tous est l’utilisation des tables
ARP avec des correspondances statiques.

b) Le chiffrement de mail

Comme nous l’avons vue précédemment, les mails échangés au sein de la société sont de
véritable carte postale, du moment que les paquets ont était récupérés par un attaquant, tout
leur contenu est dévoilé. Afin de rendre ses échanges plus confidentiels, il existe différentes
méthodes. Premièrement nous pourrions implémenter TLS à notre serveur mail, mais comme
vu dans la section d’avant, ce type d’échange est quand même sensible aux attaques de type
MITM. Nous allons donc plutôt nous focaliser sur les mails échangés. La solution que nous
avons choisie est l’utilisation de PGP (Pretty Good Privacy). C’est un logiciel de chiffrement
créé par Philip Zimmermann en 1991.

PGP permet de garantir l’authentification et la confidentialité des communications,


appliquée à l’email, cela va permettre d’envoyer des mails chiffrés et authentifiés par une
signature électronique. Les mécanismes de chiffrement de PGP utilisent la cryptographie
asymétrique, pour garantir l’authentification, le mécanisme est le suivant :

L’expéditeur du mail crée un condensat de son message avec un algorithme de hachage (tel
que SHA-1 par exemple) puis il va chiffrer ce condensat avec sa clé privée et l’ajouter au début
du mail. Le destinataire, à la réception, va déchiffrer le début du message avec la clé publique
de l’émetteur puis extrait le condensat. Il calcule par la suite lui-même un condensat du
message en utilisant la même fonction que l’émetteur, puis il compare ce qu’il a déchiffré, si
à la comparaison les deux éléments ont la même valeur, cela veut dire que le mail n’a pas été
modifié, il est donc authentifié.

Afin de garantir la confidentialité du message PGP, fonctionne selon la manière suivante :

Tout commence par la génération d’une clé secrète de taille variable (par exemple 128
bits) appelée clé de session (valable pour un seul message) le message est ensuite chiffré grâce
à cette clé de session avec un algorithme de cryptographie symétrique. La clé de session est
ensuite chiffrée grâce à la clé publique du destinataire puis elle est ajoutée au début du

GRZESKIEWICZ Teddy
41
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

message. À la réception du mail, le destinataire déchiffre l’en-tête qui contient la clé grâce à
sa clé privée et en extrait la clé de session qui lui permet par la suite de déchiffrer le message.

Afin de rendre le plus efficaces possible ces mécanismes, il faut que les clés de sessions
utilisées par PGP proviennent d’un générateur aléatoire qui ne génère pas de séquence de clé
prévisible.

Afin d’utiliser PGP sur votre client de messagerie, vous devez installer un module. Nous avons
choisi d’installer le module Enigmail, ce module est disponible sur Thunderbird et tous ses
Fork.

Sur Thunderbird, dans les paramètres, vous pouvez accéder à l’onglet module.
Recherchez Enigmail et télécharger le. Une fois téléchargé, Thunderbird va vous demander de
redémarrer pour finir l’installation du module Enigmail.

Une fois le client redémarré, vous avez la possibilité de paramétrer Enigmail dans les options
du client. Une fois dans la partie configuration, plusieurs choix s’offrent à vous, il est conseillé
de choisir le paramétrage par défaut, mais dans les options avancées, vous pourrez choisir le
type d’algorithme et la taille de la clé que vous allez utiliser. Une fois les paramètres voulus et
sélectionnés, vous devez créer une passphrase « sorte de mot de passe ». Une fois ses
paramètres choisis, Enigmail va générer le couple de clés publique/privé.

Figure 22: Génération clés.

Une fois le couple de clés généré, il nous est demandé de créer un certificat de
révocation qui permettra de révoquer votre clé si vous oubliez la passphrase ou bien si elle est
compromise.

Une fois cette étape réalisée, vous êtes prêt à envoyer des mails chiffrés et signés.
GRZESKIEWICZ Teddy
42
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Contrairement au mail non chiffré, voici la trame capturée d’un email chiffré grâce à PGP avec
Wireshark :

Figure 23: Capture trame mali chiffré

Comme vous pouvez le constater, l’ensemble du contenu du mail est complètement chiffré.

Il est donc impossible pour un attaquant dans la position MITM puisse accéder au contenu du
mail. Cela assure donc la confidentialité et l’intégrité du message.

c) Chiffrement du trafic FTP

Afin de sécuriser au mieux les connexions à notre serveur de fichier, il est préférable
d’utiliser le protocole FTP dans sa version sécurisé. FTPS (file transfert protocol secure)
bénéficie comme le protocole HTTPS, de la couche TLS il permet donc à l’utilisateur,
premièrement de s’assurer qu’il dialogue bien avec le bon serveur FTP grâce à l’utilisation du
certificat, puis dans un second temps il permet au client de s’authentifier au serveur dans un

GRZESKIEWICZ Teddy
43
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

tunnel de connexion chiffré, les mots de passe et nom d’utilisateur ne sont donc plus affichés
en clair sur les trames FTP.

Voici un exemple de trame capturé avec wireshark sur le protocole FTPS :

Figure 24: Trame FTPS

On peut donc constater de l’opacité des informations que le pirate peut sniffer. Il est
donc essentiel de mettre en place cet outil afin de sécuriser aux mieux les données et
informations transitant sur le protocole FTP.

Une autre alternative, c’est l’utilisation de SFTP (Secure file transfert protocol). Contrairement
à FTPS qui est un protocole à part entière, SFTP est une extension du Shell SSH qui permet
l’envoi, la réception et la gestion de fichier sur des éléments actifs distants. Il n’offre pas le
même confort d’utilisation que FTP/SFTP, mais il permet de profiter des éléments sécuritaires
de SSH concernant la confidentialité et l’authentification des échanges.

d) Protection des protocoles HTTP / HTTPS

La version sécurisée du protocole HTTP est HTTPS, comme nous avons pu le voir durant ce
rapport, ayant démontré une faille sur l’utilisation de HTTPS, afin de sécuriser au mieux les
communications il nous faut trouver une autre parade. Selon nous l’élément principal sur
lequel nous devons nous focaliser, ce sont les certificats. Pour couper l’herbe sous le pied d’un
attaquant qui aurait comme idée d’utiliser MITMproxy ou une technique semblable, plusieurs
solutions s’offre à nous.

Premièrement il faut utiliser les navigateurs internet dans leurs dernières versions, car cela
met à jour aussi les listes blanches qui permettent de vérifier si les autorités de certification
sont toujours de confiance. Ensuite il est possible d’appliquer certaines règles sous les
environnements de travail Microsoft qui bloquent la modification des paramètres du
GRZESKIEWICZ Teddy
44
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

navigateur internet. Mais la solution la plus utile pour nous est quand même d’informer et de
sensibiliser les employés sur les dangers des ajouts de certificats.

GRZESKIEWICZ Teddy
45
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Conclusion

Nous avons effectué ce projet sans avoir de réelles connaissances dans ce domaine
d’attaque et dans la sécurité de ces attaques. C’est pour cela que nous avons avant tout
effectué de nombreuses recherches sur ce sujet. Des recherches qui ont permis d’obtenir
différentes connaissances dans ce domaine.

Nous avons appris à effectuer ce genre d’attaque, mais avant tout de comprendre les
protocoles qui servent à attaquer et ceux attaqués.

Les attaques man in the middle sont, comme nous avons pu le constater, facilement
exécutables sur un réseau lorsque l’intrusion a eu lieu. Ces attaques mettent en danger les
informations sensibles des entreprises, aussi bien sur la récupération de mail, de fichiers FTP
que de consultation internet. Grâce à ce projet, nous avons également appris à nous protéger
ou du moins minimiser et rendre la tâche plus difficile à un attaquant. C’est pour cela qu’il est
préconisé d’utiliser les protocoles dans leurs versions sécurisées, de posséder des moyens de
détections telles que des serveurs Anti-Intrusion, ainsi qu’une politique de sécurité très stricte
dans des entreprises comportant des informations sensibles. Mais avant tout, la meilleure
solution de défense existante est d’informer les utilisateurs sur les dangers de certaines
pratiques, les sensibiliser et les former.

Aujourd’hui, le domaine informatique est quelque chose de très sensible dans les
entreprises, car c’est le cœur de la société. Nous avons montré durant ce rapport que si ce
service n’est pas sécurisé, il est très facile pour un concurrent d’usurper les données et faire
tomber la société.

Ce projet nous a vivement intéressés et nous a permis d’apprendre énormément de


connaissances dans un domaine très étendu. Grâce à ce projet, nous allons pouvoir en faire
part dans nos entreprises futures pour protéger aux mieux les données et informer les salariés
des risques possibles.

GRZESKIEWICZ Teddy
46
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Bilan humain

Le projet tuteuré est très important pour chaque étudiant. Il permet de se former
pour effectuer des missions de groupe et donc de se séparer les différentes tâches à faire, de
se faire confiance mutuellement et de s’entraider lors de difficultés.

Durant toute la durée du projet, nous avons pu acquérir de nombreuses


compétences, autant au niveau technique qu’au niveau humain. En effet, nous avons
commencé ce projet sans avoir réellement de base dans le domaine technique de ce genre
d’attaque.

De plus, ce projet nous forme donc à de futures mises en situation dans nos propres
entreprises et dans la gestion d’équipe pour certains projets.

GRZESKIEWICZ Teddy
47
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Abstract
As part of the AESR degree at the IUT of Clermont-Ferrand, we had plans to set up
attacks Man In The Middle (MITM). MITM attacks consist in an attacker positioned between
his victim and the server to listen to communication.

The purpose of our project was to create attacks in order to find different solutions in order
to protect the companies. This project was spread over 7 months of the training year starting
from November until June.

We dedicated our time on this project during our training at the IUT but also worked outside
during different periods in our company. The working team consisted of three students:
HUGUET Anthony, CHEMINADE Julien and GRZESKIEWICZ Teddy. This project was supervised
by Mr. David GERAULT who is the tutor of this project, and helped us, advised, brought
additional information throughout the project.

This project is in the center of our profession because the attack is all the time on the
network company.

When we began, the first thing was to understand the different attack methods. We
needed to understand the crypted exchanges and the https protocol.

Secondly, we tested different tools to make the man in the middle attack and
understand this.

We had different results, in function of the protocols we attacked.

Then, we needed to find solutions and methods to defend these attacks.

To conclude, our project was very interesting, because we learned how to be a Man
in the middle position, and give any information in a system. Indeed, we had to be in the
position between the server and the victim. With this method, we took users and passwords
from any sources, and listened to the exchange between servers and victims. It was a good
experience for us, and now, we know how to protect systems to limit the attacks. For the
future, we are aware of the various means of attacks.

GRZESKIEWICZ Teddy
48
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Glossaire

Adresse IP : Numéro d’identification (ipv4 : 4 octets, ipv6 : 16octects) qui est attribué à un

équipement d’un réseau connecté à internet.

Adresses MAC (Adresse Physique) : Une adresse Mac est l’identifiant physique stocké dans une

carte réseau, cette adresse est unique.

Apache 2 : C’est le serveur HTTP sous environnement Linux, le paquet apache2 permet de créer

et mettre en production un site web.

ARP : Protocole de résolution d’adresse, il fait la traduction d’adresse IP en adresse MAC.

Autorité de certification : Tiers de confiance permettant d’authentifier l’identité des

correspondants. Délivre des certificats décrivant des identités numériques et propose des

moyens de vérifier la validité.

Certificats X509 : Utilisé pour identifier et authentifier une personne physique ou morale, mais

aussi chiffrer des échanges. Le certificat X509 est une norme de cryptographique asymétrique.

Commutateur (Switch) : Est un équipement qui relie plusieurs segments dans un réseau

informatique. Il s’agit d’un boitier disposant de plusieurs ports Ethernet (ou fibre).

Cryptographie : Moyen permettant de protéger des messages à échanger.

Cryptographie asymétrique : Cryptographie à clé publique, une clé publique pour chiffrer le

message et la clé privée pour le déchiffrer.

Cryptographie symétrique : Cryptographie à clé secrète, une clé permet de chiffrer et déchiffrer

les messages.

Dsniff : C’est une suite d’utilitaire qui permet d’analyser le trafic réseau et de récupérer des

informations.

Flux : Succession de paquets d’une source vers une destination.


GRZESKIEWICZ Teddy
49
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

FTP : File Transfer Protocol, permet le transfert de fichier par internet.

HotSpot : Point d’accès wifi permet une connexion à un réseau non filaire.

HSTS : Mécanisme de sécurité permettant à un serveur web de déclarer aux clients (navigateur

web) d’utiliser une connexion sécurisée (HTTPS).

HTTP : Protocole de communication web, client – serveur.

HTTPS : Combinaison du protocole HTTP avec la couche TLS pour la sécurité.

IMAP : Protocole d’accès à ses courriers électroniques directement sur les serveurs de

messagerie.

Iptables : Interface en ligne de commande sous environnement Linux, permettant de configurer

un pare-feu sur la machine linux.

LDAP : Lightweight Directory Access Protocol, protocole de gestion d’utilisateur dans un

annuaire.

Modèle OSI : Standard de communication de tous les systèmes informatiques.

Paquets : Une entité de transmission de la couche réseau du modèle OSI.

Passphrase (Phrase secrète) : Mot de passe qui sert à s’authentifier pour chiffrer ou déchiffrer

les mails.

Pirate (Hacker) : Personne généralement malveillante voulant contourner les moyens de

sécurités pour voler des informations ou rendre indisponible certains services.

POP : Protocole qui permet de récupérer les courriers électroniques en local sur la machine.

Postfix : Serveur de messagerie électronique sous environnement linux.

Protocole : C’est une méthode permettant la communication entre différents processus.

Proxy : Ordinateur ou module servant d’intermédiaire entre un navigateur web et internet.

Permet d’améliorer la sécurité et l’accès à certaines pages en les stockant en cache.

GRZESKIEWICZ Teddy
50
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Requête : Message envoyé par un client vers un serveur.

RSA : Algorithme de cryptographie asymétrique.

Serveurs : Dispositif matériel qui offre des services (mail, web…) pour des clients.

Shell : C’est une couche logicielle qui fournit l’interface utilisateur d’un système d’exploitation.

SMTP : Protocole de communication pour le transfert de courrier électronique vers les serveurs

de messagerie.

TLS : Protocole de sécurisation des échanges sur internet.

Trame : Bloc d’information circulant au travers d’un médium.

Wireshark : Outil d’analyseur de paquets et de trame.

GRZESKIEWICZ Teddy
51
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Bibliographie

 Sites :
o https://en.wikipedia.org/wiki/Man-in-the-middle_attack
o http://wiki.linuxwall.info/doku.php/fr:ressources:dossiers:ssl_pki:1_les_bases
o https://mitmproxy.org/
o https://www.kali.org/
o https://github.com/byt3bl33d3r/MITMf
o https://openclassrooms.com/courses/les-reseaux-de-zero/l-attaque-de-l-
homme-du-milieu-mitm
o http://www.commentcamarche.net/contents/516-le-protocole-arp
o http://www.frameip.com/entete-arp/
o http://www.information-security.fr/attaque-man-in-the-middle-via-arp-
spoofing
o http://www.ietf.org/rfc/rfc791.txt
o http://www.ietf.org/rfc/rfc959.txt
o http://www.ietf.org/rfc/rfc822.txt
o http://www.ietf.org/rfc/rfc2068.txt
o http://www.ietf.org/rfc/rfc2821.txt

 Enseignements théoriques :
o Sécurité  Monsieur LAFOURCADE
o Services Réseaux et leur Sécurisation  Monsieur CHALHOUB
o Sécurité Approche Architecture  Monsieur CHALHOUB
o Sécurité Approche Système  Monsieur PRADINAT

GRZESKIEWICZ Teddy
52
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT
IMPLEMENTATION D’ATTAQUES DE TYPE MAN IN THE MIDDLE SUR UN RESEAU.

Annexes

Voici un scripte BASH permettant de faciliter l’utilisation de MITMproxy.

GRZESKIEWICZ Teddy
53
CHEMINADE Julien
HUGUET Anthony
Tuteur: M. David GERAULT

Vous aimerez peut-être aussi