Sécurité : solutions protocolaires. Ahmed Serhrouchni Telecom ParisTech



Documents pareils
Action Spécifique Sécurité du CNRS 15 mai 2002

SSL/TLS: Secure Socket Layer/Transport Layer Secure Quelques éléments d analyse. GRES 2006 Bordeaux 12 Mai Ahmed Serhrouchni ENST-PARIS CNRS

SSL ET IPSEC. Licence Pro ATC Amel Guetat

Le protocole SSH (Secure Shell)

WTLS (Wireless Transport Layer Security)

Tunnels. Plan. Pourquoi? Comment? Qu est-ce? Quelles solutions? Tunnels applicatifs ESIL INFO 2005/2006. Sophie Nicoud

Le protocole sécurisé SSL

Protocole industriels de sécurité. S. Natkin Décembre 2000

Tunnels et VPN. 22/01/2009 Formation Permanente Paris6 86

Sécurité des RO. Partie 6. Sécurisation des échanges. SSL : Introduction. Rappel: Utilités la sécurité à tous les niveaux SSL SSH.

Sécurité des réseaux IPSec

Richard MONTBEYRE Master 2 Professionnel Droit de l Internet Administration Entreprises. La banque en ligne et le protocole TLS : exemple

SSL. Secure Socket Layer. R. Kobylanski janvier version 1.1 FC INPG. Protocole SSL Application avec stunnel

SSH, le shell sécurisé

EMV, S.E.T et 3D Secure

Protocole SSH-2.0. Tuan-Tu, TRAN. Janvier 2009

Sécurité des réseaux sans fil

Devoir Surveillé de Sécurité des Réseaux

La citadelle électronique séminaire du 14 mars 2002

Sécurité des réseaux Les attaques

FTPS AVEC UNE APPLIANCE FAST360 EN COUPURE. Table des matières

Windows Server 2008 Sécurité ADMINISTRATION ET CONFIGURATION DE LA SECURITE OLIVIER D.

Routeur Chiffrant Navista Version Et le protocole de chiffrement du Réseau Privé Virtuel Navista Tunneling System - NTS Version 3.1.

Skype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN

Introduction. Adresses

18 TCP Les protocoles de domaines d applications

Services Réseaux - Couche Application. TODARO Cédric

Réseaux. Moyens de sécurisation. Plan. Evolutions topologiques des réseaux locaux

Les applications Internet

Cours 14. Crypto. 2004, Marc-André Léger

Université de Reims Champagne Ardenne. HTTPS, SSL, SSH, IPSEC et SOCKS. Présenté par : BOUAMAMA Mohamed Nadjib AZIZ Xerin

L identité numérique. Risques, protection

Les Réseaux Privés Virtuels (VPN) Définition d'un VPN

La Technologie Carte à Puce EAP TLS v2.0

Les Protocoles de sécurité dans les réseaux WiFi. Ihsane MOUTAIB & Lamia ELOFIR FM05

Le protocole RADIUS Remote Authentication Dial-In User Service

L3 informatique TP n o 2 : Les applications réseau

La sécurité des réseaux. 9e cours 2014 Louis Salvail

Cisco Certified Network Associate

Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références

Kerberos en environnement ISP UNIX/Win2K/Cisco

Protection des protocoles

Chapitre 7. Sécurité des réseaux. Services, attaques et mécanismes cryptographiques. Hdhili M.H. Cours Administration et sécurité des réseaux

Journées MATHRICE "Dijon-Besançon" DIJON mars Projet MySafeKey Authentification par clé USB

Culture informatique. Cours n 9 : Les réseaux informatiques (suite)

La sécurité dans les grilles

LAB : Schéma. Compagnie C / /24 NETASQ

Cryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI

Mieux comprendre les certificats SSL THAWTE EST L UN DES PRINCIPAUX FOURNISSEURS DE CERTIFICATS SSL DANS LE MONDE

Internets. Informatique de l Internet: le(s) Internet(s) Composantes de l internet R3LR RENATER

1 L Authentification de A à Z

SÉCURITÉ RÉSEAUX/INTERNET, SYNTHÈSE

Cours de sécurité. Pare-feux ( Firewalls ) Gérard Florin -CNAM - - Laboratoire CEDRIC -

PACK SKeeper Multi = 1 SKeeper et des SKubes

Certificats (électroniques) : Pourquoi? Comment? CA CNRS-Test et CNRS

HAUTE DISPONIBILITÉ DE MACHINE VIRTUELLE AVEC HYPER-V 2012 R2 PARTIE CONFIGURATION OPENVPN SUR PFSENSE

CRYPTOGRAPHIE. Chiffrement par flot. E. Bresson. SGDN/DCSSI Laboratoire de cryptographie

Couche application. La couche application est la plus élevée du modèle de référence.

Programmation Réseau. ! UFR Informatique ! Jean-Baptiste.Yunes@univ-paris-diderot.fr

Du 03 au 07 Février 2014 Tunis (Tunisie)

Ce document décrit une solution de single sign-on (SSO) sécurisée permettant d accéder à Microsoft Exchange avec des tablettes ou smartphones.

(In)sécurité de la Voix sur IP (VoIP)

Linux. Sécuriser un réseau. 3 e édition. l Admin. Cahiers. Bernard Boutherin Benoit Delaunay. Collection dirigée par Nat Makarévitch

Protocoles utilisant des mécanismes d'authentification: TACACS+, RADIUS et Kerberos

1. Présentation de WPA et 802.1X

Ch2 La modélisation théorique du réseau : OSI Dernière maj : jeudi 12 juillet 2007

Présenté par : Ould Mohamed Lamine Ousmane Diouf

FORMATION SUR «CRYPTOGRAPHIE APPLIQUEE

TUNIS LE : 20, 21, 22 JUIN 2006

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

Firewall IDS Architecture. Assurer le contrôle des connexions au. Sécurité 1

TP 2 : Chiffrement par blocs

Hébergement de sites Web

SÉCURISATION DES CONNEXIONS À DISTANCE SUR LES RÉSEAUX DE CONTRÔLE

LINUX - Sécurité. Déroulé de l'action. - 3 jours - Contenu de formation

Réseaux Privés Virtuels

Note technique. Recommandations de sécurité relatives à IPsec 1 pour la protection des flux réseau

Expérience d un hébergeur public dans la sécurisation des sites Web, CCK. Hinda Feriani Ghariani Samedi 2 avril 2005 Hammamet

Présentation Internet

Réseaux et protocoles Damien Nouvel

La sécurité périmètrique multi-niveaux. Un white paper de Daniel Fages CTO ARKOON Network Security

