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

Kerberos en environnement ISP

Présentations similaires


Présentation au sujet: "Kerberos en environnement ISP"— Transcription de la présentation:

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

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 <primary name, instance, realm> > 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 Domain Principal Name Ticket Flags Encryption Key Start Time End Time Host Address Authorization Data Chiffré © 2001 Sécurité.Org

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

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) Client KDC Demande de TGT (1) TGT (2) © 2001 Sécurité.Org

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 KDC Demande ST (3) Client ST et SK (4) ST (5) Serveur © 2001 Sécurité.Org

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

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 KDC Demande de TGT Client KDC TGT Demande de ST ST et SK ST et SK Serveur © 2001 Sécurité.Org

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:025-14  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 :
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 Image: © 2001 Sécurité.Org


Télécharger ppt "Kerberos en environnement ISP"

Présentations similaires


Annonces Google