Télécharger le fichier pdf d’un mémoire de fin d’études
Transmission de données au travers du modèleOSI
Le processus émetteur remet les données à envoyer au processus récepteur à la couche application qui leur ajoute un en-tête applicationAH ou Application Header (éventuellement nul). Le résultat est alors transmis à la couche présentation.
La couche présentation transforme alors ce message et lui ajoute (ou non) un nouvel en-tête (éventuellement nul). La couche présentatione nconnaît et ne doit pas connaître l’existence éventuelle de AH ; pour la couche présentation, AHfait en fait partie des données utilisateur. Une fois le traitement terminé, la couche présentationenvoie le nouveau « message » à la couche session et le même processus recommence.
Les données atteignent alors la couche physique qui va effectivement transmettre les données au destinataire. A la réception, le messageva remonter les couches et les en-têtes sont progressivement retirés jusqu’à atteindre le processus récepteur .
La couche application
Contrairement au modèle OSI, c’est la couche immédiatement supérieure à la couche transport. On s’est en effet aperçu avec l’usage que les logiciels réseaux n’utilisent que très rarement les couches présentation et session.
Cette dernière couche contient tous les protocoles de haut niveau, comme par exemple telnet, SMTP (Simple Mail Transfer Protocol), HTTP (HyperText Transfer Protocol) … Le point important pour cette couche est le choix du protocole de transport à utiliser. Par exemple, SMTP utilise TCP car pour la remise du courrier électronique, on veut que tous les messages parviennent intégralement et sans erreur.
Eléments constitutifs d’un réseau local
Les unités directement connectées à un segment de éseaur sont appelées hôtes. Ces hôtes peuvent être des ordinateurs, des imprimantes, desscanneurs ainsi que de nombreux autres types d’équipements. Ces unités fournissent les connexions réseau aux utilisateurs grâce auxquelles ils peuvent partager, créer et obtenir des informations. Passons un bref aperçu des différents éléments pouvant constituer un réseau local.
Les cartes réseaux ou NIC (Network InterfaceCard)
Une carte réseau (ou carte NIC) est une plaquette de circuits imprimés logée dans l’emplacement d’extension sur la carte mère d’un ordinateur ou sur un périphérique. Certains l’appellent aussi adaptateur réseau. Sa fonction consiste à adapter l’unité hôte au média de réseau [4].
Chaque carte NIC dans le monde porte un nom de code unique appelé adresse MAC (Media Access Control). Cette adresse est utilisée pour contrôler la communication des données de l’hôte dans le réseau.
La carte NIC contrôle l’accès de l’hôte au média.
Les médias
La fonction de base des médias consiste à acheminer un flux d’informations, sous forme de bits et d’octets, dans un réseau local ou LAN Local( Area Network). Si on exclut les LAN sans fil (qui utilisent l’atmosphère ou l’espace comme média), de façon générale, les médias réseau confinent les signaux réseau à des fils, à des câbl es ou à des fibres optiques. Les médias réseau sont considérés comme des composants de couche 1 des LAN.
Les répéteurs
L’un des désavantages du câble le plus répandu (lecâble à paire torsadée non blindée de catégorie 5) est la longueur de câble. En effet, la longueur maximale d’un câble à paire torsadée non blindée dans un réseau est de 100 mètres[2] [4]. Pour prolonger un réseau au-delà de cette limite, nous devons y ajouter une unité appelée répéteur.
Le but du répéteur est de régénérer les signaux eauréset de les resynchroniser au niveau du bit pour leur permettre de voyager sur de plus longues distances dans le média.
Le terme répéteur désigne habituellement une unitéàun seul port « d’entrée » et à un seul port de « sortie ». Dans la terminologie courante d’aujourd’hui, on parle toutefois souvent aussi de répéteur multiport. Les répéteurs sont des unitése couched 1 du modèle OSI, car ils agissent uniquement au niveau du bit et ne se soucient d’aucune autre information.
Les concentrateurs
Le but du concentrateur est de régénérer et de resynchroniser les signaux réseau[1] [4].
Cette définition est très semblable à celle du répéteur. C’est pourquoi le concentrateur est aussi connu sous le nom de répéteur multiport. La ifférenced entre les deux est le nombre de câbles connectés à l’unité. On utilise un concentrateur pour créer un point de connexion central pour le média de câblage et pour accroître la fiabilité d’un réseau. En effet, la majorité de celui-ci continuera à fonctionner correctement si l’un des câbles venait à défaillir.
Les ponts
Un pont est une unité de couche 2 conçue pour connecter deux segments LAN [5]. Le rôle du pont est de filtrer le trafic sur un LAN pour conserver le trafic local au niveau local, tout en établissant une connectivité avec d’autres parties(segments) du LAN pour le trafic qui y est destiné.
Pour différencier le trafic local du trafic non local, il regarde tout simplement l’adresse locale. Comme chaque unité réseau possède une adresse MAC unique sur la carte NIC, le pont effectue le suivi des adresses MAC se trouvant de chacun de ses côtés et prend des décisions en fonction de cette liste d’adresses.
Un pont se définit véritablement par son filtrage ed trames de couche 2 et par la manière dont celui-ci est vraiment réalisé. Comme nous l’avons vu dans le cas de la combinaison répéteur/concentrateur, une autre unité est utilisée dans le cas des connexions à plusieurs ponts.
Les commutateurs
Le commutateur est une unité de couche 2, tout comme le pont. En fait, un commutateur est également appelé pont multiport, tout comme unconcentrateur est aussi un répéteur multiport. La différence entre le concentrateur et le commutateur est que ce dernier prend des décisions en fonction des adresses MAC tandis que le concentrateur ne prend aucune décision [4]. En raison des décisions qu’il prend, le commutateur rend le LAN beaucoup plus efficace.
Protocoles orientés et non orientés connexions
On classe généralement les protocoles en deux catégories selon le niveau de contrôle des données que l’on désire[3]:
– Les protocoles orientés connexion: Il s’agit des protocoles opérant un contrôle de transmission des données pendant une communication établie entre deux machines. Dans un tel schéma, la machine réceptrice envoie des accusés de réception lors de la communication, ainsi la machine émettrice est garante de la validité des données qu’elle envoie. Les données sont ainsi envoyées sous formede flot. TCP est un protocole orienté connexion.
– Les protocoles non orientés connexion: Il s’agit d’un mode de communication dans lequel la machine émettrice envoie des données sans prévenir la machine réceptrice, et la machine réceptrice reçoit les données sans envoyer d’avis ed réception à la première. Les données sont ainsi envoyées sous forme de blocs (datagrammes). UDP est un protocole non orienté connexion.
Le protocole ARP (Adress Resolution Protocol)
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 à cette adresse logique.
Pour respecter l’indépendance des couches imposéespar le modèle OSI, la couche TCP/IP et les protocoles utilisateur travaillent uniquement avec des adresses IP. Par conséquent, elles n’ont aucune connaissance des adresses physiques ou adresse MAC (Media Access Control) qui y sont associées.
Le protocole ARP (Adress Resolution Protocol) 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 Internet [2] [3] [6].
Pour déterminer une adresse MAC de destination d’undatagramme, le système consulte une table appelée cache ARP. Si l’adresse n’est pasdans la table, le protocole ARP envoie un broadcast (diffusion) qui sera acheminé vers toutes les stations du réseau afin de déterminer la station de destination.
Résolution d’adresse
Si la source et la destination sont connectées au même LAN, le système A envoie une requête ARP en »mode broadcast » (envoyé à tout les machines présents sur le réseau) pour trouver l’adresse MAC du système B. Le message de broadcastcontenant la requête est reçu et traité par toutes les unités du LAN, y compris le système B. Seul le système B répond à la requête ARP. Il envoie une réponse ARP, contenant son adresse MAC au système A. Celui-ci reçoit la réponse et enregistre l’adresse MAC dans sa mémoire cache ARP .Lorsque le système A doit communiquer à nouveau avec le système B, il recherche l’adresse MAC du système B dans la mémoire cache ARP et envoie directement la trame.
Faiblesse du protocole ARP
Comme on peut le voir, ce protocole est coûteux en ressources, tant au niveau du réseau que des machines [3] [7]:
– la résolution d’adresse provoque la transmission d’au moins deux trames (une requête et une réponse), voire plus si le destinataire n’existe pas ou est déconnecté (envoi répété de requêtes identiques).
– de plus, les requêtes sont envoyées en broadcast, ‘estc-à-dire qu’elles sont envoyées à toutes les machines du réseau local. Chaque machinedoit alors décapsuler le paquet ARP, vérifier qu’il lui est destiné, et le détruire dansle cas contraire (c’est à dire dans la plupart des cas, sur un réseau comportant un grand nombre de machines). Ce travail inutile constitue évidemment une perte de temps pour toutesles stations.
C’est pour éviter tout ce trafic inutile sur le réseau que l’on a crée la cache ARP.
Chaque machine gère localement une table ARP, qui lui permet de limiter au minimum les requêtes. De ce fait, les données contenues dans cecache sont prioritaires sur l’envoi d’une nouvelle requête, et toute entrée est considéréemmeco valide et fiable.
Donc, si nous pouvons modifier la table ARP contenu dans le cache d’une machine, nous pouvons rediriger tous les flux d’informations provenant de cette machine.
La pile TCP/IP
TCP/IP est une suite de protocoles. Le sigle TCP/IP signifie « Transmission Control Protocol/Internet Protocol » et se prononce « T-C-P-I-P ». Il provient des noms des deux protocoles majeurs de la suite de protocoles, c’est-à-dire les protocoles TCP et IP.
La connaissance de l’ensemble des protocoles TCP/IP n’est pas essentielle pour un simple utilisateur, au même titre qu’un téléspectateur n’aps besoin de connaître le fonctionnement de son téléviseur, ni des réseaux audiovisuels. Toutefois,sa connaissance est nécessaire pour les personnes désirant administrer, maintenir, ou éventuellement pirater un réseau TCP/IP.
Fragmentation des datagrammes IP
Comme nous l’avons vu précédemment, la taille d’undatagramme maximale est de 65536 octets. Toutefois cette valeur n’est jamais atteinte car les réseaux n’ont pas une capacité suffisante pour envoyer de si gros paquets.
De plus, les réseaux sur Internet utilisent différentes technologies, si bien que la taille maximale d’un datagramme varie suivant le type de réseau.
La taille maximale d’une trame ou MTU (Maximum Transfer Unit) sur un réseau Ethernet est de 1500 Octets [2] [5].
Si le datagramme est trop grand pour passer sur le réseau, le routeur va le fragmenter, c’est-à-dire le découper en fragments de tailles inférieures au MTU du réseau et de telle façon que la taille du fragment soit un multiple de 8 octets.
Le routeur va ensuite envoyer ces fragments de manière indépendante et les réencapsuler (ajouter un en-tête à chaque fragment) de telle façon à tenir compte de la nouvelle taille du fragment. De plus, le routeur ajoute des informations afin que la machine de destination puisse réassembler les fragments dans le bon ordre. Rien ne dit toutefois que les fragments arriveront dans le bon ordre, étant donné qu’ils sont acheminés indépendamment les uns des autres.
Pour tenir compte de la fragmentation, chaque datagramme possède plusieurs champs permettant leur réassemblage[3]:
– champ déplacement de fragment(13 bits) : champ permettant de connaître la position du début du fragment dans le datagramme initial. L’unité de mesure de ce champ est de 8 octets (le premier fragment ayant une valeur de zéro).
– champ identification (16 bits) : numéro attribué à chaque fragment afinde permettre leur réassemblage.
– champ drapeau (3 bits) : il est composé de trois bits:
o Le premier n’est pas utilisé.
o Le second (appelé DF : « Don’t Fragment ») indique si le datagramme peut être fragmenté ou non. Si jamais un datagramme a ce bit positionné à un et que le routeur ne peut pas l’acheminer sans le fragmenter, alors le datagramme est rejeté avec un message d’erreur.
o Le dernier (appelé MF : « More Fragments », en français Fragments à suivre ) indique si le datagramme est un fragment de donnée (1). Si l’indicateur est à zéro, cela indique que le fragment est le dernier (donc que le routeur devrait être en possession de tous les fragments précédents) ou bien que le datagramme n’a pas fait l’objet d’une fragmentation
Caractéristiques du protocole TCP
TCP est un des principaux protocoles de la couche transport du modèle TCP/IP. Il permet, au niveau des applications, de gérer les données enprovenance (ou à destination) de la couche inférieure du modèle (c’est-à-dire le protocole IP).
TCP est un protocole orienté connexion, c’est-à-dire qu’il permet à deux machines qui communiquent de contrôler l’état de la transmission [1].
Les caractéristiques principales du protocole TCP sont les suivantes:
– TCP permet de remettre en ordre les datagrammes en provenance du protocole IP.
– TCP permet de vérifier le flot de données afin d’éviter une saturation du réseau.
– TCP permet de formater les données en segments de longueur variable afin de les « remettre » au protocole IP.
– TCP permet de multiplexer les données, c’est-à-dire de faire circuler simultanément des informations provenant de sources (applications par exemple) distinctes sur une même ligne.
– TCP permet enfin l’initialisation et la fin d’une ommunication de manière courtoise.
|
Table des matières
CHAPITRE 1: LES RESEAUX LOCAUX 2
1.1 Réseau informatique
1.1.1 Définition d’un réseau
1.1.2 Utilité de l’utilisation des réseaux informatiques
1.1.3 Normalisation
1.2 Modèle OSI
1.2.1 Introduction
1.2.2 Les différentes couches du modèle :
1.2.2.1 La couche physique
1.2.2.2 La couche liaison de données
1.2.2.3 La couche réseau ou Network
1.2.2.4 La couche transport
1.2.2.5 La couche session
1.2.2.6 La couche présentation
1.2.2.7 La couche application
1.2.3 Transmission de données au travers du modèle OSI
1.3 Modèle TCP/IP
1.3.1 Introduction
1.3.2 Origine
1.3.3 Description du modèle
1.3.3.1 Un modèle en 4 couches
1.3.3.2 La couche hôte réseau
1.3.3.3 La couche Internet
1.3.3.4 La couche transport
1.3.3.5 La couche application
1.4 Eléments constitutifs d’un réseau local
1.4.1 Les cartes réseaux ou NIC (Network Interface Card)
1.4.2 Les médias
1.4.3 Les répéteurs
1.4.4 Les concentrateurs
1.4.5 Les ponts
1.4.6 Les commutateurs
1.4.7 Les routeurs
1.5 Topologies
1.5.1 Les topologies physiques
1.5.2 Topologie logique
1.6 Les réseaux locaux de type Ethernet
1.6.1 Introduction
1.6.2 Principe de transmission
1.6.3 Ethernet Commuté
CHAPITRE 2 : PROTOCOLES
2.1 Généralités sur les protocoles
2.2 Protocoles orientés et non orientés connexions
2.3 Le protocole ARP (Adress Resolution Protocol)
2.3.1 Résolution d’adresse
2.3.2 Faiblesse du protocole ARP
2.4 La pile TCP/IP
2.4.1 IP (Internet Protocol)
2.4.1.1 Rôle du protocole IP
2.4.1.2 Les datagrammes
2.4.1.3 Fragmentation des datagrammes IP
2.4.2 TCP (Transmission Control Protocol)
2.4.2.1 Caractéristiques du protocole TCP
2.4.2.2 But de TCP
2.4.2.3 Format des données sous TCP
2.4.2.4 Etablissement d’une connexion
2.4.2.5 Transfert de données
2.4.2.6 Fin d’une connexion
2.4.3 Le protocole UDP (User Datagram Protocol)
2.4.3.1 Caractéristiques du protocole UDP
2.4.3.2 Signification des différents champs
2.4.4 Les numéros de ports TCP et UDP
2.5 Le protocole DNS (Domain Name System)
2.5.1 Introduction
2.5.2 Historique
2.5.3 Fonctionnement de l’architecture DNS
2.5.4 Le protocole
2.5.5 Failles de la sécurité
CHAPITRE 3 : USURPATION D’IDENTITE SUR ETHERNET
3.1 La sécurité
3.1.1 Importance de la sécurité
3.1.2 Types d’attaques
3.1.2.1 Attaque MAC Spoofing
3.1.2.2 Attaque MAC flooding
3.1.2.3 Attaque ARP Poisoning
3.1.2.4 Attaques déni de service (DoS)
3.2.3 Quelques moyens de protection
3.2.3.1 Utilisation d’un coupe-feu (firewall)
3.2.3.2 Mécanisme de mot de passe
3.2.3.3 Chiffrement
3.2.3.4 Authentification et intégrité
3.2.3.5 Outils des pirates
3.2.3.6 Surveillant humain
3.2 Usurpation d’identité sur Ethernet
3.2.1 Contexte
3.2.2 Usurpation d’identité et Ethernet
3.3 Usurpation d’identité au niveau MAC (ARP Cache Poisoning)
3.3.1 Rappels sur le protocole ARP
3.3.2 Approche
3.3.3 Corruption du cache ARP
3.3.3.1 Corruption par envoi de réponses ARP falsifiées
3.3.3.2 Corruption par envoi de requêtes ARP falsifiées
3.3.3.3 Systèmes d’exploitation vulnérables à la corruption du cache ARP
3.3.4 Applications de l’ARP Cache Poisoning
3.3.5 Parades
3.4 Usurpation d’identité au niveau TCP/IP
3.4.1 Introduction
3.4.2 Vol d’une connexion TCP (Hijacking)
3.4.2.1 Injection de données
3.4.2.2 Eviction d’une machine
3.5 Usurpation d’identité au niveau de la couche session (DNS Cache Poisoning)
3.5.1 Introduction
3.5.2 Contexte
3.5.3 Attaques possibles basées sur l’usurpation d’identité
3.5.3.1 Usurpation simple
3.5.3.2 Man in the Middle
3.5.4 Parades
CHAPITRE 4 : APPLICATION PRATIQUE
4.1 Contexte
4.2 Types d’attaques possibles
4.2.1 Utilisation du DNS Cache Poisoning
4.2.2 Utilisation de l’ARP Cache Poisoning
4.3 Outils de l’attaquant
4.3.1 Utilisation de « WinRoute »
4.3.2 Le logiciel « Mpisoloky 1.0 »
4.4 L’attaque
4.4.1 Etape 1: collecte d’information
4.4.2 Etape 2: configuration de « WinRoute »
4.4.3 Etape 3: Lancement de l’attaque
4.4.4 Vision côté victime
4.4.5 Etape 4: Récupération de mot de passe
CONCLUSION
Télécharger le rapport complet