La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

> Nicolas FISCHBACH - > Sébastien LACOSTE-SERIS - version.

Présentations similaires


Présentation au sujet: "> Nicolas FISCHBACH - > Sébastien LACOSTE-SERIS - version."— Transcription de la présentation:

1 > Nicolas FISCHBACH - > Sébastien LACOSTE-SERIS - version 1.13fr Kerberos en environnement ISP UNIX/Win2K/Cisco

2 Agenda  Kerberos > Introduction : pourquoi Kerberos ? > Le protocole et les échanges > MIT Kerberos et les Applications > Attaques  Déploiement > UNIX > Cisco (routeurs et switches) > Win2K  Questions/Réponses © 2001 Sécurité.Org

3 Kerberos ?  Kerberos est un protocole d’authentification réseau  Il utilise une horloge pour : > limiter l’usage des clés dans le temps > détecter les attaques par rejeu  Authentification mutuelle  Utilise DES et des clés partagées  Tiers de confiance © 2001 Sécurité.Org

4 Ce que Kerberos n’est/ne fait pas  Kerberos ne fournit pas d’autorisation uniquement de l’authentification  Kerberos ne fait pas de chiffrement de données © 2001 Sécurité.Org

5 Pourquoi utiliser Kerberos ?  Authentification sécurisée (cryptographie)  Pas de transmission du mot de passe  Single Sign On > “SSO is bad for security” (Bruce Schneier)  Gestion centralisée de l’authentification  Standard IETF (RFC 1510) © 2001 Sécurité.Org

6 Lexique Kerberos (1)  KDC : Key Distribution Center. Base de données des clients et des serveurs (principaux) et les clés privées associées  principal : trinôme > user : > service :  primary : nom d’utilisateur ou du service  instance : “qualifie” le primary (rôle/groupe)  realm : domaine d’authentification © 2001 Sécurité.Org

7 Lexique Kerberos (2)  keytab : fichier contenant une ou plusieurs clés (pour des hôtes ou des services). Aussi connu sous SRVTAB.  client : entité pouvant obtenir un ticket (utilisateur/hôte)  service : host, ftp, krbtgt, pop, etc.  ticket : crédits (identité d’un client pour un service particulier)  TGT : ticket donné par l’AS. Permet au client d’obtenir d’autres tickets pour le même royaume © 2001 Sécurité.Org

8 Key Distribution Center  Responsable de la maintenance des clés maîtres et de la mise à disposition des tickets Kerberos  L’Authentication Service (AS) donne au client une clé de session et unTicket Granting Ticket (TGT)  Distribue les clés de session et les tickets pour les services via le Ticket Granting Service (TGS) © 2001 Sécurité.Org

9 Le Protocole Kerberos (1)  Ticket Kerberos © 2001 Sécurité.Org Domain Principal Name Ticket Flags Encryption Key Domain Principal Name Start Time End Time Host Address Authorization Data Chiffré

10 Le Protocole Kerberos (2)  Echanges de tickets Kerberos  Ports: kinit: 88/udp kpasswd (Unix):749/tdp kpasswd (Win): 464/{tcp,udp} © 2001 Sécurité.Org Key Distribution Center Authentication Service Ticket Granting Service Utilisateur Service Réseau

11 Le Protocole Kerberos (3)  Obtention d’un Ticket Granting Ticket (1+2) > (1) Demande d’un TGT > (2) TGT (déchiffré avec le hash du mot de passe de l’utilisateur) © 2001 Sécurité.Org Client KDC Demande de TGT (1) TGT (2)

12 Le Protocole Kerberos (4)  Obtenir et utiliser un Service Ticket (3+4+5) > (3) Demande de ST (avec le TGT) > (4) ST et clé de session > (5) ST pour l’authentification © 2001 Sécurité.Org Client KDC Serveur Demande ST (3) ST et SK (4) ST (5)

13 Le Protocole Kerberos (5)  Délégation de l’authentification © 2001 Sécurité.Org Client Serveur KDC TGT + ST Demande de ST ST et SK ST

14 Realms  Un royaume est un domaine d’authentification > Une base de données Kerberos et un ensemble de KDCs  Organisation hiérarchique (nouveauté dans la version 5)  Authentification uni ou bi-directionnelle  Authentification inter-realm > transitive > directe entre royaumes © 2001 Sécurité.Org

15 Le Protocole Kerberos (6)  Authentification entre domaines © 2001 Sécurité.Org Client Serveur KDC Demande de TGT Demande de ST ST et SK KDC TGT ST et SK

16 Distribution du MIT  Version utilisée: 5.1  Inclus les logiciels client et serveur  Plate-formes supportées : UNIXes (xBSD, Linux, Solaris, AIX, HP-UX, OSF/1,...) MacOS 10  DNS peut être utilisé © 2001 Sécurité.Org

17 Applications Cerbèrisées  telnet (avec chiffrement DES) et r-commandes  CVS et ksu, klogin, k*  SSH 1.2 supporte Kerberos V (utiliser au moins la version )  SSL v3.0  Cygnus Kerbnet (NT, MAC, Unix)  non supporté par samba (problèmes liés aux extensions MS) © 2001 Sécurité.Org

