Crypto et sécurité de l’information

Page 1 sur 73Lecteur de document UniversityLib

Crypto et sécurité de l’information

Cryptography, Information Security · lab

Browse all sécurité informatique documents

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

1 / 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

2 / 73

Distribution des clés secrètes dans les alg symétriques

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

3 / 73

Distribution des clés secrètes dans les alg symétriques

Problème de distribution et gestion des clés

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

4 / 73

Distribution des clés secrètes dans les alg symétriques

Distribution des clés

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.

5 / 73

Distribution des clés secrètes dans les alg symétriques

Hiérarchie des clés

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)

6 / 73

Distribution des clés secrètes dans les alg symétriques

Protocoles d’authentification

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)

7 / 73

Distribution des clés secrètes dans les alg symétriques

Authentification dans un seul sens

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é

8 / 73

Distribution des clés secrètes dans les alg symétriques

Authentification par cryptographie symétrique

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

9 / 73

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

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 : IDA||IDB||N1

2 KDC -> A : E(Ka, [Ks||IDB||N1||E(Kb, [Ks||IDA])])

3 A -> B : E(Kb, [Ks||IDA])

4 B -> A : E(Ks, [N2])

5 A -> B : E(Ks, [f (N2)])

11 / 73

Distribution des clés secrètes dans les alg symétriques

replay attack sur Needham-Schroeder

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é Ks

12 / 73

Distribution des clés secrètes dans les alg symétriques

Distribution de clé automatique dans un protocole

orienté connexion

13 / 73

Advertisement

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é

Merkle a proposé le protocole suivant pour distribuer une clé :

14 / 73

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

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

17 / 73

Distribution des clés publiques ds les alg asymétriques

Distribution des clés publiques

Peut se faire par :

annonce publique

à travers une archive (répertoire) disponible publiquement

à travers Une autorité de clé publique

Certificats de clés publiques

18 / 73

Distribution des clés publiques ds les alg asymétriques

Distribution par Annonce publique

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

19 / 73

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

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

22 / 73

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

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

26 / 73

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

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

28 / 73

Authentification des utilisateurs : contrôle d’accés

Authentification des utilisateurs

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

29 / 73

Authentification des utilisateurs : contrôle d’accés

Les méthodes d’authentification des utilisateurs

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

Advertisement

précède : Appelé authentification à deux

facteurs

30 / 73

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

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

34 / 73

Sécurité du Web

Sécurité du Web (TCP/IP)

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

35 / 73

Sécurité du Web (TCP/IP)

Positionnement des mécanismes de sécurité dans

TCP/IP

36 / 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

37 / 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

38 / 73

Sécurité du Web (TCP/IP)

SSL

39 / 73

Sécurité du Web (TCP/IP)

SSL

40 / 73

Encapsulation de SSL

Sécurité du Web (TCP/IP)

SSL

41 / 73

SSL Record Protocol Services

Sécurité du Web (TCP/IP)

SSL

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

42 / 73

Le protocole SSL Handshake

Sécurité du Web (TCP/IP)

SSL

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

43 / 73

Les messages de SSL Handshake

Sécurité du Web (TCP/IP)

SSL

44 / 73

Sécurité du Web (TCP/IP)

SSL

Le protocole Handshake (établissement de connexion)

en action

45 / 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

46 / 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)

Advertisement

SSL

mitm attack : sslstrip

5 Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

47 / 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.

48 / 73

connexion https normale

Sécurité du Web (TCP/IP)

mitm attack : sslstrip

49 / 73

connexion https hacké par sslstrip

Sécurité du Web (TCP/IP)

mitm attack : sslstrip

50 / 73

comment fonctionne sslstrip ?

Sécurité du Web (TCP/IP)

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)

51 / 73

https normal

Sécurité du Web (TCP/IP)

mitm attack : sslstrip

52 / 73

https stripped

Sécurité du Web (TCP/IP)

mitm attack : sslstrip

53 / 73

Sécurité niveau application : sécurité e-mail PGP

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

54 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité des e-mails

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

55 / 73

Sécurité niveau application : sécurité e-mail PGP

PGP

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

56 / 73

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

1

2

3

l’émetteur crée un message

il applique le hash SHA-160-bit sur le message

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

58 / 73

Sécurité niveau application : sécurité e-mail PGP

Opération PGP de confidentialité

1

l’émetteur forme une clé de session aléatoire de 128-bit

2 chiffre le message avec la clé de session

3

4

5

fait joindre la clé de session, chiffrée avec RSA, au message

le récepteur déchiffre et retrouve la clé de session

la clé de session est utilisée pour déchiffrer le message

59 / 73

Sécurité niveau application : sécurité e-mail PGP

PGP : confidentialité et authentification

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

60 / 73

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

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

Advertisement

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

62 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

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

63 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

Pourquoi 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

64 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

Scénario de IPsec

65 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

Les Atouts de IPsec

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

66 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

Architecture IPsec

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

67 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

Services de IPsec

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 :

l’intégrité

1 contrôle d’accès

2

3 Authentification de l’origine des données

4 Rejet de paquets répétés

5 confidentialité (cryptage)

68 / 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

69 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

AH mode transport

70 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

AH mode Tunnel

71 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

ESP mode transport

72 / 73

Sécurité niveau application : sécurité e-mail PGP

Sécurité IP

ESP mode Tunnel

73 / 73