Perso. SmartCard. Mail distribution. Annuaire LDAP. SmartCard Distribution OCSP. Codes mobiles ActivX Applet. CRLs

RESEAUX TCP/IP: NOTIONS AVANCEES. Preparé par Alberto EscuderoPascual

M1101a Cours 4. Réseaux IP, Travail à distance. Département Informatique IUT2, UPMF 2014/2015

Présentation du modèle OSI(Open Systems Interconnection)

Manuel des logiciels de transferts de fichiers File Delivery Services

Appliance FAST360 Technical Overview. Sécurité de la VoIP. Copyright 2008 ARKOON Network Security

La Latecion protection anti-intrusion Web Web Le concept «Zero effort Security» La protection des applications Extranet

Signature électronique. Romain Kolb 31/10/2008

IPFIX (Internet Protocol Information export)

VPN TLS avec OpenVPN. Matthieu Herrb. 14 Mars 2005

Proxy et reverse proxy. Serveurs mandataires et relais inverses

Sécurisation du réseau

Les solutions de paiement CyberMUT (Crédit Mutuel) et CIC. Qui contacter pour commencer la mise en place d une configuration de test?

Serveurs de noms Protocoles HTTP et FTP

Transcription:

Sécurité : solutions protocolaires Ahmed Serhrouchni Telecom ParisTech

Sommaire Problématiques Architecture et sécurité Quelques statistiques Attaques sur les protocoles de la famille TCP/IP Classification des solutions Solutions intégrés 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) 2

Problématiques Architecture et sécurité Architecture de communications en couche Partie traitement Dans le contexte utilisateur Indépendance entre les applications Partie transmission (4 premières couches) Intégrée au noyau du système d exploitation Peu de transparence entre les couches Protocoles de la couche application Plutôt orientée texte Complexité du côté client Seul l authentification est intégrée à quelques applications 3

Problématiques Architecture et sécurité Trois principales applications des SI La messagerie Le WEB L annuaire et bientôt la ToIP Le Web support et point d entré dans les SI Banque, achat, réservation, consultation, Cible idéale ou principale de toutes attaques Un réseau et des protocoles associés Ouvert Architecture: TCP/IP, Protocoles: HTTP, TCP, IP, ICMP, DNS, UDP 4

Problématiques Quelques statistiques Source: http://www.webappsec.org/projects/whid/ 5

Trafic de la messagerie Source: http://www.esafe.com/csrt/security-statistics.aspx 6

Internet Users 7

Problématiques Quelques statistiques Synthèse globale des attaques: 75% affectent les applications Web. 10% affectent la messagerie Si on considère le SPAM comme attaque alors on a 97% affectant la messagerie 1% affectent l annuaire 14% affectent les systèmes d exploitations et autres services et protocoles Attaques au niveau des navigateurs: 55% affectent Internet Explorer 45% affectent Firefox 8

Problématiques Attaques sur les protocoles de la famille TCP/IP Choix d implémentation Patchs Buffer overflow, Ping of death, land, Teardrop Design des protocoles Filtrage, Smurf, email :bombing, spamming, ftp bounce,tcp con. Killing, injection de tout types Usurpation d adresse ou d identité Authentification Sniffing, ARP spoofing, IP spoofing, TCP hijacking, email spoofing, dns cache poisoning, web spoofing, usurpation des identités, des mots de passe, Défaut d implémentation Patchs Voulue (chevaux de Troie, virus, iframe, ) Non voulue netscape server 9

Services de sécurité et cryptographie Confidentialité Intégrité Authentification Identification Non répudiation Horodatage 10

Problématiques Classification des solutions Les solutions protocolaires par extensions Etendre les protocoles concernés par des mécanismes protocolaires pour les renforcer Les solutions protocolaires transparentes Introduire des protocoles de sécurité entre les couches de manière transparente: SSH, SSL, TLS Les solutions protocolaires de signalisation Introduire des protocoles de sécurité au même niveau que le protocole à sécuriser: IPsec Les solutions de traitement locales Des solutions locales de filtrage, d analyse, de détection d intrusion, de conversion: firewall, IDS, Scan, anti-virus, Ces solutions sont en général transparentes 11

Solutions intégrés aux applications Authentification Seul le service d authentification est présent Application de la famille TCP/IP de type client/serveur (Requête/Réponse) Seul le client est authentifié Les données sont transmises en clair Authentification en général par mot de passe Souvent commun au système d exploitation Attaques: rejeu, homme au milieu, usurpation, 12

Solutions intégrés aux applications Authentification: typologie Authentification simple une seule entité est authentifiée Authentification mutuelle l ensembles des entités sont authentifiées Authentification souple basée sur une secret partagé Authentification forte basée sur un élément privé Peut être utilisée comme élément de preuve 13

Solutions intégrés aux applications Authentification: typologie Authentification peut être basée sur des éléments: logiques (mot de passe, certificat, ) physiques associés à l entité à authentifier (biométrie) Les mots de passe sont les plus usuels actuellement: Gestion relativement simple Stocké en clair ou «chiffré» du côté serveur Peuvent être stockées du côté client en clair Stockées de manière opaque et non gérable Authentification par certificats: Nécessitent une infrastructure 14

Solutions intégrés aux applications Authentification: par mot de passe Authentification par mot de passe en clair Échange en clair sur le réseau Peut être stocké en clair du côté serveur selon les applications Telnet, Ftp, POP, HTTP basic, bases de données (SQL), Parfois commun à plusieurs services Exemple: Protocole PAP (Password Authentication Protocol) Authentification par mot de passe avec challenge Le mot de passe ne transite pas durant l échange Est toujours stocké en clair du côté serveur Rarement commun à plusieurs services HTTP digest Exemple: protocole CHAP (Challenge Authentication Protocol) 15

Solutions intégrés aux applications Authentification: HTTP Basic Défini dans le RFC2617 Usuel dans SIP pour la VoIP et dans HTTP HTTP Basic Le client fait une requête http vers le serveur Le serveur lui retourne un message d erreur (status 401) et lui demande de s authentifier avec le mode basic Le client refait sa première requête avec des entêtes en plus incluant son identifiant (login) et son mot de passe, le tout en clair Le serveur lui retourne la ressource si les paramètres fournis ont été validés 16

Solutions intégrés aux applications Authentification: HTTP Digest Défini dans le RFC2617 HTTP Digest Le client fait une requête http vers le serveur Le serveur lui retourne un message d erreur (status 401) et lui demande de s authentifier avec le mode digest, le serveur lui renvoie un nonce (nombre aléatoire) Le client refait sa première requête avec des entêtes en plus incluant son identifiant (login) et le résultat du haché de son mot de passe combiné avec le nonce et éventuellement d autres paramètres (le mot de passe ne transite pas en clair) Le serveur lui retourne la ressource si les paramètres fournis ont été validés 17

