LES RESEAUX AD-HOC
Applications des réseaux Ad-Hoc
La nature adaptative et autonome de la technologie Ad-Hoc a permis son utilisation lors de situations de conflit, des situations de désastre ou encore dans des applications pour le domaine de transport ou minier.Les réseaux Ad-Hoc peuvent aussi être utilisés dans les situations de désastre. Dans ce genre de situation, un réseau de communication doit être mis en place de façon rapide avec un minimum de configuration permettant de communiquer entre les unités de sauvetage. Cette technologie répond à ce besoin puisqu’elle ne nécessite pas d’infrastructure et offre une flexibilité et des possibilités d’auto-configuration.
La technologie VANET (Vehicular Ad-hoc NETwork) (Hartenstein et Laberteaux, 2008) a été proposée comme une variante de réseaux MANET appliquée au domaine du transport.
Cette application est considérée comme l’une des applications les plus prometteuses de la technologie Ad-Hoc. Elle pourrait révolutionner la communication inter-véhiculaire avec des systèmes intelligents (régulation de trafic, prévention d’accident,…) et aussi avec l’avènement des ordinateurs embarqués à l’intérieur des véhicules.
Caractéristiques des réseaux Ad-Hoc
Toutes les caractéristiques d’un réseau de communication sans fil sont applicables aux réseaux Ad-Hoc, quoique, il existe certaines propriétés propres à ce type de réseau à savoir :
• mobilité : la mobilité est une caractéristique essentielle des réseaux Ad-Hoc suivant laquelle les performances des protocoles de routage pourraient varier. La mobilité des nœuds rend les réseaux Ad-Hoc très versatiles surtout dans l’absence d’une entité centrale pour l’administration et la surveillance.
• multi sauts (Multi Hopping) : la propriété grâce à laquelle chaque nœud du réseau peut atteindre les autres nœuds hors portée radio grâce au protocole de routage.
• auto-configuration : l’absence d’une entité centrale d’administration exige que les nœuds doivent s’auto-configurer et s’auto-organiser afin de garantir la flexibilité et l’adaptabilité requises.
• énergie : la plupart des nœuds Ad-Hoc (ordinateur portable, PDA et capteurs) sont limités en matière d’énergie ce qui affecte la durée de vie de ces nœuds surtout si on considère la nature collaborative des protocoles de routage Ad-Hoc.
• qualité de service (QoS) : les applications gourmandes en ressources et surtout celles qui exigent une exécution en temps réel (VoIP, IPTV, jeux en ligne) représentent un vrai défi pour les réseaux Ad-Hoc. Le caractère versatile des nœuds et les ressources d’énergie limitées pourraient nuire à la qualité de service (QoS) offerte à travers un réseau Ad-Hoc.
• sécurité : la sécurité dans l’environnement sans fil s’avère un grand défi en particulier pour les réseaux Ad-Hoc. L’information transite d’un nœud à un autre ce qui met en question la confidentialité, l’intégrité et la disponibilité des données dans un environnement où seule la confiance régit la transmission de données.
Protocoles de routage pour les réseaux Ad-Hoc
Compte tenu des caractéristiques des réseaux Ad-Hoc présentées dans la section précédente, la conception d’un protocole de routage Ad-Hoc s’avère un grand défi consistant à trouver un compromis entre les performances souhaitées et les limitations des réseaux Ad-Hoc. Il existe deux grandes familles de protocoles de routage Ad-Hoc à savoir les protocoles proactifs et réactifs. Il existe une famille hybride constituée d’un mélange de ces deux protocoles. Cette famille est appelé famille des protocoles hybrides.
Protocoles proactifs
Les protocoles proactifs maintiennent une table de routes entre chaque paire de nœuds. Le but de cette stratégie est de fournir instantanément une route déjà stockée entre la source et la destination aussitôt que le besoin se présente. La famille de protocoles proactifs se divise en deux catégories. La technique utilisée pour la découverte et le maintien des liens différencie ces deux catégories. La première catégorie est appelée protocoles avec vecteur distance où la métrique pour le calcul des routes est le nombre de sauts séparant la source à la destination.
La deuxième catégorie est appelée protocoles à état de lien utilisant l’état des liens pour le calcule de routes. La mise à jour des routes est faite par des techniques de diffusion (Broadcast). Les protocoles DSDV (protocole avec vecteur distance) et OLSR (protocole avec état de lien) sont des exemples de ces deux catégories.
DSDV (Destination-Sequenced Distance Vector) présenté par Perkins et Bhagwat (1994) est l’un des premiers protocoles destinés aux réseaux Ad-Hoc. Inspiré du protocole RIP (Routing Information Protocole), le protocole DSDV a réglé le problème de convergence de route (boucle de routage infinie) dont RIP souffrait (Perkins et Bhagwat, 1994) en introduisant un numéro de séquence dans chaque entrée de la table de routage. Ce numéro est géré par le nœud destination. La mise à jour des routes se fait en utilisant un numéro de séquence pour assurer l’unicité des messages de mise à jour. Les routes sont enfin calculées par l’algorithme de Bellman-Ford.
OLSR (Optimised Link State Routing) proposé par Clausen et Jacquet et standardisé dans la RFC 3626 (Clausen et Jaquet, 2003), est une version optimisée du protocole LSR (Link State Routing) (McQuillan, Richer et Rosen, 1980). La majeure contribution consiste à introduire le concept de nœuds relais MPR (Multipoint Relay). Avec ce concept, la diffusion des messages de données ou de routage (ajout/suppression de lien, mise à jour des tables,…) est optimisée. Un MPR joue le rôle de représentant pour joindre les nœuds qui l’ont choisi (la transmission par inondation est donc évitée). Ainsi avec ce protocole, les ressources sont largement optimisées. À noter que les routes sont calculées en utilisant l’algorithme Djikstra.
Protocoles réactifs
À l’opposé des protocoles proactifs, les protocoles réactifs adoptent une approche différente. En effet, ils proposent de déclencher la phase de découverte de routes au besoin (lors de l’envoi d’un message) d’où l’appellation On Demand Protocol. L’avantage de cette approche consiste à éliminer le coût de maintenance des tables de routage ainsi que la surcharge du réseau (pas de mise à jour de route requise). Toutefois, cette approche souffre de problèmes de délais de transmission de paquets engendrés par le processus de découverte de route luimême. L’envoi des messages est retardé jusqu’au moment de trouver une route vers la destination. Le protocole DSR est un exemple de ce type de protocole.
DSR (Dynamic Source Routing) (RFC 4727) par Johnson, Maltz et Broc (2001) est un protocole où le processus de découverte de route est initié par la source. La source envoie un message de demande de route de type Route Request à l’ensemble du réseau. Ces messages sont rediffusés par les nœuds internes jusqu’à atteindre la destination ou un nœud qui connait un chemin vers cette destination. La réponse se fait avec un message Route Reply vers le nœud source qui, une fois qu’il a reçu les différents messages Route Reply, compile et sélectionne la route optimale.
Protocoles hybrides
Pour ce type de protocole, une combinaison de l’approche des protocoles réactifs et proactifs est adoptée afin de tirer les avantages de chaque approche. Les nœuds se comportent de façon proactive localement dans une zone déterminée par le nombre de sauts maximum et de façon réactive à l’extérieur de cette zone. Le protocole ZRP est un exemple de cette famille de protocole.
ZRP (Zone Routing Protocol) (Beijar, 2002) est parmi les premiers protocoles hybrides proposés avec des composantes des protocoles proactifs et réactifs à la fois. ZRP a été proposé pour réduire la surcharge causée par les protocoles proactifs et réduire aussi les délais existants dans les protocoles réactifs. Le protocole divise le réseau en deux zones déterminées par un nombre de sauts X. Un protocole de routage proactif est utilisé à l’intérieur de la zone nommée IARP (Intrazone Routing Protocol) et un autre réactif à l’extérieur de cette zone notée IERP (Interzone Routing Protocol).
Sécurité dans les réseaux Ad-Hoc
Après avoir présenté dans le chapitre 1 les caractéristiques et les particularités des réseaux Ad-Hoc, nous présenterons à travers ce chapitre un des points faibles des réseaux Ad-Hoc : la sécurité.
Nous essayerons de caractériser les différents aspects de la sécurité dans le protocole SCOLSR en étudiant les vulnérabilités de ce protocole afin de quantifier leurs impacts.
Avant de concevoir tout mécanisme de sécurité, la phase préliminaire consiste à caractériser le système à protéger. Caractériser un système consiste à connaitre les vulnérabilités, les menaces et les attaques possibles contre ce système afin de préserver les trois objectifs de la sécurité : la confidentialité, l’intégrité et la disponibilité.
• vulnérabilité : toute lacune ou faille de nature matérielle ou logicielle qui pourrait être exploitée pour réaliser une attaque.
• menace : c’est la possibilité qu’une vulnérabilité soit exploitée accidentellement ou malicieusement par un agent.
En général, les attaques sont classées en deux catégories :
• attaque externe : une attaque exercée par un nœud qui ne possède pas l’autorisation requise pour accéder au réseau. De ce fait, un attaquant externe est incapable d’envoyer des messages authentifiés mais il est capable de lancer des attaques de rejeux, attaques consistant à capturer et renvoyer les messages des autres nœuds (medium ouvert) pour contourner les phases d’authentification.
• attaque interne : une attaque exercée par un nœud compromis ayant le droit d’accès au réseau. Ayant les clés d’authentification nécessaires, ce type de nœuds peut exercer des attaques plus élaborées que les attaquants externes (redirection de trafic, suppression, altération,…).
Attaques contre le protocole de routage
Selon Adjih et al. (2005a) les attaques contre les messages de service (messages TC et HELLO) visent à compromettre les entrées de la table de routage ou modifier la topologie du réseau (la liste des voisins ou la liste des nœuds MPR). Le but ultime de ces attaques est de rediriger les flots de trafic vers le nœud malicieux afin de les exploiter à des fins frauduleuses ou encore isoler des nœuds du réseau. Deux techniques sont souvent utilisées :
• usurpation d’identité (Identity Spoofing) : le nœud malveillant génère du trafic en prétendant être un autre nœud.
• usurpation de lien (link spoofing) : le nœud malveillant annonce avoir un faux lien de type voisin ou MPR avec un autre nœud en émettant des faux messages TC et HELLO.
Nous présenterons dans la partie qui suit les attaques contre les messages HELLO et TC avec leurs impacts sur le réseau.
Attaques contre les messages HELLO
• génération de faux messages : le processus de sélection de MPR passe par les messages HELLO en particulier le champ Willingness. Modifier la valeur de ce champ pourrait augmenter (attirer le trafic) ou réduire (comportement égoïste) la probabilité pour un nœud d’être sélectionné comme MPR en fonction de ses intentions malicieuses.
• usurpation d’identité : un nœud malicieux peut prétendre être un autre nœud en émettant des messages HELLO au nom de celui-ci. De ce fait, les liens de voisinage et les tables de routage seront modifiés .
Un nœud malicieux peut usurper l’identité d’un nœud MPR en envoyant des messages HELLO avec des informations erronées au nom du nœud victime.
• usurpation de lien : cette attaque peut être exécutée de deux façons différentes. Si le nœud malicieux prétend avoir des liens avec plusieurs voisins (des faux liens déclarés dans le message HELLO), il augmentera ses chances d’être élu comme MPR. S’il ne le déclare pas dans sa liste de voisinage dans le message HELLO, il pourra isoler un nœud dans le réseau (Abdellaoui et Robert, 2009).
Attaques contre le message TC
• génération de faux messages: si un nœud malicieux génère un faux message TC, les nœuds récepteurs de ce message le considèreront comme un MPR de tous les nœuds déclarés dans le MPR Selector List. Seuls les nœuds MPR ont le droit d’envoyer des messages TC créant des conflits dans la table de routage et modifiant la topologie par conséquence.
• usurpation de lien : un nœud malicieux sélectionné comme MPR peut lancer cette attaque de deux manières différentes. Soit ajouter des nœuds qui ne l’ont pas choisi comme MPR dans son MPR Selector List ce qui entrainera la création de faux liens. Soit de supprimer des nœuds de son MPR Selector List ce qui pourrait isoler le nœud supprimé du reste du réseau et modifier la topologie.
Attaques de manipulation de trafic de données
La manipulation ou la retransmission incorrecte du trafic de données est souvent classée comme la seconde étape d’une attaque complexe précédée par une modification de la topologie (voir la section précédente). Le nœud malicieux augmente la probabilité pour qu’un maximum de trafic passe par lui afin d’exploiter cette situation pour des fins frauduleuses.
• Écoute passive/ Altération/ Élimination
Le nœud malicieux dans ce cas analyse tout le trafic passant par lui à la recherche de données privées (clé de chiffrement mot de passe,…). Cette attaque est la conséquence directe de la propriété du lien physique ouvert (sans fil) utilisé dans le réseau Ad-Hoc.
Revue de littérature des solutions utilisées dans les systèmes de détection d’intrusion dans les réseaux Ad-Hoc
Solution basée sur la surveillance
Mécanisme Watchdog and Pathrater
Marti et al. (2003) ont présenté une solution pour détecter les nœuds malicieux qui suppriment les paquets (de façon sélective ou aléatoire) passant par ce nœud de transit. Cette solution nommée Watchdog consiste en effet, à surveiller le comportement de tous les nœuds d’une part, et choisir la route la plus sécuritaire grâce au module nommé Pathrater d’une autre part. De ce fait, tous les nœuds du réseau se surveillent les uns les autres sous forme d’architecture maillée.
En effet, si le nœud S veut transmettre un paquet vers le nœud D via les nœuds intermédiaires A, B et C, le paquet est transmis au nœud A qui le retransmet à son tour au nœud B mais garde une copie du paquet.
La prochaine étape du processus est de surveiller si B va retransmettre ce paquet vers le nœud C en écoutant et en comparant tous les paquets émis par le nœud B. Si le nœud B ne retransmet pas le paquet au bout d’un certains temps, un compteur est incrémenté. Si le compteur atteint une valeur maximale préétablie (nombre de fois que le nœud B ne transmet pas un paquet), le nœud A peut conclure que le nœud B est malicieux. Sa décision est rapportée au nœud S.
Solution IDS pour les réseaux Ad-Hoc
L’expérience a montré que l’utilisation des techniques de prévention d’intrusion comme la cryptographie ou l’authentification n’est pas suffisante pour contrer les attaques internes.
Toutefois, ce type de système est utilisé comme première ligne de défense alors que la deuxième ligne de défense est occupée par les systèmes de détection d’intrusion communément désignés par son acronyme anglais IDS (Intrusion Detection System). Le principe général d’un IDS est composé de trois phase : une phase de collection de données suivie d’une phase d’analyse et enfin une phase de réponse pour prévenir ou minimiser l’impact sur le système. Le système IDS est implanté au niveau de certains nœuds spéciaux appelés moniteurs ou nœuds de surveillance. Le déploiement de ces nœuds diffère en fonction du type protocole et de l’architecture de l’IDS.
Les IDS peuvent être classifiés selon la façon avec laquelle les données sont collectées à savoir : IDS basé sur les données collectées du réseau (Network-Based IDS) ou IDS basé sur l’analyse des fichiers de trace et données du système d’exploitation (Host-Based IDS). On peut aussi classer les IDS selon les techniques de détection utilisée.
• système de détection d’anomalie : le système détecte tout comportement qui dévie du comportement normal préétabli et déclenche une réponse.
• système basé sur les signatures : le système possède une base de données du comportement de certaines attaques (fichier dll ciblés, port utilisé,…) avec laquelle sont comparées les données collectées. Une attaque est détectée si les données collectées coïncident avec un comportement malicieux déjà enregistré.
• système basé sur les spécifications : le système défini un ensemble de conditions qu’un programme ou un protocole doit satisfaire. Une attaque est détectée si le programme ou le protocole ne respecte pas les conditions établies du bon fonctionnement.
|
Table des matières
INTRODUCTION
CHAPITRE 1 LES RESEAUX AD-HOC
1.1 Historique
1.2 Applications des réseaux Ad-Hoc
1.3 Caractéristiques des réseaux Ad-Hoc
1.4 Protocoles de routage pour les réseaux Ad-Hoc
1.4.1 Protocoles proactifs
1.4.2 Protocoles réactifs
1.4.3 Protocoles hybrides
1.5 Description détaillée des protocoles OLSR et SC-OLSR
1.5.1 Protocoles OLSR
1.5.2 Le protocole SC-OLSR
CHAPITRE 2 ATTAQUES ET VULNÉRABILITÉS CONTRE LES PROTOCOLES OLSR/SC-OLSR
2.1 Sécurité dans les réseaux Ad-Hoc : généralités
2.2 Vulnérabilités et types d’attaques contre le protocole OLSR
2.2.1 Attaques contre le protocole de routage
2.2.2 Attaques de manipulation de trafic de données
2.2.3 Solutions proposées pour la sécurité du protocole OLSR
2.2.3.1 Cryptographie (attaques externes)
2.2.3.2 Nouveaux protocoles
2.2.3.3 IDS (Intrusion Detection System)
2.3 Vulnérabilités et type d’attaque du protocole SC-OLSR
CHAPITRE 3 ARCHITECTURE ET SYSTÈME DE SÉCURITÉ PROPOPOSÉ POUR SC-OLSR
3.1 Motivation et objectifs
3.2 Revue de littérature des solutions utilisées dans les systèmes de détection d’intrusion dans les réseaux Ad-Hoc
3.2.1 Solution basée sur la surveillance
3.2.2 Solution IDS pour les réseaux Ad-Hoc
3.3 Modèle d’attaque contre le protocole SC-OLSR
3.4 Algorithme de détection
3.4.1 Algorithme de détection d’un électeur
3.4.2 Algorithmes de détection d’un CH/MPR
3.5 Architecture et déploiement de l’IDS
3.5.1 Architecture
3.5.2 Déploiement
CHAPITRE 4 Scénarios de simulation et expérimentations
4.1 Motivation et objectifs
4.2 Environnement de simulation
4.2.1 Network Simulator NS2
4.3 Scénarios de simulation
4.4 Résultat et analyse
CONCLUSION
Télécharger le rapport complet