Beruflich Dokumente
Kultur Dokumente
Sommaire
Problmatiques Architecture et scurit Quelques statistiques Attaques sur les protocoles de la famille TCP/IP Classification des solutions Solutions intgrs aux applications Authentification
Typologie Mot de passe
Solution transparente aux applications Filtrage et proxy Protocole SSL/TLS (Secure Socket Layer/Transport Layer Secure) Protocole SET (Secure Electronic Transaction)
Protocoles de la couche application Plutt oriente texte Complexit du ct client Seul lauthentification est intgre quelques applications
Source: http://www.webappsec.org/projects/whid/
11
12
13
14
15
Propos initialement par Leslie Lamport [1] Pour protger lchange en clair des mots de passe
16
Implicite (Synchrone)
bas sur un numro de squence ou une horloge
17
18
19
20
21
Permet lauthentification mutuelle (mais non support par tous) Ouvert diffrents acteurs
Conus pour tre mis en Dfinition dune API uvre sur diffrents devices
22
23
24
25
hmac-sha1
Byte 19
4 bits 4 bits
27
otp-passe = 473174
28
OTP
RFC2289 fvrier 1998 Doit tre suprieur 9 caractres MD4, MD5, SHA1 NON Disponible Faible NON
HOTP
RFC4226 Dcembre 2005
Pas de phrase
MD4, MD5
SHA-1
NON
Disponible Moyen
OUI (Bellcore)
NON
29
Le Protocole SSL&TLS
SSL&TLS : Introduction
SSL dfini par netsacpe et intgr au browser Premire version de SSL test en interne Premire version de SSL diffus : V2 (1994) Version actuelle V3 Standard l IETF au sein du groupe Transport Layer Security (TLS) Standard au sein du WAP Forum Wireless Transport Layer Security (WTLS)
31
SSL : Architecture
NFS FTP SMTP SSL TCP IP HTTP Telnet SNMP UDP XDR RPC
32
Protocole scuris
HTTPS SSMTP SNNTP SSL-LDAP SPOP3
Port
443 465 563 636 995
Application
Transactions requterponse scurises Messagerie lectronique News sur le rseau Internet Annuaire X.500 allg Accs distant la bote aux lettres avec rapatriement des messages
33
Protocole scuris
FTP-DATA FTPS IMAPS TELNETS IRCS
Port
889 990 991 992 993
Application
Transfert de fichiers Contrle du transfert de fichiers Accs distant la bote aux lettres avec ou sans rapatriement des messages Protocole daccs distant un systme informatique Protocole de confrence par lcrit
34
SSL : Services
Authentification Serveur (obligatoire), client (optionnel) Utilisation de certificat X509 V3 A ltablissement de la session. Confidentialit Algorithme de chiffrement symtrique ngoci, cl gnr ltablissement de la session. Intgrit Fonction de hachage avec cl secrte : hmac(cl secrte, h, Message) Non Rejeu Numro de squence
35
SSL : Protocoles
Handshake CCS
TCP 36
Handshake (1/6)
Authentification du serveur et ventuellement du client, Ngociation des algorithmes de chiffrement et de hachage, change dun secret, Gnration des cls.
37
Handshake (2/6)
Message
HelloRequest ClientHello
Type de message
optionnel obligatoire
Sens de transmission
serveur p client client p serveur
Signification
Ce message demande au client d'entamer le Handshake. Ce message contient : le numro de version du protocole SSL ; le nombre alatoire : client_random ; l'identificateur de session : session_ID ; la liste des suites de chiffrement choisies par le client ; la liste des mthodes de compression choisies par le client.
ServerHello
obligatoire
serveur p client
Ce message contient : le numro de version du protocole SSL ; un nombre alatoire : serveur_random ; l'identificateur de session : session_ID ; une suite de chiffrement ; une mthode de compression.
38
Handshake (3/6)
Certificate
Optionnel
Ce message contient le certificat du serveur ou celui du client si le serveur le lui rclame et que le client en possde un. Ce message est envoy par le serveur que sil ne possde aucun certificat, ou seulement un certificat de signature. Par ce message, le serveur rclame un certificat au client. Ce message signale la fin de lenvoi des messages ServerHello et subsquents.
ServerKeyExchange
Optionnel
serveur p client
CertificateRequest ServerHelloDone
Optionnel Obligatoire
39
Handshake (4/6)
ClientKeyExchange
Obligatoire
client p serveur
Ce message contient le PreMasterSecret crypt laide de la cl publique du serveur. Ce message permet une vrification explicite du certificat du client. Ce message signale la fin du protocole Handshake et le dbut de lmission des donnes protges avec les nouveaux paramtres ngocis.
CertificateVerify Finished
Optionnel obligatoire
40
Handshake (5/6)
Client Hello Serveur Hello Certificate (Serveur Key Exchange) (Certificate Request) Server Hello Done (Certificate) Client Key Exchange (Certificate Verify) ChangeCipherSpec Finished ChangeCipherSpec Finished Application Data Application Data
41
Handshake (6/6)
Client Hello
Application Data
42
ChangeCipherSpec (CCS)
ChangeCipherSpec signale au Record toute modification des paramtres de scurit, Constitu dun message (1 octet)
43
Le protocole Record
Reoit les donnes des couches suprieures : (Handshake, Alert, CCS, HTTP, FTP ...), et les transmet au protocole TCP. Aprs application de :
la fragmentation des donnes en blocs de taille maximum de 214 octets la compression des donnes, fonction prvue mais non supporte actuellement la gnration dun condenst pour assurer le service dintgrit le chiffrement des donnes pour assurer le service de confidentialit
44
Le protocole Alert
Le protocole Alert peut tre invoqu : par lapplication, par exemple pour signaler la fin dune connexion par le protocole Handshake suite un problme survenu au cours de son droulement par la couche Record directement, par exemple si l'intgrit d'un message est mise en doute
45
Contexte
chec de vrification dun certificat rception dun MAC erron certificat prim certificat mis en opposition (rvoqu) certificat invalide pour dautres motifs que ceux prciss prcdemment interruption volontaire de session les donnes appliques la fonction de dcompression sont invalides (par exemple, trop longues) impossibilit de ngocier des paramtres satisfaisants un paramtre chang au cours du protocole Handshake dpasse les bornes admises ou ne concorde pas avec les autres paramtres rponse ngative une requte de certificat arrive inopportune dun message le certificat reu nest pas reconnu par le destinataire fatal fatal fatal fatal fatal fatal fatal
Type
fatal fatal
46
47
Opration
Ouverture dune nouvelle session (Handshake complet) Rafrachissement d'une session (Handshake simplifi) Ouverture dune nouvelle connexion Temps de calcul pour 16Ko de donnes (chiffrement ou dchiffrement, laboration et vrification du MAC)
Total (ms)
35,85 0,22 0,15 10,8
48
Enterprise Web Secure/VM 1.1 Beyond-Software Incorporated http://www.beyond-software.com Internet Information Server 4.0 Microsoft Corp. Java Server 1.1 Sun Microsystems Lotus Domino Go Webserver IBM 4.6.1 Oracle Web Application Server Oracle Corp. 3.01 Roxen Challenger 1.2b I SSLava WebSite Professional 2.2 WebTen 2.1 Idonex Phaos Technologies O'Reilly Software Tenon Intersystems
Netscape Enterprise Server 3.5.1 Netscape Communications Corp. http://www. netscape.com http://www.oracle.com/products http://www.roxen.com http://www.phaos.com/main.htm http://www.website.oreilly.com/ http://www.tenon.com/products/webten http://www.zeustech.net
49
SSLava Beta 1
Suite
RC4-40 MD5 RC4-128 MD5 RC4- 128 SHA RSA RC2 CBC-40 MD5 IDEA CBC SHA DES40 CBC SHA DESCBC SHA 3DES EDE CBC SHA DES40 CBC SHA DH et DSA DES CBC SHA 3DES EDE CBC SHA DES40 CBC SHA DH et RSA DES CBC SHA 3DES EDE CBC SHA DES40 CBC SHA DHE et DSA DES CBC SHA 3DES EDE CBC SHA DES40 CBC SHA DHE et RSA DES CBC SHA 3DES EDE CBC SHA
Export
50
Enterprise Web Secure/VM 1.1 Beyond-Software Incorporated http://www.beyond-software.com Internet Information Server 4.0 Microsoft Corp. Java Server 1.1 Sun Microsystems Lotus Domino Go Webserver IBM 4.6.1 Oracle Web Application Server Oracle Corp. 3.01 Roxen Challenger 1.2b I SSLava WebSite Professional 2.2 WebTen 2.1 Idonex Phaos Technologies O'Reilly Software Tenon Intersystems
Netscape Enterprise Server 3.5.1 Netscape Communications Corp. http://www. netscape.com http://www.oracle.com/products http://www.roxen.com http://www.phaos.com/main.htm http://www.website.oreilly.com/ http://www.tenon.com/products/webten http://www.zeustech.net
51
Attaques
Pistes dattaques classiques Vulnrabilits Scnarios dattaque
52
Attaques classiques
Pistes classiques
Casser les clefs Attack replay Man in the middle Attaque clair ouvert Taille des clefs Nonces (connection id) Certificats servent passer les clefs Clefs + Alas
Parades de SSL
53
Sources de vulnrabilit
Taille des clefs SSL v2 Certificats Implmentations
54
Scnarios dattaque
SSL v2 : Forcer une faible taille de clef Tous : Diffie-Hellman anonyme SSL v3 : Accepte Finished avant ChangeCipherSpec SSL v3 : Envoi de donnes chiffres avant rponse
serveur au Finished.
55
Exemple 1
Faible clefs Pas de vrification dintgrit
CryptoL CryptoL
56
Exemple 2
Tiers lcoute
57
Exemple 3
Phase 1
Phase 2
58
Exemple 4
Envoi de donnes chiffres Permet de casser la clef, puis de rpondre
59
Le Protocole SET
Introduction
SET (Secure Electronic Transaction), Dvelopp par Visa et Mastercard (1997) Supporte et scurise lacte de paiement Ncessite la possession dune carte bancaire Pas de modifications des circuits bancaires dautorisation et de tlcollecte
61
Autorit de certification
Passerelle de paiement
62
Cinq tapes
Inscription auprs du CA Demande dachat Autorisation de Payement Modification de lachat Collecte
63
64
Algorithmes SET
Opration Chiffrement/dchiffrement pour assurer la confidentialit des messages Cl, de siganture et de chiffrement Pour assurer lauthentification, lidentification, et lintgrit
SHA-1 HMAC-SHA-1
Gnration dun condensat pour assurer lintgrit Gnration dun condensat pour assurer lintgrit
65
Certificats
66
Demande Initiale
Sont Egaux ?
Reponse Initiale
Reponse Initiale
Signature
Condensat CA Sig. CA Cl
Signature
CA Sig. CA Cl Condensat
67
PAN
PAN
Cl Publique du CA
Cl alatoire de cryptage Symtrique Demande Inscription Chiffre Demande Inscription Claire Formulaire Inscription
PAN PAN
Cl Prive de CA
68
Formulaire Inscription
Formulaire Inscription
Signature Cl Prive de CA
CA Sig.
Condensat Sont Egaux ? Condensat Cl Publique du CA Formulaire Inscription
Condensat
Signature
CA Sig.
69
Cl Prive de CH
Cl Publique de CH
Signature
70
Cl Prive De CA
Cl Publique CH
2
CB
Signature
Cl Publique de CA Cl alatoire de cryptage Symtrique 3
CB
Cl Publique CH
Signature
CB
Cl Publique CH
Cl Publique CH
Signature
Signature
71
2 Formulaire Inscription Rempli Condensat Cl alatoire de cryptage Symtrique Cl Publique CH Condensat Sont Egaux ?
Cl Publique CH
Signature
72
Reponse de Certification
Reponse de Certification
Signature
Cl Prive de CA Condensat
Sont Egaux ?
Reponse de Certification
Condensat
Cl alatoire
Signature
CA Sig. CH Sig.
73
AuthReq PReq
1
AuthRes
3
PRes
4
CapReq
5
CapRes
6
Internet
Dtenteur de carte
Passerelle de paiement
74
Signature
Cl Alatoire de Cryptage Symtrique 1
Signature
Signature
Sont Egaux ?
Signature
Cl Publique de P
CH Act.
Signature
CH Act.
Signature
CH Act.
CH Sig.
CH Sig.
75
PInitRes AuthRevReq
M p CH Mp P
AuthRevRes InqReq InqRes CapRevReq CapRevRes CredReq CredRes CredRevReq CredRevRes PCertReq PCertRes BatchAdminReq BatchAdminRes Error
M p P CH p M M p CH M p P P p M M p P P p M M p P P p M M p P P p M M p P Pp M CH p M
76
77
Charges de calcul
78
Cration
Dchiffrement/ vrification
79
Charges de calcul
80
Comparaisons SET/SSL
Critre de comparaison
SET
SSL
Applications
Certificat du client Longueur de la cl RSA Longueur de la cl DES Signature des donnes Cl DES unique pour chaque message Ngociation des algorithmes cryptographiques Mise en oeuvre de mcanisme de compression des donnes Authentification des participants
non non
oui oui
oui
optionnelle
81
SET: lourdeur de la vrification systmatique des certificats lourde charge de calculs cryptographiques logiciels peu rpandus SSL: une seule authentification au dbut de la session, certificat non ncessaire pour le client plus de signature aprs le HandShake
82
Message SET
texte en clair condenst Algorithme de hachage cl prive de l'metteur signature numrique (sceau)
cl DES gnre alatoirement pour chaque message certificat de l'metteur message envoy
Message OAEP
83
84
85
- multiplexe plusieurs tunnels encryptes dans un mme canal - assure lauthentification du client par diffrentes mthodes - assure Intgrit , chiffrement et la compression des donnes
Couche Transport
86
87
88
89
Client
Demande connexion
Dchiffre le message et envoie le NONCE en clair
Serveur
Vrification de lexistante du Clefs pub de C
90
Handshake v1 (2/3)
Authentification RSA
91
Handshake v1 (3/3)
Authentification Rhost RSA En addition a lidentification traditionnelle par .rhosts, cette mthode utilise en plus une authentification par RSA pour le client
92
Handshake v2 (1/2)
Handshake V2 de SSH
Client
Serveur
Version didentification
KE (listes d algorithmes, e = g^x mod p) KE (algorithmes choisies, server_pub_key,f=g^y mod p, sig) User auth request Accept User auth method 1 Accept
Couche transport
Couche authentification
93
94
95
96
HOST 3
P2
P1
HOST 1 99
HOST 2
HOST 1 100
HOST 2
101
Pour Win98/98/2000/NT
F-Secure: http://f-secure.com
Windows et Mac
SSH Secure Shell: http://www.ssh.com
http://www.urec.cnrs.fr/securite/outils/ssh/documenta tion-ssh.pdf http://www.uk.research.att.com/vnc/sshvnc.html http://www.tac.nyc.ny.us/kim/ssh/ http://www.ssh.com/products/ssh/winhelp32/ssh2win client.pdf http://www.vandyke.com/solutions/ssh_overview/ssh _overview.pdf Impact of authorization to response times in Open Network Environment ( http://www.tml.hut.fi/Opinnot/Tik110.501/1998/papers/9responcetimes/responcetimes.h tml)
103