Solutions intégrés aux applications Authentification: HTTP Digest Réponse du serveur à une requête du client nécessitant l authentification du client: HTTP/1.1 401 Unauthorized WWW-Authenticate: Digest realm="testrealm@host.com", qop="auth,auth-int", nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", opaque="5ccc069c403ebaf9f0171e9517f40e41«réponse du client au message précédent: Authorization: Digest username="mufasa", realm="testrealm@host.com", nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", uri="/dir/index.html", qop=auth, nc=00000001, cnonce="0a4f113b", response="6629fae49393a05397450978507c4ef1", opaque="5ccc069c403ebaf9f0171e9517f40e41" 18

Solutions intégrés aux applications Authentification: OTP Objectives: Lutter contre les écoutes et le rejeu du mot de passe N empêche pas l écoute mais empêche le rejeu Un mot de passe à usage unique Fonctionne avec toutes solutions à base de mot de passe Proposé initialement par Leslie Lamport [1] Pour protéger l échange en clair des mots de passe 19

Solutions intégrés aux applications Authentification: OTP (principes) Méthode de calcul d un mot de passe à usage unique Traitement basé sur une fonction de hachage Nécessite une coordination entre deux entités Explicite (Asynchrone) = Modèle Challenge/réponse Basé sur un ou plusieurs paramètres échangés dans un sens Implicite (Synchrone) basé sur un numéro de séquence ou une horloge 20

Solutions intégrés aux applications Authentification: OTP (propriétés) Pour la mise en œuvre de l authentification simple Nécessite une personnalisation par une phrase secrète partage d un secret au préalable entre les deux entités Parade structurelle contre les attaques par rejeu A différencier avec l attaque de l homme au milieu, qui elle dépend plus du protocole d authentification Renforce les mots de passe Parade contre l usurpation des mots de passe par écoute Permet une gestion des mots de passe limiter la durée de vie de la phrase secrète partager Capacité d intégration aux protocoles Traitement indépendant des protocoles d authentification Capacité de choix de la fonction de hachage déterminant pour le niveau de robustesse Un consortium pour cela [2] 21

Solutions intégrés aux applications Authentification: OTP (faq) N est pas un protocole d authentification deux instances nécessaires pour l authentification mutuelle Ne concerne pas la protection du secret partagé (phrase secrète) la protection du secret est de l ordre de l implantation N est pas une solution fermée Possibilité de la renforcer par l ajout de nouveaux paramètres Plusieurs réalisations sont possibles Problématique de l interopérabilité Ne permet pas la non-répudation Pas de preuve au sens juridique 22

Solutions intégrés aux applications Authentification: OTP (standards) Premier RFC S/KEY marque déposé de Bellcore RFC 1760, February 1995, statut «informational» [2] Une implémentation de référence de Bellcore [6] Utilisé au sein de Bellcore durant plusieurs années Plusieurs implantations disponibles Ran Atkinson propose une implantation de la NRL (Navy Laboratories Research) [5] OPIE: One Time Passwords In Everything (+ portable et avec MD5) http://ftp.icm.edu.pl/packages/replay/programs/nrl-opie/ 23

Solutions intégrés aux applications Authentification: OTP (standards) The Internet Engineering Task Force Internet (IETF) Groupe de travail de l IETF en 2001 pour proposer une alternative à S/KEY marque déposé de Bellcore Pour intégrer de nouvelles fonctions de hachage RFC 2289 (Obsoletes 1938): A One-Time Password System, statut «standard» [3] La référence actuelle au niveau des implantations. RFC4226 HOTP: An HMAC-Based One-Time Password Algorithm,, statut «informational» [4] L OATH (initiative for Open AuTHentication) basés sur un compteur et une fonction hmac HOTP (HMAC One Time Password) (Verisign, Aladdin, SafeHaus, etc.) http://www.openauthentication.org/ 24

Solutions intégrés aux applications Authentification: OTP (standards) Permet l authentification à deux facteurs Un référentiel le RFC2289 Facteur limitant: manque d interopérabilité entre matériel et logiciel Une évolution vers le RFC4226 Renforcement des calculs cryptographiques Préconisations pour les protocoles d authentification Préconisations pour les implémentations Identifications des points faibles Permet l authentification mutuelle (mais non supporté par tous) Ouvert à différents acteurs Conçus pour être mis en œuvre sur différents devices Définition d une API 25

Solutions intégrés aux applications Authentification: HOTP A l initiative de l OATH (Open AuTHentication) Acteurs: encarteur, équipementiers, opérateurs, fournisseurs de services http://www.openauthentication.org/ RFC4226 HOTP: An HMAC-Based One-Time Password Algorithm, statut «informational» [4] Basé sur un standard RFC2104 (HMAC: Keyed-Hashing for Message Authentication) [6,7] 26

Solutions intégrés aux applications Authentification: HOTP Standardisé à l IETF RFC2104 et au NIST FIPS PUB 198 hmac: Keyed-hash Message Authentication Code Fonction à trois paramètres : hmac (h, K s, M) = mac h : Fonction de hachage K s : Une clé secrète M: Un message ou data Le résultat d une fonction hmac se nomme un mac: mac (message authentication code) La taille du mac est identique à la taille du condensât de h 20 octets pour SHA-1 et 16 octets pour MD5 Fonction usuel dans les protocoles SSL, TLS, IPsec pour les services d authentification de l origine des données et d intégrité 27

Solutions intégrés aux applications Authentification: HOTP hmac (h, K s, M) = h (K s XOR opad h(k s XOR ipad M)) ipad = octet 0x36 et opad = octet 0x5C Soit B la taille des blocs ( B = 64 octets) La taille de B dépend de la fonction h La taille de K s doit être égale à celle de B Si la taille de K s est inférieure à celle de B, un pad de 0 Si la taille de K s est supérieure à la taille du condensât de h, on lui applique la fonction h 28

Solutions intégrés aux applications Authentification: HOTP HOTP est basé: sur une fonction hmac pour l interopérabilité des différents systèmes d authentification: un choix figé de la fonction de hachage et de la sémantique des paramètres La fonction hmac à la base de HOTP est composée de: Sha-1 fonction de hachage K s clé secrète C un compteur (en guise de data) 29

