1 / 73 Crypto et sécurité de l information Chap 4: Gestion des clés symétriques ou asymétriques, Protocoles d authentification, Kerberos, Protocoles de sécurité Rhouma Rhouma https://sites.google.com/site/rhoouma Ecole superieure d Economie Numerique 2ème Mastère Web Intelligence
2 / 73 Plan 1 Distribution des clés secrètes dans les alg symétriques 2 Distribution des clés publiques ds les alg asymétriques 3 Authentification des utilisateurs : contrôle d accés 4 Sécurité du Web (TCP/IP) SSL mitm attack : sslstrip 5 Sécurité niveau application : sécurité e-mail PGP Sécurité IP
Distribution des clés secrètes dans les alg symétriques Plan 3 / 73 1 Distribution des clés secrètes dans les alg symétriques 2 Distribution des clés publiques ds les alg asymétriques 3 Authentification des utilisateurs : contrôle d accés 4 Sécurité du Web (TCP/IP) SSL mitm attack : sslstrip 5 Sécurité niveau application : sécurité e-mail PGP Sécurité IP
Distribution des clés secrètes dans les alg symétriques Problème de distribution et gestion des clés 4 / 73 Le problème de génération et distribution des clés est un problème majeure dans les communications sécurisées. La sécurité des protocoles et des alg de cryptage est basé sur ce problème fondamental La gestion des différents clés des différents entités est aussi un problème majeur Les alg symétriques requiert que les deux interloculteurs partagent la même clé secrète les alg asymétriques requiert que les interlocuteurs possédent des clés publiques valides de leurs correspondants
Distribution des clés secrètes dans les alg symétriques Distribution des clés 5 / 73 Alice et Bob ont beaucoup d alternatives pour distribuer une clé Alice peut sélectionner une clé et la délivre physiquement à Bob (main à main) Une tierce partie peut sélectionner et délivrer la clé à Alice et Bob Si Alice et bob ont communiqué auparavant, ils peuvent utiliser l ancienne clé pour chiffrer la nouvelle Si Alice et Bob ont des lignes sécurisés avec une tierce partie Charlie, alors Charlie peut relayer la clé entre Alice et bob.
Distribution des clés secrètes dans les alg symétriques Hiérarchie des clés 6 / 73 Généralement deux types de clés clé de session clé temporaire utilisée por chiffrer les données entre deux interlocuteurs utilisée pour une seule session puis rejeté clé principale : utilisée pour chiffrer les clés de sessions partagée par les utilisateurs et un centre de distribution de clé (KDC)
Distribution des clés secrètes dans les alg symétriques Protocoles d authentification 7 / 73 utilisés pour convaincre les entités de leurs identités et pour échanger des clés de session Peut être dans un seul sens ou mutuel (ds les deux sens) Les protocoles d authentification permettre de garantir : confidentialité : pour protéger les clés de session Timeliness (tiens compte du timing) : pour empêcher les attaques replay (rejeu)
Distribution des clés secrètes dans les alg symétriques Authentification dans un seul sens 8 / 73 ce type d authentification est requis lorsque émetteur et récepteur ne sont pas en communication en même temps (ex : e-mail) l entête de ce type de protocole doit être clair (non chiffré) pour être délivré sans problème par un système d email le contenu du corps d email peut être chiffré l émetteur doit être authentifié
Distribution des clés secrètes dans les alg symétriques Authentification par cryptographie symétrique 9 / 73 peut être faite moyennant un centre de distribution de clé (KDC) chaque entité partage sa clé principale avec le KDC le KDC génère les clés de session utilisés pour la connexions entre les différents entités les clés principales sont utilisés pour distribuer les clés de session
Distribution des clés secrètes dans les alg symétriques Scénario de distribution de clé : Needham-Schroeder 10 / 73
Distribution des clés secrètes dans les alg symétriques Protocole de Needham-Schroeder 11 / 73 distribution de clés par une tierce partie pour une session entre deux entités A et B orchestré par un KDC le protocole est comme suit : 1 A -> KDC : ID A ID B N 1 2 KDC -> A : E(K a, [K s ID B N 1 E(K b, [K s ID A ])]) 3 A -> B : E(K b, [K s ID A ]) 4 B -> A : E(K s, [N 2 ]) 5 A -> B : E(K s, [f (N 2 )])
Distribution des clés secrètes dans les alg symétriques replay attack sur Needham-Schroeder 12 / 73 Le protocole est vulnérable à une replay-attack : le message de l étape 3 peut etre retransmit convainquant B qu il est en communication avec A solution pour résoudre ce problème : ajouter des timestamps dans l étape 2 et 3 ajouter un nombre aléatoire à usage unique externe pour chaque échange de clé K s
Distribution des clés secrètes dans les alg symétriques Distribution de clé automatique dans un protocole orienté connexion 13 / 73
Distribution des clés secrètes dans les alg symétriques Distribution d une clé à l aide d une alg asymétrique : une simple distribution de clé 14 / 73 Merkle a proposé le protocole suivant pour distribuer une clé :
Distribution des clés secrètes dans les alg symétriques Man-in-the-middle-attack sur le protocole de Merkle 15 / 73
Distribution des clés secrètes dans les alg symétriques Distribution d une clé à l aide d une alg asymétrique : confidentialité et authentification 16 / 73
Distribution des clés publiques ds les alg asymétriques Plan 17 / 73 1 Distribution des clés secrètes dans les alg symétriques 2 Distribution des clés publiques ds les alg asymétriques 3 Authentification des utilisateurs : contrôle d accés 4 Sécurité du Web (TCP/IP) SSL mitm attack : sslstrip 5 Sécurité niveau application : sécurité e-mail PGP Sécurité IP
Distribution des clés publiques ds les alg asymétriques Distribution des clés publiques 18 / 73 Peut se faire par : annonce publique à travers une archive (répertoire) disponible publiquement à travers Une autorité de clé publique Certificats de clés publiques
Distribution des clés publiques ds les alg asymétriques Distribution par Annonce publique 19 / 73 Les utilisateurs distribuent leurs clés publiques aux bénéficiaires (intéressés) ou par diffusion à la communauté attacher les clés publiques de PGP aux e-mails, ou les envoyer aux nouveaux groupes ou diffusion aux mails du carnet d adresses Principal problème de cette méthode est la modification = contrefaçon n importe qui peut créer une clé prétendant être quelqu un d autre et la diffuser jusqu à ce que la falsification soit découverte, l adversaire peut communiquer comme si c était l utilisateur légitime
Distribution des clés publiques ds les alg asymétriques Distribution des clés par répertoire disponible publiquement 20 / 73
Distribution des clés publiques ds les alg asymétriques Distribution de clé par autorité de clé publique 21 / 73
Distribution des clés publiques ds les alg asymétriques Distribution de clé par Certificats 22 / 73 Les certificats permettent l échange de clés publiques sans acces en temps réel à une autorité de clé publique Le certificat fait le lien entre l identité et la clé publique généralement avec d autre info tel que période de validité, droits d utilisation le contenu de la certificat est signé par une une autorité de clé publique ou une autorité de certification (AC) n importe quel utilisateur connaissant la clé publique de l AC peut vérifier la signature
Distribution des clés publiques ds les alg asymétriques Création et échange des certificats 23 / 73
Distribution des clés publiques ds les alg asymétriques Utilisation du certificat 24 / 73
Distribution des clés publiques ds les alg asymétriques Format X.509 25 / 73
Distribution des clés publiques ds les alg asymétriques La hiérarchie des autorités de certification 26 / 73 Si les deux utilisateurs partage la même CA, alors ils connaissent tous les deux sa clé publique sinon les autorité de certifications forment une héarchie utiliser des certificats liant les membres de la hiérarchie pour valider les autres CA chaque CA a des certificats pour ses clients et ses parents chaque client fait confiance à ses parents la hiérarchie permette la vérification de n importe quel certificat d un CA par les utilisateurs des autres CA dans la héarchie
Distribution des clés publiques ds les alg asymétriques La hiérarchie des autorités de certification 27 / 73
Authentification des utilisateurs : contrôle d accés Plan 28 / 73 1 Distribution des clés secrètes dans les alg symétriques 2 Distribution des clés publiques ds les alg asymétriques 3 Authentification des utilisateurs : contrôle d accés 4 Sécurité du Web (TCP/IP) SSL mitm attack : sslstrip 5 Sécurité niveau application : sécurité e-mail PGP Sécurité IP
Authentification des utilisateurs : contrôle d accés Authentification des utilisateurs 29 / 73 Aspect fondamental de sécurité : base de controle d acces c est le processus de la vérification d identité revendiqué par un système l authentification se fait en deux étapes identification : spécifier l identifiant vérification : lier l identité (du système ou la personne) à l identifiant ce n est pas l authentification de message
Authentification des utilisateurs : contrôle d accés Les méthodes d authentification des utilisateurs 30 / 73 Quelque chose que vous connaissez... mot de passe, PIN Quelque chose que vous avez... Clé physique, jeton, carte magnétique, carte à puce Quelque chose que vous êtes... Empreinte digitale, la voix, la rétine, l iris Quelque part où vous êtes... localisation GPS Préférable d utiliser deux ou plus de ce qui précède : Appelé authentification à deux facteurs
Authentification des utilisateurs : contrôle d accés Jeton d authentification (de RSA) basé sur le temps 31 / 73
Authentification des utilisateurs : contrôle d accés Empreintes digitales 32 / 73
Authentification des utilisateurs : contrôle d accés Le Scan d Iris 33 / 73
34 / 73 Plan Sécurité du Web (TCP/IP) 1 Distribution des clés secrètes dans les alg symétriques 2 Distribution des clés publiques ds les alg asymétriques 3 Authentification des utilisateurs : contrôle d accés 4 Sécurité du Web (TCP/IP) SSL mitm attack : sslstrip 5 Sécurité niveau application : sécurité e-mail PGP Sécurité IP
Sécurité du Web (TCP/IP) Sécurité du Web 35 / 73 Le Web (TCP/IP) est utilisé en commerce, par le gouvernement et par des individuels Mais le web est vulnerable il y a beaucoup de problèmes qui menacent : la confidentialité l intégrité la disponibilité l authentification il faut des mécanismes additionnels à la pile de protocole TCP/IP
Sécurité du Web (TCP/IP) Positionnement des mécanismes de sécurité dans TCP/IP 36 / 73
37 / 73 Plan Sécurité du Web (TCP/IP) SSL 1 Distribution des clés secrètes dans les alg symétriques 2 Distribution des clés publiques ds les alg asymétriques 3 Authentification des utilisateurs : contrôle d accés 4 Sécurité du Web (TCP/IP) SSL mitm attack : sslstrip 5 Sécurité niveau application : sécurité e-mail PGP Sécurité IP
38 / 73 SSL Sécurité du Web (TCP/IP) SSL Secure Socket Layer est un service de sécurité Transport développé par Netscape etintegré dans son navigateur est devenu le standard internet TLS (Transport Layer Security) utilise TCP pour fournir un service de sécurité de bout en bout
Sécurité du Web (TCP/IP) SSL 39 / 73
Sécurité du Web (TCP/IP) SSL 40 / 73
41 / 73 Sécurité du Web (TCP/IP) Encapsulation de SSL SSL
42 / 73 Sécurité du Web (TCP/IP) SSL SSL Record Protocol Services Confidentialité utilise un cryptage symétrique avec une clé partagé défini par le protocole Handshake AES, IDEA, RC2-40, DES-40, DES, 3DES, Fortezza, RC4-40, RC4-128 le message est compressé avant cryptage Intégrité : utilise un MAC avec une clé secrète partagée
43 / 73 Sécurité du Web (TCP/IP) SSL Le protocole SSL Handshake permette au serveur et client de : s authentifier l un à l autre négocier les algorithmes de cryptage et du MAC négocier les clés cryptographiques qui vont être utilisées comprend une série de messages dans plusieurs phases établir les capacités de sécurité Authentification du serveur et échange de clés Authentification du client et échange de clés Termine la connexion
44 / 73 Sécurité du Web (TCP/IP) SSL Les messages de SSL Handshake
45 / 73 Sécurité du Web (TCP/IP) Le protocole Handshake (établissement de connexion) en action SSL
46 / 73 HTTPS Sécurité du Web (TCP/IP) SSL HTTPS est HTTP bsé sur SSL Combinaison de HTTP et SSL/TLS pour sécuriser les communications entre la navigateur et le serveur Utilise https :// URL au lieu de http :// Utilise le port 443 au lieu de 80 chiffre : l url, le contenu, la forme de données, cookies, l entête HTTP
47 / 73 Plan Sécurité du Web (TCP/IP) mitm attack : sslstrip 1 Distribution des clés secrètes dans les alg symétriques 2 Distribution des clés publiques ds les alg asymétriques 3 Authentification des utilisateurs : contrôle d accés 4 Sécurité du Web (TCP/IP) SSL mitm attack : sslstrip 5 Sécurité niveau application : sécurité e-mail PGP Sécurité IP
48 / 73 SSLstrip Sécurité du Web (TCP/IP) mitm attack : sslstrip man in the middle attack sur SSL SSL peut parfois donner un faux sentiment de securité Moxie Marlinspike a crée sslstrip et l a présenté à Black Hat DC 2009 http ://www.thoughtcrime.org/ N attaque pas SSL, mais la transition de la communication non-chiffrée à la communication chiffrée.
49 / 73 Sécurité du Web (TCP/IP) connexion https normale mitm attack : sslstrip
50 / 73 Sécurité du Web (TCP/IP) mitm attack : sslstrip connexion https hacké par sslstrip
51 / 73 Sécurité du Web (TCP/IP) comment fonctionne sslstrip? mitm attack : sslstrip Configurer la machine du mitm pour "IP forwarding" : Configure attack machine for IP forwarding rediriger le trafic http (port 80) à sslstrip (port 54321) : iptables t nat A PREROUTING p tcp destination-port 80 j REDIRECT to-port 54321 démarrer sslstrip : sslstrip l 54321 Configure ARP spoofing : arpspoof i eth0 t <targetip> <gatewayip> lancer un sniffer et collection des données (logins/passwords)
52 / 73 https normal Sécurité du Web (TCP/IP) mitm attack : sslstrip
53 / 73 https stripped Sécurité du Web (TCP/IP) mitm attack : sslstrip
Sécurité niveau application : sécurité e-mail PGP Plan 54 / 73 1 Distribution des clés secrètes dans les alg symétriques 2 Distribution des clés publiques ds les alg asymétriques 3 Authentification des utilisateurs : contrôle d accés 4 Sécurité du Web (TCP/IP) SSL mitm attack : sslstrip 5 Sécurité niveau application : sécurité e-mail PGP Sécurité IP
Sécurité niveau application : sécurité e-mail PGP Sécurité des e-mails 55 / 73 Confidentialité : Protection contre la divulgation des messages Authentification : de l émetteur du message intégrité du message : protection de la modification non-répudiation de l émetteur : preuve d envoie de message 2 applications : PGP et S/MIME
Sécurité niveau application : sécurité e-mail PGP PGP 56 / 73 Pretty good Privacy tres repandu pour protéger les e-mails développé par Phil Zimmermann PGP a sélectionné le meilleur des algorithmes cryptographiques pour les implementer intégré dans un seul programme sur UNIX, PC, MAcintoch et autres systèmes originalement gratuit, il y a des versions commerciales aussi
Sécurité niveau application : sécurité e-mail PGP Résumé sur les services PGP 57 / 73
Sécurité niveau application : sécurité e-mail PGP Opération PGP d authentification 58 / 73 1 l émetteur crée un message 2 il applique le hash SHA-160-bit sur le message 3 il fait joindre le condensé signé par RSA au message 4 Le récepteur déchiffre & retrouve le condensé 5 le récepteur verifie le condensé reçu
Sécurité niveau application : sécurité e-mail PGP Opération PGP de confidentialité 59 / 73 1 l émetteur forme une clé de session aléatoire de 128-bit 2 chiffre le message avec la clé de session 3 fait joindre la clé de session, chiffrée avec RSA, au message 4 le récepteur déchiffre et retrouve la clé de session 5 la clé de session est utilisée pour déchiffrer le message
Sécurité niveau application : sécurité e-mail PGP PGP : confidentialité et authentification 60 / 73 On peut appliquer les deux services au meme message creer la signature et l attacher au message chiffrer le message et la signature attacher les clés de session chiffré par RSA ou ElGamal
Sécurité niveau application : sécurité e-mail PGP Transmission et réception des messages PGP 61 / 73
Sécurité niveau application : sécurité e-mail PGP Gestion des clés dans PGP 62 / 73 Dans PGP, il n y a pas une tierce partie : autorité de certification chaque utilisateur de PGP est son propre CA un utilisateur peut signer les clés des utilisateurs qu il connaît les utilisateurs forme "un réseau de confiance" un utilisateur peut faire confiance à des clés que d autres ont signé s il y a une chaîne de signatures conduisant à ces utilisateurs un utilisateur possède une porte-clés avec des indicateurs de confiance pour chaque clé les utilisateurs peuvent également révoquer leurs clés
63 / 73 Plan Sécurité niveau application : sécurité e-mail PGP Sécurité IP 1 Distribution des clés secrètes dans les alg symétriques 2 Distribution des clés publiques ds les alg asymétriques 3 Authentification des utilisateurs : contrôle d accés 4 Sécurité du Web (TCP/IP) SSL mitm attack : sslstrip 5 Sécurité niveau application : sécurité e-mail PGP Sécurité IP
64 / 73 Sécurité niveau application : sécurité e-mail PGP Pourquoi sécurité IP Sécurité IP il existe des mécanismes de sécurité dédié à des applications spécifiques : ex : S/MIME, PGP, Kerberos,SSL/HTTPS mais il y a des problèmes de sécurité qui sont indépendants des couches de protocole On veut implémenter une sécurité sur le réseau et pour toutes les applications La sécurité IP fournit : l authentification la confidentialité gestion des clés applicable à des LAN, WAN publique et privée, et pour l internet implémente sécurité pour IPv4 et IPv6
65 / 73 Sécurité niveau application : sécurité e-mail PGP Scénario de IPsec Sécurité IP
66 / 73 Sécurité niveau application : sécurité e-mail PGP Les Atouts de IPsec Sécurité IP Lorsque IPsec est mis en oeuvre dans un pare-feu ou un routeur, il offre une sécurité renforcée qui peut être appliquée à tout le trafic traversant le périmètre IPsec dans un pare-feu est résistant au contournement si tout le trafic de l extérieur doit utiliser une IP pour entrer et le pare-feu est le seul moyen de l entrée à l organisation depuis l internet IPsec est en dessous de la couche de transport (TCP, UDP) et il est donc transparent pour les applications Il n est pas nécessaire de modifier le software sur le système ou de changer le serveur, lorsque IPsec est mis en oeuvre dans le pare-feu ou un routeur IPsec peut être transparente pour les utilisateurs Il n est pas nécessaire de former les utilisateurs sur les mécanismes de sécurité, ou sur le problème de creation/gestion des clés ou de révoquer la saisie de clés lorsque les utilisateurs quittent l organisation IPsec peut assurer la sécurité des utilisateurs individuels si nécessaire Ceci est utile pour les travailleurs hors site pour mettre en place un sous-réseau virtuel sécurisé (VPN) au sein d une organisation pour les applications sensibles
67 / 73 Sécurité niveau application : sécurité e-mail PGP Architecture IPsec Sécurité IP Architecture RFC4301 Security Architecture for Internet Protocol Authentication Header (AH) RFC4302 IP Authentication Header Encapsulating Security Payload (ESP) RFC4303 IP Encapsulating Security Payload (ESP) Internet Key Exchange (IKE) RFC4306 Internet Key Exchange (IKEv2) Protocol algorithmes Cryptographiques
68 / 73 Sécurité niveau application : sécurité e-mail PGP Services de IPsec Sécurité IP IPsec fournit des services de sécurité à la couche IP en permettant à un système de : Sélectionner les protocoles de sécurité requis Déterminer l algorithme à utiliser pour le service Mettre en place des clés cryptographiques nécessaires pour fournir les services demandés RFC 4301 énumère les services suivants : 1 contrôle d accès 2 l intégrité 3 Authentification de l origine des données 4 Rejet de paquets répétés 5 confidentialité (cryptage)
69 / 73 Sécurité niveau application : sécurité e-mail PGP Sécurité IP Mode Transport et Mode tunnel Mode Transport pour chiffrer et authentifier (option) les données des datagrames IP sécurité allégé pour performance meilleure approprié pour communication hôte à hôte utilisant ESP Mode tunnel chiffre tout le datagramme Ip (entete et données) ajoute une nouvelle entête pour le prochain routage (saut) aucun routeur dans le chemin ne peut examiner l IP chiffré (intérieur) approprié pour VPN, haute sécurité passerelle à passerelle
70 / 73 Sécurité niveau application : sécurité e-mail PGP AH mode transport Sécurité IP
71 / 73 Sécurité niveau application : sécurité e-mail PGP AH mode Tunnel Sécurité IP
72 / 73 Sécurité niveau application : sécurité e-mail PGP ESP mode transport Sécurité IP
73 / 73 Sécurité niveau application : sécurité e-mail PGP ESP mode Tunnel Sécurité IP