CONCEPTS DE BASE SUR LA SECURITE DANS LE PROTOCOLE COMMUNICATION
Le concept de la sécurité est un aspect fondamental pour l’étude des réseaux compte tenu des exigences actuelles des applications réseaux. Pour faire face à ces défis, il faut d’abord recenser les fonctions (services) de sécurité requises pour ces applications. Ces services consistent à mettre en œuvre des protocoles de sécurité qui utilisent des mécanismes de chiffrement de base.
Les services de sécurité de base
La problématique de la sécurité des réseaux est prise en charge à travers les services desécurité. Ceux-ci sont définis en termes d’authentification, de confidentialité, contrôle d’accès, d’intégrité et de non répudiation. Et chacun de ces services cible une problématique de sécurité particulière.
L’Authentification
Elle consiste à identifier les deux correspondants avant tout transfert de données, on parle d’authentification des utilisateurs. De plus, chacun des tiers communicants doit s’assurer que les données proviennent de l’expéditeur déclaré. Dans ce cas, on parle d’authentification de l’origine des données. Dans ces conditions, l’authentification garantit l’identification des différents acteurs dans nos réseaux. Cette problématique est un souci permanent. En effet, nous avons besoin de faire appel à cette fonction dans la plupart des services réseaux à travers même parfois une procédure très simplifiée. Cette procédure pourrait se résumer par la demande d’un login et d’un mot de passe.
Le contrôle d’accès
On entend par contrôle d’accès la décision d’établir un échange après authentification des correspondants. Les facteurs de décision sont :
1) les services demandés ;
2) les informations sur l’identité des utilisateurs collectées pendant la phase d’authentification.
En résumé, il a pour but de prévenir l’accès non autorisé à des ressources que sous des conditions spécifiées et par des utilisateurs spécifiés.
Cet aspect permet d’apporter des restrictions de certaines ressources à certains utilisateurs. Ainsi, ce service apporte une maîtrise des accès des ressources pouvant contribuer à une optimisation de l’utilisation de la bande passante. C’est pourquoi, la mise en place de ce service booste celui de la disponibilité.
La confidentialité
Elle doit assurer la protection des données contre les attaques non autorisées. Les données doivent rester secrètes pour les utilisateurs à qui elles ne sont pas destinées. Donc le service de confidentialité garantit la protection des données. Cette préoccupation est fondamentale et quasi permanente. En effet, nous avons besoin que la plupart de nos données personnelles soient protégées à tout moment : au niveau de leur emplacement, pendant leur manipulation et lors deleur transfert.
L’intégrité
Cette fonction garantit que les données n’ont pas été modifiées durant leur transfert sur le réseau. L’intégrité permet au destinataire spécifié de vérifier si le message est altéré ou pas.
Dans ce sillage, on se confronte à la modification des données surtout durant leur transfert. Ce qui constitue un réel problème d’autant plus que les serveurs pourraient être affectés par ces attaques et d’autres désagréments.
La non-répudiation
Elle permet d’assurer qu’un message a bien été envoyé par une source spécifiée et reçu par un récepteur spécifié. Ce mécanisme a pour but d’apporter la preuve de l’échange entre deux entités. Le service de non-répudiation permet de traquer les mal intentionnés sur nos réseaux. Cette fonction renforce la lutte contre la cybercriminalité. La cybercriminalité constitue, aujourd’hui, le plus grand fléau de l’Internet.
Ces différents paramètres reposent sur des mécanismes de cryptographie. Or, cette dernière a connu un développement considérable, ces dernières décennies, ce qui suscitel’intérêt de présenter cette évolution dans la section suivante.
Les mécanismes de chiffrement de base
La cryptographie consiste à rendre difficilement déchiffrable l’information. Les techniques de la cryptographie ont profondément changé au fil du temps. C’est ainsi qu’on peut distinguer la cryptographie classique, la cryptographie moderne et la cryptographie quantique.
La cryptographie classique
La cryptographie classique [CS1 15] est constituée de systèmes reposant sur les lettres et les caractères. Elle est basée en général sur la substitution et la transposition.
La substitution remplace chaque lettre du message par un autre symbole. C’est une généralisation du « chiffre de César », lequel remplace une lettre donnée par celle située quelques rangs plus loin dans l’alphabet.
La transposition consiste à modifier l’ordre des lettres d’un message. Par exemple, on peut écrire un message dans un tableau, les symboles du tableau étant rangés ligne par ligne, puis relevés colonne par colonne. Avec le développement des systèmes ouverts, en particulier l’Internet, ces méthodes sont devenues vulnérables, d’où l’émergence de nouvelles formes decryptographie basées sur l’échange des clés.
La cryptographie algorithmique
La cryptographie par substitution ou par transposition est vite dépassée compte tenu de sa vulnérabilité. Donc la cryptographie moderne ou algorithmique [CS2 15] a été proposée à la place de la cryptographie classique. Ainsi de nouvelles méthodes qui consistent à utiliser une ou deux clés en renforcement aux méthodes classiques ont été mises en place. Ces méthodes sont constituées par les algorithmes à clé symétrique et les algorithmes à clé asymétrique.
Les protocoles de sécurité
Les protocoles de sécurité sont un ensemble de règles à observer dans le sens de préserver le réseau par rapport à un certain nombre d’attaques. Ces dernières constituent des risques assez significatifs compte tenu de la réelle connectivité des systèmes informatiques.
Ainsi, ces protocoles de sécurité sont élaborés à travers l’utilisation d’un mécanisme de chiffrement ou une combinaison de ces mécanismes et permettent selon leur niveau d’action de protéger les infrastructures, les services ou les correspondances.
Autrement dit, ces protocoles étant définis à partir d’un ou d’une combinaison de mécanismes, permettent de prendre en charge un ou plusieurs services de sécurité de base spécifiques. D’ailleurs, le choix d’un protocole de sécurité se fera par rapport aux services de sécurité assurés par le protocole. Il faut que ces services requis émanent des exigences des applications utilisées.
Ces protocoles de sécurité vont être intégrés au niveau soit des protocoles réseau ( IPSec), soit des services réseau (SSL, SET,TLS, etc..). Qu’en est-il du protocole de sécurité utilisé au niveau du protocole IPv6 ?
CARACTERISTIQUES GENERALES DU PROTOCOLE IPv6
Le protocole IPv6 constitue une alternative sûre par rapport à IPv4. En effet, ses caractéristiques apportent des réponses ponctuelles par rapport aux nouvelles exigences des utilisateurs de la version 4. Celles-ci sont définies, entre autres, en termes de besoins d’identifiants, de mobilité et de sécurité. Aussi il s’avère nécessaire de présenter ce protocole par rapport au modèle OSI.
Le positionnement du protocole IPv6 dans le modèle OSI
IPv6 est une nouvelle version d’IP dont la dernière utilisée est la version 4. IP est un protocole qui se trouve au niveau de la couche réseau du modèle OSI.
Cette nouvelle architecture d’IPv6 doit se référer toujours au modèle OSI (Open System Interconnexion). En effet, le modèle OSI est un modèle de référence qui a été mis sur place pour régler le problème d’hétérogénéité des réseaux tout en facilitant la maintenance de ces réseaux. Il est constitué de sept (7) couches (physique, liaison, réseau, transport, session, présentation et application). Chaque couche se voit attribuer un certain nombre de fonctionnalités et fait circuler l’information sous un certain format et dans un certain sens. Et chaque couche demande à la couche directement inférieure de lui rendre un service avec garantie de service bien rendu. De plus, en prenant en charge l’hétérogénéité des réseaux, ce modèle permet aux différents acteurs de s’organiser librement en tenant compte des spécificités fonctionnelles des différentes couches. IPv6 se trouve au niveau de la couche réseau (couche 3). Cette couche doit assurer les fonctions d’identification des nœuds (à travers l’adressage réseau), de routage (acheminement de l’information entre les tiers communicants) et de contrôle de flux (suivi de la transmission). Au delà de ces rôles, IPv6 est agrégé à d’autres fonctionnalités comme le montre l’architecture d’IPv6 dans la cadre du modèle OSI de la figure 2.
La mobilité sous IPv6
La mobilité sous IPv6 doit permettre à un agent mobile de changer de réseau sans que ses correspondants ne soient affectés par ce changement. Pour cela une adresse IPv6 globale et unique est affectée à chaque nœud mobile et l’identifie auprès de ses correspondants. Un nœud mobile n’est autre qu’un nœud ayant la possibilité de changer de point de rattachement sur l’Internet. Un nœud mobile est identifié par :
– uneadresse principale, universelle ou mère
– une adresse temporaire
Ainsi les correspondants d’un mobile doivent :
– disposer d’une association dans le cache des associations
– apprendre la position du mobile en traitant les options “ Binding Update ”
– effectuer le routage des paquets directement vers le mobile en utilisant l’option “ Routing Header ”.
Il faut aussi noter l’agent mère d’un mobile qui doit
– être un routeur dans le sous-réseau mère du mobile
– intercepter les paquets dans le sous-réseau mère (un réseau mère est le réseau indiqué par l’identificateur d’un nœud mobile)
– envoyer ces paquets directement au mobile en utilisant l’encapsulation IPv6.
La mise en charge de cette mobilité a été possible grâce à un mécanisme d’auto-configuration correcte.
Le mécanisme de mobilité est représenté par la figure n°4.
SERVICES DE SECURITE ASSURES PAR LE PROTOCOLE IPv6
IPv6 assure les services de sécurité suivants : confidentialité des données
Ce service, assuré par l’extension de confidentialité (Encapsulating Security Playload ou ESP), garantit la protection des données contre les attaques non autorisées. intégrité des données
Cette fonction garantit que les données n’ont pas été modifiées durant leur transfert sur le réseau. Elle est exercée par ESP et AH authentification
Ce service permet de garantir que les données proviennent de l’expéditeur déclaré donc une identification de l’expéditeur. Il peut être pris en charge par AH et ESP. détection des rejeux.
Cette fonction est assurée optionnellement par AH et ESP et refuse que des paquets soient réémis sur le réseau. Il faut noter que le rejeu est une stratégie utilisée pour analyser et interpréter le comportement des mécanismes de sécurité sur les données émises et réémises dans le sens de dévoiler les techniques de protection utilisées.
Les services de sécurité pris en charge par IPv6 sont assurés par les modules AH (Authentification Header) et ESP (Encapsulating Security Payload) avec les spécifications suivantes :
Le module d’authentification AH
Cette extension permet de s’assurer que l’émetteur du message est bien celui qu’il prétend être (authentification). Elle assure aussi le contrôle d’intégrité pour garantir au récepteur que personne n’a modifié le contenu du message lors de son transfert sur le réseau.
Elle peut optionnellement servir de moyens pour détecter les re-jeux.
Côté expéditeur, cette transformation consiste à calculer un authentificateur, ce calcul est effectué sur l’ensemble du datagramme, et le résultat est ensuite joint au datagramme.
MECANISME DE FONCTIONNEMENT DE LA SECURITE DANS IPv6
Sur IPv6, la sécurisation est partie intégrante du protocole. Elle est donc intégrée au niveau de la couche réseau du modèle et est transparente aux autres protocoles qui se trouvent aux niveaux supérieurs. Elle est assurée en grande partie par IPSec avec plusieurs modes de fonctionnement et en utilisant certains mécanismes.
Modes de fonctionnement d’IPSec
IPSec admet deux (2) modes de fonctionnement :
mode Transport qui protège juste les données transportées ;
mode Tunnel qui protège en plus des données transportées l’en-tête IP.
Le mode transport n’est utilisable que sur des équipements terminaux car, en cas d’utilisation sur des équipements intermédiaires, le paquet peut atteindre la destination finale sans pour autant passer par la passerelle qui est chargée de le déchiffrer. Ainsi le mode tunnel pallie à ce problème en encapsulant le paquet IP dans un nouveau IP pour lequel les adresses source et destination sont celles des équipements IPSec.
Les éléments constitutifs d’IPSec
IPSec est composé de protocoles de sécurité, protocoles d’échange de clefs et de bases de données.
protocoles de sécurité : AH et ESP,
protocole d’échange de clefs : Internet Key Exchange (IKE) [Per, 12]
Il exécute les fonctions suivantes:
authentifie et protège les identités des pairs d’IPSec
négocie une politique combinée d’IKE et de SA entre les communicants pour protéger l’échange d’IKE
effectue un échange authentifié de Diffie-Hellman avec le résultat afin d’avoir des clefs secrètes partagées assorties.
installent un tunnel bloqué pour négocier des paramètres de la phase 2 d’IKE. Nous avons deux modes de production d’IKE qui sont le mode principal et le mode agressif.
Le mode principal a trois échanges dans les deux sens entre les tiers communicants.
– Premier échange: Accord sur les algorithmes et les fonctions de hachage employés pour fixer les communications d’IKE pour définir les paramètres IKE et SA convenus dans chaque pair.
– En second échange: emploie un échange de Diffie-Hellman pour produire les paramètres constituant les éléments de base secret partagé. Et ce secret est employé pour produire des clefs secrètes et pour passer des annonces (nombres aléatoires envoyés à l’autre partie et alors signés et retournés pour prouver leur identité).
– Troisième échange: Vérifie l’identité du vis-à-vis. La valeur d’identité est l’IP ADDRESS du pair d’IPSec sous la forme chiffrée.
Les résultats principaux du mode principal définissent le couple (IKE, SAS) entre les tiers communicants pour fournir un tunnel protégé pour des échanges protégés suivant ISAKMP entre les pairs d’IKE. Le couple (IKE, SA) indique des valeurs pour l’échange d’IKE: la méthode d’authentification employée, chiffrage et les algorithmes d’informations parasites, le groupe de Diffie-Hellman utilisé, la durée de vie de SA et les valeurs principales secrètes partagées pour les algorithmes de chiffrage.
En mode agressif, peu d’échanges sont faits, et avec peu de paquets. Sur le premier échange, presque tout est focalisé dans les valeurs proposées d’IKE SA: la clef public de Diffie-Hellman; une annonce autres parties; et un paquet d’identité, qui peut être employé pour vérifier l’identité par l’intermédiaire d’un tiers. Le récepteur renvoie tout ce qui est nécessaire pour accomplir l’échange. La seule chose laissée est pour que l’initiateur confirme l’échange. La faiblesse d’employer le mode agressif est que les deux côtés ont échangé l’information avant qu’il y ait un canal sécurisé. Par conséquent, il est possible « de renifler » le support et de découvrir qui a formé une nouvelle SA. Cependant, il est plus rapide que le mode principal.
bases de données internes : Security Policy Database (SPD) et Security Association Database (SAD).
Le SPD précise, en fonction du “ sélecteur ” choisi, les actions à effectuer sur un paquet. Trois actions sont possibles :
soitle trafic n’est pas autorisé à être émis par une station, à transiter via une passerelle de sécurité ou à être reçu par une application : il est donc supprimé ;
soitle trafic est autorisé mais ne nécessite aucun service de sécurité ; il est alors ignoré ;
soit le trafic nécessite une protection IPSec auquel cas le SPD spécifie pour chaque électeur l’association ou les associations de sécurité à appliquer. Cette (ou ces) association(s) sont définies dans la base de données SAD.
Le SAD contient l’ensemble des associations de sécurité et précise pour chacune d’elles, les services et les mécanismes de sécurité à appliquer. Ainsi si d’après SPD, un paquet nécessite une protection, il est facile de retrouver la (ou les) associations de sécurités à appliquer à l’aide du SPI, de l’adresse destination et du protocole AH ou ESP sélectionné. Il reste alors à appliquer les services de sécurité adéquats.
Ces différents protocoles et bases de données sont combinés de façon à constituer le mécanisme de fonctionnement d’IPSec. Ce principe fait l’objection de la section qui suit.
Risque d’interprétation des données échangées
Les informations échangées pourraient être interceptées et analysées jusqu’à reconstituer le secret. En effet, les données Xaet X b peuvent être décortiquées et permettre grâce aux valeurs p et q, la découverte des valeurs non partagées a et b à travers un calcul logarithmique. Cette découverte de a et b facilitera le calcul de K S qui constitue le secretpartagé entre les deux utilisateurs communicants. S’il est prouvé robuste en considérant les caractéristiques actuelles des ordinateurs, DH devra faire face aux ordinateurs quantiques comme révèle la thèse de Aaron C Geary [Gea 09]. A ce niveau, il rend ce premier risque très limité actuellement compte tenu de la taille des clés utilisées et des caractéristiques actuelles des ordinateurs utilisés. Si nous nous référons au tableau suivant, nous constatons que cerisque est presque négligeable.
PROPOSITION DE RESOLUTIONS DES FAILLES DE DH
Des études ont été menées dans le sens de pouvoir régler les problèmes décelés au niveau de DH. Celles-ciont mené à certains résultats et des protocoles ont été mis en place.
C’est dans ce sens que nous avons le protocole STS [WM 99], le protocole A New-Two-Pass Key Agreement Protocol [SEB 05] et le protocole HMQV [Kra 05].
Le protocole STS
Le protocole STS [Sti, 96 ] est considéré comme une alternative à DH. Il consiste à combiner l’algorithme DH avec de la signature numérique. Cette combinaison permet d’effectuer une authentification mutuelle des deux interlocuteurs. Cette combinaison permet de faire face à certains risques auxquels DH est confrontés. Ces risques, comme définis précédemment, se présentent sous forme entre autre d’interception des données confidentielles, d’usurpation d’identité, de la remise en cause de l’intégrité. Il faut noter que tous ces risques découlent de l’attaque de « l’homme du milieu».
Descriptif du protocole STS
Les interlocuteurs A et B disposent d’un générateur pseudo-aléatoire, d’un système de chiffrement dont la fonction de chiffrement est Є et de déchiffrement D, de fonction de signature S et de vérificateur V. Chacun des intervenants envoie la clé de session chiffrée et signe ; l’autre reçoit cette information, la déchiffre et vérifie la signature ; si le test est concluant il effectue à son tour les mêmes opérations. Le protocole STS consiste à combiner la clé DH avec de la signature numérique
Les deux interlocuteurs A et B vont échanger suivant le principe décrit par la figure n°14.
Complexité
On remarque une certaine complexité du mécanisme mis en place liée aux mécanismes utilisés pour éliminer « l’homme du milieu ». Pour faire face à cette attaque, STS utilise la signature numérique. Et ce procédé s’appuie sur la clé privée de l’émetteur pour sa mise en place d’où un besoin d’utiliser un algorithme à clé asymétrique ne serait-ce que pour la génération des clés. En résumé, STS, pour sa mise en place a besoin de DH, de la génération de clés publique et privée via un algorithme à clé asymétrique, de la signature numérique qui utilise à son tour une fonction de hachage. Cette combinaison de ces mécanismes contribue à la complexité associée à STS.
|
Table des matières
LISTE DES FIGURES
LISTE DES TABLEAUX
GLOSSAIRE
INTRODUCTION GENERALE
Partie1 : LA SECURITE DANS LE PROTOCOLE IPv6
INTRODUCTION
I. CONCEPTS DE BASE SUR LA SECURITE DANS LE PROTOCOLE COMMUNICATION
I.1. Les services de sécurité de base
I. 2. Les mécanismes de chiffrement de base
I.2.1. La cryptographie classique
I.2.2. La cryptographie algorithmique
I.2.3. La cryptographie quantique
I.3. Les protocoles de sécurité
II. CARACTERISTIQUES GENERALES DU PROTOCOLE IPv6
II.1. Le positionnement du protocole IPv6 dans le modèle OSI
II.2 L’adressage dans l’environnement IPv6
II.4. La mobilité sous IPv6
II.5. La configuration automatisée dans l’environnement IPv6
II.6. Le routage efficace dans le protocole IPv6
II.7. La sécurité globale dans le protocole IPv6
III SERVICES DE SECURITE ASSURES PAR LE PROTOCOLE IPv6
III.1. Le module d’authentification AH
III.2 Le module de confidentialité ESP
IV. MECANISME DE FONCTIONNEMENT DE LA SECURITE DANS IPv6
IV.1. Modes de fonctionnement d’IPSec
IV.2. Les éléments constitutifs d’IPSec
IV.3. Principe de fonctionnement d’IPSec
V. NEGOCIATION DE L’ASSOCIATION DE SECURITE
IV.1. Les phases de la négociation de l’AS
IV.2. Système d’échange Diffie-Hellmann
CONCLUSION
Partie 2 : LIMITES DE SECURITE DANS LE PROTOCOLE IPv6 : VULNERABILITE ET SOLUTIONS
INTRODUCTION
I. LIMITES GENERALES DE LA SECURITE DANS IPv6
I.1. Non identification des personnes
I.2. Problème au niveau des communications multicast
I.3. Non standardisation des PKI
I.4. Durée de vie fixe des IKE, SA
I.5. Usurpation
II. DIFFIE-HELMANN ET RISQUES
II.1. Risque d’interprétation des données échangées
II.2. Attaque de « l’homme du milieu »
III. PROPOSITION DE RESOLUTIONS DES FAILLES DE DH
III.1. Le protocole STS
III.1. Descriptif du protocole STS
III.1.2 Prise en charge des failles de DH par STS
III.1.3 Limites de STS
III.2. Le protocole A New-Two-Pass Key Agreement
II.2.1. Présentation du protocole A New-Two-Pass Key Agreement
III.2.2. Prise en charge des failles de sécurité de DH par le protocole A New-Two-Pass Key Agreement
II.2.3. Limites du protocole A New-Two-Pass Key Agreement
III.3. Le protocole HMQV
III.3.1. Principe de HMQV
III.3.2. Prise en charge des failles de sécurité de DH par HMQV
III.3.3. Limites de HMQV
CONCLUSION
Partie 3: LE SYSTEME D’ECHANGE DE CLES : S-WANE
INTRODUCTION
I. PRESENTATION DU MODELE S-WANE
I.1. Principe du modèle S-WANE
I.2. Le modèle S-WANE face aux attaques encourues par DH
II. ETUDE COMPARATIVE ENTRE S-WANE ET LES SOLUTIONS EXISTANTES
II.1 Comparaison par rapport à l’attaque « Homme du Milieu »
II.2. Mécanismes et chiffrement du secret échangé
II.3. Interception et interprétation des données échangées
II.4 Evaluation comparative de la complexité des mécanismes
II.5 Estimation des délais des solutions
II.2.6 Comparaison de la robustesse des solutions
III. INTEGRATION DU MODELE S-WANE AU PROTOCOLE IPv6
III.1 S-WANE versus DH POUR IPv6
III.2 Résultats de la simulation DH et S-WANE
III.3. Interprétation des résultats
III.3.1 Fiabilité de S-WANE et DH
III.3.2. Réduction du délai de S-WANE suivant les tailles de clés utilisées
III.3.3.Atténuation de la différence de délai entre S-WANE et DH
III.4. IMPACT SUR LE PROTOCOLE IPv6
CONCLUSION
CONCLUSION GENERALE
BIBLIOGRAPHIE
ANNEXE : LISTING DU PROGRAMME DE SIMULATION