Solutions intégrés aux applications Authentification: HOTP Calcul du HOTP sur la base du hmac-sha1 K s, C hmac-sha1 Dynamictruncature Result 4 bytes Byte 0 Byte 19 4 Bytes X Bytes 4 bits 4 bits Y X 30

Solutions intégrés aux applications Authentification: HOTP Conversion des 4 bytes en un nombre DBC (Dynamic Binary Code) otp-passe = DBC mod 10 d avec ( d = 6) Exemple: Résultat du hmac 07 67 AE 34 67 B0 54 30 A1 56 07 67 AE 34 67 B0 54 30 A1 56 dynamic binary code DBC DBC = 54 30 A1 56 en décimale = 1412473174 otp-passe = 473174 31

Solutions intégrés aux applications Authentification: OTP (comparaisons) S/KEY OTP HOTP Standard RFC1760 RFC2289 RFC4226 Date Février 1995 février 1998 Décembre 2005 Taille de la passe phrase Doit être supérieur à 8 caractères Doit être supérieur à 9 caractères Pas de phrase Fonction de hachage Fonction de hachage avec clé MD4, MD5 MD4, MD5, SHA1 SHA-1 NON NON OUI - 128 bits min. 160 bits conseiller Implantation Disponible Disponible Disponible Niveau Moyen Faible Élevé interopérabilité Marque déposé OUI (Bellcore) NON NON 32

Le Protocole TLS/SSL

TLS/SSL : Introduction Probablement le protocole de sécurité le plus déployé Grâce à son intégration aux browsers Fonctionne aux niveau applicative Ne nécessite pas une configuration particulière du côté client Solution de sécurisation des échanges applicatives totalement transparente Commune aux applications de la famille TCP/IP 34

TLS/SSL : Introduction Initialement le protocole SSL a été défini par netsacpe et intégré au browser Navigator SSL V1.0 (~Début 1994) Testé en interne, et jamais diffusé SSL V2.0 (~Fin 1994) Toujours supporté par les browsers et serveurs mais très déconseillé Maintien pour raison de compatibilité SSL V3.0 (~Début 1997) Version actuelle supportée par tous! 35

TLS/SSL : Introduction TLS V1.0 (Janvier 1999) Transport Layer Secure Basé sur SSL V3.0 Standard de l IETF au sein du groupe TLS Décrit dans le RFC2246 (Standard) Automate semblable à SSL V3.0 Pas d interopérabilité avec SSL V3.0 Taille de quelques paramètres diffèrent WTLS (2001) Wireless Transport Layer Security Standard au sein du WAP Forum Automate semblable à SSL V3.0 Pas d interopérabilité avec TLS V1.0 Taille de quelques paramètres diffèrent Des certificats spécifiques «légers» WTLS devenu «End-to-end Transport Layer Security Specification» 36

TLS/SSL : Introduction Plusieurs autres contributions: RFC2716 EAP TLS Authentication Protocol RFC3546 TLS Extensions RFC4279 Pre-Shared Key Ciphersuites for TLS RFC4346 TLS Protocol Version 1.1 RFC5216 The EAP-TLS Authentication Protocol RFC5246 TLS Protocol Version 1.2 37

TLS/SSL : Introduction Plusieurs autres contributions: RFC2716 EAP TLS Authentication Protocol RFC3546 TLS Extensions RFC4279 Pre-Shared Key Ciphersuites for TLS RFC4346 TLS Protocol Version 1.1 RFC5216 The EAP-TLS Authentication Protocol RFC5246 TLS Protocol Version 1.2 RFC4347 Datagram Transport Layer Security 38

TLS/SSL : Architecture NFS FTP SMTP HTTP Telnet XDR TLS/SSL TCP SNMP UDP RPC IP 39

Ports au dessus de TLS/SSL (1/2) Protocole sécurisé Port Protocole non sécurisé Application HTTPS 443 HTTP Transactions requêteréponse sécurisées SSMTP 465 SMTP Messagerie électronique SNNTP 563 NNTP News sur le réseau Internet SSL-LDAP 636 LDAP Annuaire X.500 allégé SPOP3 995 POP3 Accès distant à la boîte aux lettres avec rapatriement des messages 40

Ports au dessus de TLS/SSL (2/2) Protocole sécurisé Port Protocole non sécurisé FTP-DATA 889 FTP Transfert de fichiers Application FTPS 990 FTP Contrôle du transfert de fichiers IMAPS 991 IMAP4 Accès distant à la boîte aux lettres avec ou sans rapatriement des messages TELNETS 992 Telnet Protocole d accès distant à un système informatique IRCS 993 IRC Protocole de conférence par l écrit 41

TLS/SSL : Services Authentification Serveur (obligatoire), client (optionnel) Utilisation de certificat X509 V3 A l établissement de la session. Confidentialité Algorithme de chiffrement symétrique négocié, clé généré à l établissement de la session. Intégrité Fonction de hachage avec clé secrète hmac(clé secrète, h, Message) Non Rejeu Numéro de séquence 42

TLS/SSL : Protocoles Application SSL Handshake Alert CCS Record TCP 43

TLS/SSL : Protocoles struct { ContentType type; ProtocolVersion version; uint16 length; opaque fra[tlsplaintext.length]; } TLSPlaintext; struct { uint8 major, minor; } ProtocolVersion; SSL V3.0 => major= 3, minor= 0 TLS V1.0 => major= 3, minor= 1 TLS V1.1 => major= 3, minor= 2 enum { change_cipher_spec(20), alert(21), handshake(22), application_data(23), (255) } ContentType; 44

Handshake Authentification du serveur obligatoire Certificat X509 V3 Extensions key usage: signature et chiffrement Diffie Helman dans le cas du certificat de signature Authentification du client optionnelle Certificat X509 V3 Extensions key usage: signature PSK (Pre Shared Key) Négociation Algorithme de chiffrement symétrique et taille des clés Fonction de hachage Echange de clé et génération des clés. 45

Handshake PDU du protocole Handshake struct{ HandshakeType msg_type; uint24 length; select (HandshakeType) { case hello_request: HelloRequest; case client_hello: ClientHello; case server_hello: ServerHello; case certificate: Certificate; case server_key_exchange: ServerKeyExchange; case certificate_request: CertificateRequest; case server_hello_done: ServerHelloDone; case certificate_verify: CertificateVerify; case client_key_exchange: ClientKeyExchange; case finished: Finished; } body; } Handshake; 46