18 Cerbèrisation d’une application  Toutes les applications sont adaptables  Utilisation de l’API GSS  Transport du ticket géré par l’application © 2001 Sécurité.Org

19 Problèmes liés au NAT  L’adresse du client se trouve dans le ticket  Nécessité d’ajouter l’adresse translatée traduite dans le ticket  Patch pour la version 5.1 (MIT Kerberos) © 2001 Sécurité.Org

20 Attaques (1)  Vulnérabilité dans le système d’authentification par usurpation (partie AS du KDC): fichier keytab et enregistrement des principaux pour le service (http://www.monkey.org/~dugsong/kdcspoof.tar.gz)  Rejeu: détecté (synchronisation d’horloge du client et du serveur)  Clés exposées: durée de vie limitée, mais utilisées pour plusieurs sessions  Faille dans l’utilisation des fichiers temporaires : utiliser krb © 2001 Sécurité.Org

21 Attaques (2)  Recherche du mot de passe : utiliser une bonne passphrase  Clients “chevaux de Troie” : OTP  Relation de confiance implicite entre les royaumes  Forwarding des tickets  Autres: KDC, stations partagées,... © 2001 Sécurité.Org

22 Clients *NIX  RedHat (6.2 and 7) supporte Kerberos V > Installer le patch RHSA-2001:  Solaris/OpenBSD ne fournissent qu’un support Kerberos IV © 2001 Sécurité.Org

23 Kerberos V sur les clients *NIX (1)  Authentification gérée par l’API Kerberos  Configuration de l’authentification par utilisateur : ~/.k5login - liste les principaux qui peuvent se connecter sur ce compte ~/.k5users - liste les commandes qui peuvent être lancées via ksu (similaire à sudo)  alternative PAM non conseillée © 2001 Sécurité.Org

24 Kerberos V sur les clients *NIX (2)  Telnet cerbèrisé : disponible  SSH cerbèrisé : > SSH de SSH.Com 1.2.x et 2.x supportent Kerberos V > OpenSSH (jusqu’a la version 2.5.1) ne supporte pas encore Kerberos V: © 2001 Sécurité.Org

25 Kerberos V et Cisco (1)  Routeurs Cisco > Telnet cerbèrisé > Authentification par mot de passe utilisant Kerberos (telnet, SSH et la console) > Une instance peut être associée à un privilège (configuré localement)  Switches Cisco > Telnet uniquement (SSH disponible dans les 6.1 mais sans support pour Kerberos) © 2001 Sécurité.Org

26 Kerberos V et Cisco (2)  IOS & mémoire sur les routeurs : > Nom de la fonctionnalité : Kerberos V client support > Feature set requis : au moins Enterprise > N’est pas supporté par toute la gamme, par exemple : - Cisco 16xx - Cisco GSR (12xxx - Gigabit Switch Router) > Besoins en mémoire : Note: toujours vérifier via le Cisco IOS Feature Navigator © 2001 Sécurité.Org

27 Kerberos V et Cisco (3)  Exemple de configuration d’un routeur : aaa authentication login default krb5-telnet local aaa authorization exec default krb5-instance kerberos local-realm COLT.CH kerberos srvtab entry kerberos server COLT.CH kerberos instance map engineering 15 kerberos instance map support 3 kerberos credentials forward line vty 0 4 ntp server © 2001 Sécurité.Org

28 Kerberos V et Cisco (4)  CatOS & mémoire sur les switches : > Au moins Supervisor Engine Software Release 5.x > Uniquement supporté par les Catalyst 4000, 5000 et 6K > Uniquement supporté par les SE I (pas par les SE II) sur Cat6K > Besoins en mémoire : Note: toujours vérifier les Release Notes © 2001 Sécurité.Org

29 Kerberos V et Cisco (5)  Exemple de configuration d’un switch : #kerberos set kerberos local-realm COLT.CH set kerberos clients mandatory set kerberos credentials forward set kerberos server COLT.CH set kerberos srvtab entry #authentication set authentication login kerberos enable telnet primary set authentication enable kerberos enable telnet primary #ntp set ntp client enable set ntp server © 2001 Sécurité.Org

30 Kerberos V et Win2K (1)  Supporte Kerberos pour les connexions interactives  Le protocole est un Security Provider sous le SPPI (Security Support Provider Interface) et est lié à la LSA (Local Security Authority)  Le cache des tickets est géré par la LSA  Telnetd supporte Kerberos © 2001 Sécurité.Org

31 Kerberos V et Win2K (2)  Support Tools  Configuration d’une station Win2K: ksetup /setdomain COLT.CH ksetup /addkdc COLT.CH kdc.colt.ch ksetup /setmachpassword password ksetup /mapuser localuser ksetup /mapuser * *  Windows Time Server (+ registry)  Pas de SSH cerbèrisé, seulement quelques (mauvais) clients telnet © 2001 Sécurité.Org

32 That’s all folks :-)  Dernière version de ce document :  Q&R © 2001 Sécurité.Org Image:


Télécharger ppt "> Nicolas FISCHBACH - > Sébastien LACOSTE-SERIS - version."

Présentations similaires


Annonces Google