Handshake Message Type de message Sens de transmission 47 Signification HelloRequest optionnel serveur client Ce message demande au client d'entamer le Handshake. ClientHello obligatoire client serveur Ce message contient : le numéro de version du protocole SSL ; le nombre aléatoire : client_random ; l'identificateur de session : session_id ; la liste des suites de chiffrement choisies par le client ; la liste des méthodes de compression choisies par le client. ServerHello obligatoire serveur client Ce message contient : le numéro de version du protocole SSL ; un nombre aléatoire : serveur_random ; l'identificateur de session : session_id ; une suite de chiffrement ; une méthode de compression.

Handshake Certificate Optionnel serveur client client serveur Ce message contient le certificat du serveur ou celui du client si le serveur le lui réclame et que le client en possède un. ServerKeyExchange Optionnel serveur client Ce message est envoyé par le serveur que s il ne possède aucun certificat, ou seulement un certificat de signature. CertificateRequest Optionnel serveur client Par ce message, le serveur réclame un certificat au client. ServerHelloDone Obligatoire serveur client Ce message signale la fin de l envoi des messages ServerHello et subséquents. 48

Handshake ClientKeyExchange Obligatoire client serveur Ce message contient le PreMasterSecret crypté à l aide de la clé publique du serveur. CertificateVerify Optionnel client serveur Ce message permet une vérification explicite du certificat du client. Finished obligatoire serveur client client serveur Ce message signale la fin du protocole Handshake et le début de l émission des données protégées avec les nouveaux paramètres négociés. 49

Handshake Client Ouverture d'une session SSLv3 Serveur 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 50

Handshake Ouverture d'une connexion Client Serveur Client Hello Serveur Hello ChangeCipherSpec Finished ChangeCipherSpec Finished Application Data 51

ChangeCipherSpec (CCS) ChangeCipherSpec signale au Record toute modification des paramètres de sécurité, Constitué d un message (1 octet) 52

Le protocole Record Reçoit les données des couches supérieures : (Handshake, Alert, CCS, HTTP, FTP...), et les transmet au protocole TCP. Après application de : - la fragmentation des données en blocs de taille maximum de 2 14 octets - la compression des données, fonction prévue mais non supportée actuellement - la génération d un condensât pour assurer le service d intégrité - le chiffrement des données pour assurer le service de confidentialité 53

Le protocole Alert Le protocole Alert peut être invoqué par: l application, - pour signaler la fin d une connexion - le protocole Handshake - suite à un problème survenu au cours de son déroulement - la couche Record si l'intégrité d'un message est mise en doute 54

Le protocole Alert enum { warning(1), fatal(2), (255) } AlertLevel; enum { close_notify(0), unexpected_message(10), bad_record_mac(20), decryption_failed(21), record_overflow(22), decompression_failure(30), handshake_failure(40), no_certificate_reserved (41), bad_certificate(42), unsupported_certificate(43), certificate_revoked(44), 55

Le protocole Alert /* suite certificate_unknown(46), illegal_parameter(47), unknown_ca(48), access_denied(49), decode_error(50), decrypt_error(51), export_restriction_reserved(60), protocol_version(70), insufficient_security(71), internal_error(80), user_canceled(90), no_renegotiation(100), (255) } AlertDescription; 56

Le protocole Alert Message Contexte Type bad_certificate échec de vérification d un certificat fatal bad_record_mac réception d un MAC erroné fatal certificate_expired certificat périmé fatal certificate_revoked certificat mis en opposition (révoqué) fatal certificate_unknown certificat invalide pour d autres motifs que ceux précisés précédemment close_notify interruption volontaire de session fatal decompression_failure les données appliquées à la fonction de décompression sont invalides (par exemple, trop longues) handshake_ failure impossibilité de négocier des paramètres satisfaisants fatal illegal_parameter un paramètre échangé au cours du protocole Handshake dépasse les bornes admises ou ne concorde pas avec les autres paramètres no_certificate réponse négative à une requête de certificat avertissement ou fatal unexpected_message arrivée inopportune d un message fatal unsupported_certificate le certificat reçu n est pas reconnu par le destinataire avertissement ou fatal 57 fatal fatal fatal

SSL : charges (1/2) Les choix pour les calculs de la charge cryptographique de SSL: algorithme de chiffrement du protocole record : DES 64 bits en mode CBC ; algorithme de chiffrement asymétrique : RSA 1024 bits ; fonction de hachage : MD5 ; itinéraire de certification comprenant une seule étape ; certificat du serveur : autorité de certification unique, déjà connue du client (un seul certificat dans le message Certificate) ; taille des informations contenues, du message Certificate : 500 Koctets (notons que la taille des informations du certificat est dans la plupart des cas inférieure) ; seule le serveur est certifié. 58

SSL : charges (2/2) Opération Ouverture d une nouvelle session (Handshake complet) Rafraîchissement d'une session (Handshake simplifié) Ouverture d une nouvelle connexion Temps de calcul pour 16Ko de données (chiffrement ou déchiffrement, élaboration et vérification du MAC) Temps de calcul pour le client (ms) Temps de calcul pour le serveur (ms) Total (ms) 18,94 16,9 35,85 0,11 0,11 0,22 0,079 0,071 0,15 5,5 5,3 10,8 59

SSL : liste non exhaustive de serveur AOLserver 2.3 Alibaba2.0 Nom de l API Fournisseur Adresse America Online. Inc http://www.aolserver.com Computer Software Manufacturers 60 http://www.csm.co.at/alibaba/ Apache 1.3 The ApacheGroup http://www.apache.org Commerce Server/400 1.0CI/NET, Inc. http://www.inetmi.com Enterprise Server 3.0 Novonyx http://www.novonyx.com Enterprise Web Secure/VM Beyond-Software 1.1 Incorporated http://www.beyond-software.com Internet Information Server 4.0 MicrosoftCorp. http://www.microsoft.com/iis Java Server 1.1 Sun Microsystems http://www.java.sun.com Lotus Domino Go Webserver IBM 4.6.1 http://www.ibm.com NetscapeEnterprise Server 3.5.1 Netscape Communications Corp. http://www. netscape.com OracleWeb Application Server Oracle Corp. 3.01 http://www.oracle.com/products Roxen Challenger 1.2b I Idonex http://www.roxen.com SSLava Phaos Technologies http://www.phaos.com/main.htm WebSite Professional 2.2 O'Reilly Software http://www.website.oreilly.com/ WebTen 2.1 Tenon Intersystems http://www.tenon.com/products/webten Zeus Web Application Server Zeus 3 Technology http://www.zeustech.net

SSL : liste de suite de chiffrement supportée par un serveur S erveur et Version A pache S S LLeay 08.0 Jigsaw 2.0 B eta 1 M icrosoft IIS /4.0 Netscape E ntrepris e3.0l Netscape E ntreprise 3.0F S S Lava B eta 1 Suite E xport Code R C 4-40 M D 5 0x03 R C 4-128 M D 5 0x04 R C 4-128 S H A 0x05 R S A R C 2 C B C -40 M D 5 0x06 D H et D S A D H et R S A D H E et D S A D H E et R S A ID E A C B C S H A 0x07 D E S 40 C B C S H A 0x08 D E S C B C S H A 0x09 3D E S E D E C B C S H A 0x0A D E S 40 C B C S H A 0x0B D E S C B C S H A 0x0C 3D E S E D E C B C S H A 0x0D D E S 40 C B C S H A 0x0E D E S C B C S H A 0x0F 3D E S E D E C B C S H A 0x10 D E S 40 C B C S H A 0x11 D E S C B C S H A 0x12 3D E S E D E C B C S H A 0x13 D E S 40 C B C S H A 0x14 D E S C B C S H A 0x15 3D E S E D E C B C S H A 0x16 61

AOLserver 2.3 Alibaba2.0 SSL : liste non exhaustive d APIs Nom de l API Fournisseur Adresse America Online. Inc http://www.aolserver.com Computer Software Manufacturers 62 http://www.csm.co.at/alibaba/ Apache 1.3 The ApacheGroup http://www.apache.org Commerce Server/400 1.0CI/NET, Inc. http://www.inetmi.com Enterprise Server 3.0 Novonyx http://www.novonyx.com Enterprise Web Secure/VM Beyond-Software 1.1 Incorporated http://www.beyond-software.com Internet Information Server 4.0 MicrosoftCorp. http://www.microsoft.com/iis Java Server 1.1 Sun Microsystems http://www.java.sun.com Lotus Domino Go Webserver IBM 4.6.1 http://www.ibm.com NetscapeEnterprise Server 3.5.1 Netscape Communications Corp. http://www. netscape.com OracleWeb Application Server Oracle Corp. 3.01 http://www.oracle.com/products Roxen Challenger 1.2b I Idonex http://www.roxen.com SSLava Phaos Technologies http://www.phaos.com/main.htm WebSite Professional 2.2 O'Reilly Software http://www.website.oreilly.com/ WebTen 2.1 Tenon Intersystems http://www.tenon.com/products/webten Zeus Web Application Server Zeus 3 Technology http://www.zeustech.net

Attaques Pistes d attaques classiques Vulnérabilités Scénarios d attaque 63

Attaques classiques Pistes classiques Casser les clefs Attack replay Man in the middle Attaque à clair ouvert Parades de SSL Taille des clefs Nonces (connection id) Certificats servent à passer les clefs Clefs + Aléas 64

Sources de vulnérabilité Taille des clefs SSL v2 Certificats Implémentations 65

Scénarios d attaque SSL v2 : Forcer une faible taille de clef Tous : Diffie-Hellman anonyme SSL v3 : Accepte Finished avant ChangeCipherSpec SSL v3 : Envoi de données chiffrées avant réponse serveur au Finished. 66

Exemple 1 Faible clefs Pas de vérification d intégrité CryptoL SSL v2 Forced weak ciphersuite CryptoL 67

Exemple 2 Tiers à l écoute SSL v3 DH anonymous authentification Man in the middle attack 68

Exemple 3 Phase 1 Phase 2 69

Exemple 4 Envoi de données chiffrées Permet de casser la clef, puis de répondre SSL v3 Send data before finished server? 70

Le Protocole SET

Introduction SET (Secure Electronic Transaction), Développé par Visa et Mastercard (1997) Supporte et sécurise l acte de paiement Nécessite la possession d une carte bancaire Pas de modifications des circuits bancaires d autorisation et de télécollecte 72

Architecture et acteurs (1/2) Détenteur de la carte INTERNET Commerçant Autorité de certification Passerelle de paiement réseau financier sécurisé Institut d'émission Institut d'acquisition 73

Architecture et acteurs (2/2) Quatre entités Le porteur de carte Card Holder (CH) Le Commerçant Merchant (M) L autorité de certification Certificate Authority (CA) La passerelle de payement Payment Gateway (P) Cinq étapes Inscription auprès du CA Demande d achat Autorisation de Payement Modification de l achat Collecte 74

Les services de SET Authentification et Identification, Confidentialité des instructions de paiement, Intégrité, Non répudiation. 75

Algorithmes SET A lgorithm e DES RSA SHA-1 HM AC-SHA-1 O pération Chiffrem ent/déchiffrem ent pour assurer la confidentialité des m essages Clé, de siganture et de chiffrem ent Pour assurer l auth en tification, l iden tification, et l intégrité Génération d un condensat pour assurer l in tégrité Génération d un condensat pour assurer l in tégrité 76

Certificats C e r tific a t d e s ig n a tu r e C e r tific a t d e c h iffr e m e n t C lien t o u i n on C o m m e r ç a n t o u i o u i P a sser e lle d e p a ie m en t o u i o u i 77

SET Inscription du porteur de carte (1/7) Demande Initiale Condensat Sont Egaux? Reponse Initiale Signature Reponse Initiale Signature Reponse Initiale Condensat CA Sig. CA Clé CA Sig. CA Clé Condensat 78

SET Inscription du porteur de carte (2/7) Clé aléatoire de cryptage Symétrique Demande Inscription Claire Demande Inscription Chiffrée PAN PAN Clé Publique du CA Clé aléatoire de cryptage Symétrique Demande Inscription Chiffrée Demande Inscription Claire Formulaire Inscription PAN PAN 79 Clé Privée de CA

SET Inscription du porteur de carte (3/7) Formulaire Inscription Formulaire Inscription Signature Clé Privée de CA Sont Egaux? Condensat Condensat Clé Publique du CA Formulaire Inscription Signature CA Sig. Condensat CA Sig. 80

SET Inscription du porteur de carte (4/7) 2 Clé Privée de CH Formulaire Inscription Rempli Clé Publique de CH Clé aléatoire de cryptage Symétrique Condensat Signature 81

SET Inscription du porteur de carte (5/7) Formulaire Inscription Rempli Clé aléatoire de cryptage Symétrique Clé Publique CH Signature 3 2 Clé aléatoire de cryptage Symétrique CB Clé Publique de CA Formulaire Inscription Rempli Clé Publique CH Signature 2 CB Clé aléatoire de cryptage Symétrique Clé Privée De CA 3 CB CB Formulaire Inscription Rempli Clé Publique CH 2 Clé aléatoire de cryptage Symétrique Formulaire Inscription Rempli Clé Publique CH 2 Clé aléatoire de cryptage Symétrique Signature Signature 82

SET Inscription du porteur de carte (6/7) 2 Formulaire Inscription Rempli Clé Publique CH Clé aléatoire de cryptage Symétrique Clé Publique CH Condensat Sont Egaux? Signature Condensat 83

SET Inscription du porteur de carte (7/7) Reponse de Certification 2 Reponse de Certification Reponse de Certification Signature Clé aléatoire de cryptage Symétrique Signature Clé Privée de CA CA Sig. CH Sig. Condensat Condensat Sont Egaux? Condensat Clé Publique CA Reponse de Certification Signature 2 Clé aléatoire de cryptage Symétrique Reponse de Certification Signature CA Sig. CH Sig. 84

Transaction d achat SET Commerçant PReq 1 PRes CapReq 4 5 Internet AuthRes CapRes 6 3 AuthReq 2 Détenteur de carte Passerelle de paiement 85

SET opération d achat Ordre D'Achat (OI) Ordre D'Achat (OI) Ordre D'Achat (OI) Concatenation des Condensats Signature Concatenation des Condensats Signature Concatenation des Condensats Signature Condensat Final Condensat Final Sont Egaux? Instruction De Payement (PI) Concatenation des Condensats Signature Clé Aléatoire de Cryptage Symétrique 1 CH Act. Instruction De Payement (PI) Concatenation des Condensats Signature Instruction De Payement (PI) Concatenation des Condensats Signature Vers La Passerelle de Payement Clé Publique de P CH Act. CH Act. CH Sig. CH Sig. 86

M e s s a g e s f a c u l t a t i f s Messages du protocole SET S e n s 87 S i g n i f i c a t i o n P I n i t R e q C H M m e s s a g e d i n i t i a l i s a t i o n p e r m e t t a n t a u d é t e n t e u r d e c a r t e d o b t e n i r l e s c e r t i f i c a t s d u c o m m e r ç a n t P I n i t R e s M C H r é p o n s e a u m e s s a g e P I n i t R e q A u t h R e v R e q M P m e s s a g e u t i l i s é p a r l e c o m m e r ç a n t p o u r a n n u l e r u n e a u t o r i s a t i o n o u a b a i s s e r l e m o n t a n t d u n e t r a n s a c t i o n d é j à a u t o r i s é e A u t h R e v R e s M P r é p o n s e a u m e s s a g e A u t h R e v R e q I n q R e q C H M d e m a n d e d u s t a t u s d e l a t r a n s a c t i o n I n q R e s M C H r é p o n s e a u m e s s a g e I n q R e q, d e m ê m e f o r m a t q u e l e m e s s a g e P r e s C a p R e v R e q M P m e s s a g e u t i l i s é p o u r a n n u l e r u n e d e m a n d e d e c o m p e n s a t i o n C a p R e v R e s P M r é p o n s e a u m e s s a g e C a p R e v R e q C r e d R e q M P m e s s a g e u t i l i s é p o u r r e n f l o u e r u n e t r a n s a c t i o n d é j à c o m p e n s é e C r e d R e s P M r é p o n s e a u m e s s a g e C r e d R e q C r e d R e v R e q M P d e m a n d e d a n n u l a t i o n d u n m e s s a g e C r e d R e q C r e d R e v R e s P M r é p o n s e a u m e s s a g e C r e d R e v R e q P C e r t R e q M P d e m a n d e d u c o m m e r ç a n t à l a p a s s e r e l l e d e p a i e m e n t d e s o n c e r t i f i c a t P C e r t R e s P M r é p o n s e a u m e s s a g e P C e r t R e q B a t c h A d m i n R e q M P m e s s a g e d e g e s t i o n d e s m e s s a g e s d e c o m p e n s a t i o n B a t c h A d m i n R e s P M r é p o n s e a u m e s s a g e B a t c h A d m i n R e q E r r o r C H M m e s s a g e d e r r e u r

Temps de calcul API BSAFE 4.0 Création Déchiffrement/ vérification Total PinitReq 0 0 0 PiniRes 11 4.34 15.34 PReq 11.7 13.57 25.27 PRes 11 2.48 13.48 AuthReq 11.7 29.59 41.29 AuthRes 11.73 13.52 25.22 CapReq 12.36 15.45 27.18 CapRes 14.22 14.22 26.58 Total 81.19 93.18 174.36 88

Charges de calcul Charge du client Charge du commerçant Charge de la passerelle de payement 18.52 ms 86.74 ms 69.1 ms 89

Temps de calcul avec l API JSAFE1.1 C r é a tio n D é c h iffr e m e n t / v é r ific a tio n T o ta l P in itr e q 0 0 0 P in ir e s 1 7 3 3 2 2 0 5 P R e q 1 8 1.2 6 1 8 5.2 6 3 6 6.5 2 P R e s 1 7 3 1 6 1 8 9 A u th R e q 1 8 1.1 3 3 9 1.9 5 5 7 3.0 8 A u th R e s 1 8 0.5 6 1 9 9.5 6 3 7 9.8 2 C a p R e q 1 8 1.2 8 1 9 0.2 8 3 7 1.5 6 C a p R e s 1 8 1.2 8 1 9 0.2 8 3 7 1.5 6 T o ta l 1 2 5 1.5 1 1 2 0 5.3 3 2 4 5 6.8 4 90

Charges de calcul Charge du client Charge du commerçant Charge de la passerelle de payement 229.26 ms 1283.51 ms 944.07 ms 91

Comparaisons SET/SSL Critère de SE T SSL com paraison gén érale A pplication s T ran saction cartes de crédit oui C ertificat du clien t option n elle Lon gueur de la clé RSA 1024 bits variable Longueur de la clé DES 64 bits 64 bits Signature des données oui non Clé DES unique pour chaque oui non m essage Négociation des algorithm es non oui cryptograph iques M ise en oeuvre de m écanism e de non oui com pression des données A uth en tification des participan ts oui option n elle 92

Inconvénients de SET et SSL SET: SSL: lourdeur de la vérification systématique des certificats lourde charge de calculs cryptographiques logiciels peu répandus une seule authentification au début de la session, certificat non nécessaire pour le client plus de signature après le HandShake 93

Message SET texte en clair Algorithme de hachage condensât signature numérique (sceau) clé privée de l'émetteur clé DES générée aléatoirement pour chaque message certificat de l'émetteur message envoyé Message OAEP clé publique du destinataire enveloppe numérique 94

Protocole Secure Shell (SSH) Protocole Basé sur TCP port 22 Modèle client/serveur SSH est développé pour remplacer l accès nonsécurisé des r-commandes de Unix Les r-commandes (rlogin, rcp, rsh) Version initiale SSHv1 développé par Tatu Ylönen université de Helsinki Version SSHv2 - Reprise par l IETF dans le groupe SECSH 1995. Réécriture complète de SSHv1( v1.3 et v1.5). 95

Protocole Secure Shell (SSH) Services de sécurité: Authentification mutuelle (plusieurs méthodes supportées) Confidentialité Intégrité Non rejeu Connexion à distance: sécurisation des commandes rlogin, rsh, rcp et telnet Évité la circulation du mot de passe en clair sur le réseau Redirection des sessions, notamment X11 Redirection de tous flux TCP dans le «tunnel» de la session 96

Protocole Secure Shell (SSH) Architecture de SSHv2 Couche connexion Couche authentification Couche Transport - multiplexe plusieurs tunnels encryptées dans un même canal - assure l authentification du client par différentes méthodes - assure Intégrité, chiffrement et la compression des données 97

Protocole Secure Shell (SSH) La couche transport: Assure authentification du client, le chiffrement et l intégrité/compression des données. Négociation de la méthode d échange des clefs, des algorithmes à clefs publiques, des algorithmes symétriques et de hachage. L intégrité est assuré en ajoutant un MAC dans chaque paquet MAC(master_secret, sequence number uncrypted packet) Packet Len Une secret partagée K, et un hache H est utilisé comme Payload identificateur du session. Random padding MAC 98 Padding len

Protocole Secure Shell (SSH) La couche authentification: Assure l authentification du client Un client peut essayer plusieurs méthode d authentification envoyer par le serveur. Le client transmet par un requête d authentification. Le serveur refuse ou accepte cette requête suivant la présence ou non du client chez le serveur et suivant les différentes politiques choisies par le serveur. Le serveur peut lancer un timer (10 min) pour la période d authentification et le nombre d échec d authentification du client (3 ou 4 fois). Après l authentification du client, le serveur commence le service demander. 99

Protocole Secure Shell (SSH) La couche connexion: Met en relation les programmes Multiplexe plusieurs tunnels chiffés dans un même canal, avec l exécution des commandes a distance 100

Handshake SSH (1/3) Généralité: Déchiffre le message et envoie le NONCE en clair Client Demande connexion [NONCE] clef pub C [NONCE] Serveur Vérification de l existante du Clefs pub de C 101

Handshake v1 (2/3) Authentification RSA 102

Handshake v1 (3/3) Authentification Rhost RSA En addition a l identification traditionnelle par.rhosts, cette méthode utilise en plus une authentification par RSA pour le client 103

Handshake v2 (1/2) Handshake V2 de SSH Client Serveur Version d identification KE (listes d algorithmes, e = g^x mod p) Couche transport KE (algorithmes choisies, server_pub_key,f=g^y mod p, sig) User auth request User auth method 1 Accept Accept Couche authentification 104

Les algorithmes utilisés (1/2) Les algorithmes a clefs publiques supporté par SSH 2.4 sont : Les algorithmes a chiffrement symétrique supporté par SSH 2.4 sont: 105

Les algorithmes utilisés (2/2) Les algorithmes de hachage supporté par SSH 2.4 sont : 106

Protocole Secure SHell (SSH) $ ssh hôte-distant command $ scp hôte-distant:fichier-distant fichier-local $ scp fichier-local hôte-distant:fichier-distant $ slogin hôte-distant ssh -Lxxx: hôte-distant :yyy serveur-ssh Le client ssh local écoute sur le port xxx Les connexions sur le local port xxx sont redirigées vers le serveur-ssh qui les reforwarde par TCP sur port 5678 du hôte-distant ssh -Rxxx:remotehost:5678 serveur-ssh Le serveur SSH écoute sur le port xxx Les connexions locals sont redirigées vers le port yyy du hôte distant 107

Protocole Secure SHell (SSH) Chiffré Client SSH 22 xxx clair Application Serveur SSH clair yyy hôte Client $ ssh -Lxxx:hôte:yyy serveur Application $ telnet client xxx 108

Protocole Secure SHell (SSH) Chiffré serveur Client SSH yyy clair 22 SSH xxx Hôte Appli Client $ ssh -Rxxx:hôte:yyy serveur Appli. $ telnet serveur xxx 109 Clair

SSH en pratique (port forwarding) (1/2) Le service TCP est redirigé à travers le tunnel chiffré de la session SSH Le client SSH établit un tunnel chiffré avec le port 22 du serveur depuis un port quelconque. Un client VNC (host1) veut se connecter a son station serveur VNC (host3) en passant par un serveur SSH (host 2) Connexion simple Connexion encryptée HOST 3 P2 Serveur VNC, port 5900 Client SSH + Client VNC P1 HOST 1 HOST 2 110 Serveur SSH, port 22

SSH en pratique (port forwarding) (2/2) Résultat: en se connectant localement (connexion vers localhost) depuis la machine HOST1 sur le port p1 (ex. 5901), il y a un transfert vers le port p2 de la machine HOST3, via HOST2. La connexion entre HOST2 et HOST3 ne sera pas encryptée, c est pourquoi on a souvent HOST2 = HOST3 Ceci va sécurisé les échanges entre Host1 et Host2. Capacité Connexion de simple SSH de sécuriser d autres services par le biais du «port forwarding» Connexion encryptée Client SSH + Client VNC ssh L 5901:host3:5900 host2 vncviewer localhost:5901 HOST 3 P2 Serveur VNC, port 5900 P1 HOST 1 HOST 2 Serveur SSH, port 22 111

Protocole Secure Shell (SSH) Inconvénients: Nécessite l installation d un logiciel SSH sur le poste des utilisateurs. Complexité de mise œuvre avec les Proxy, les NAT et le protocole FTP. Gestion manuelle des clés chez les utilisateurs. Protocole non modulaire (SSHv1) Coté utilisateur difficile a géré : gestion des clés publiques, stockage des certificats serveur chez le client, N'intègre pas la notion de certificat X509V3 Authentification du client seul 112

Protocole Secure Shell (SSH) Quelques outils: SecureCRT: http://www.vandyke.co Pour Win98/98/2000/NT F-Secure: http://f-secure.com Windows et Mac SSH Secure Shell: http://www.ssh.com - Free SSH client pour Windows et Linux TeraTerm Pro: http://www.zip.com.au/~roca/ttssh.html Free SSH client pour Windows Mindterm: http://www.mindbright.se/mindterm/ Client java pour Windows et Mac 113

Protocole Secure SHell (SSH) Références: 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/tik- 110.501/1998/papers/9responcetimes/responcetimes.h tml) 114