HERVÉ SCHAUER CONSULTANTS HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet Spécialisé sur Unix, Windows, TCP/IP et Internet Groupe sécurité Windows de l'OSSIR Groupe sécurité Windows de l'OSSIR 13 septembre 2004 13 septembre 2004 Protocoles et trafic réseau en Protocoles et trafic réseau en environnements Active Directory environnements Active Directory Jean-Baptiste Marchand Jean-Baptiste Marchand <[email protected]>
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
HERVÉ SCHAUER CONSULTANTSHERVÉ SCHAUER CONSULTANTSCabinet de Consultants en Sécurité Informatique depuis 1989Cabinet de Consultants en Sécurité Informatique depuis 1989Spécialisé sur Unix, Windows, TCP/IP et InternetSpécialisé sur Unix, Windows, TCP/IP et Internet
Groupe sécurité Windows de l'OSSIRGroupe sécurité Windows de l'OSSIR13 septembre 200413 septembre 2004
Protocoles et trafic réseau en Protocoles et trafic réseau en environnements Active Directoryenvironnements Active Directory
Protocoles de l’Internet : LDAPProtocoles de l’Internet : LDAP
✗ LDAP
✗ Spécifications : voir RFC 3377✗ Active Directory est un annuaire qui peut être interrogé via LDAP
✗ Ports 389 (TCP et UDP), 636 (LDAPS), 3268 et 3269 (Global Catalog AD)✗ Mécanisme SASL utilisé spécifique : GSSSPNEGO✗ Systèmes Windows accèdent également à Active Directory via MSRPC
✗ Interfaces RPC samr et drsuapi
✗ Informations sensibles transitent chiffrées✗ Sessions LDAP sur le port 389, chiffrées via GSSSPNEGO✗ Opérations MSRPC chiffrées (packet privacy)
✗ Dans LDAP, pas de normalisation de la réplication des annuaires✗ Active Directory se réplique via MSRPC ou SMTP
✗ MSRPC✗ Mise en œ uvre MS du standard DCE RPC✗ Domaines Active Directory reposent sur des interfaces RPC clés :
✗ lsarpc : accès à la LSA (Local Security Authority)✗ netlogon : service d’authentification réseau✗ samr : accès à la base SAM (compatibilité arrière avec NT 4.0, fonctionne
avec l’annuaire AD)✗ drsuapi : accès à l'annuaire Active Directory
✗ Active Directory utilise le transport TCP pour ces services RPC✗ Portmapper sur le port 135/TCP✗ Intervalles de ports par défaut des services RPC sur TCP
✗ 10255000, intervalle par défaut, à modifier avec rpccfg✗ Rappel : NT 4.0 reposait sur des services RPC transportés sur SMB, lui
✗ Kerberos V est le protocole d’authentification réseau dans AD
✗ Remplace avantageusement NTLM✗ Authentification mutuelle✗ Protocoles réseaux mentionnés ont été modifiés pour supporter Kerberos
✗ Authentification des sessions SMB/CIFS✗ Authentification des sessions LDAP✗ Authentification des appels MSRPC✗ Authentification des mises à jour dynamiques du DNS
✗ Support de Kerberos V via un protocole de négociation, SPNEGO (Simple Protected Negotiation Mechanism, RFC 2478)
✗ Plusieurs erreurs dans l'implémentation de SPNEGO par Microsoft, rendant l'interopérabilité difficile...
Analyse du trafic réseau : méthodologieAnalyse du trafic réseau : méthodologie
✗ Avoir accès au trafic réseau des contrôleurs de domaines
✗ Pour pouvoir le capturer
✗ Utiliser un analyseur réseau supportant les protocoles suscités
✗ Analyseur réseau de choix : ethereal✗ Logiciel libre fonctionnant sous Unix et Windows✗ Support de nombreux protocoles, dont les protocoles spécifiques
Windows (SMB/CIFS et MSRPC)✗ Supporte le déchiffrement du trafic Kerberos
✗ Sous Unix avec Heimdal (http://www.pdc.kth.se/heimdal/)✗ http://www.ethereal.com/
✗ Ajout d’une machine dans le domaine✗ Démarrage d’une station membre du domaine ou un contrôleur de
domaine✗ Changement du mot de passe des comptes machines
✗ Tous les 30 jours par défaut✗ Authentification d’un utilisateur sur le domaine✗ Réplications entre contrôleurs de domaine✗ Applications de la Group Policy✗ ...
Service Principal NamesService Principal Names (SPN) dans AD (SPN) dans AD
✗ Service Principal Names✗ Authentification par Kerberos auprès des services réseaux AD se fait en
obtenant un ticket pour un service donné✗ Le service est désigné via un SPN (Service Principal Name)
✗ Attribut servicePrincipalName (caseinsensitive) de la classe User
✗ Egalement, attribut sPNMappings (SPNs équivalents au SPN Host)
✗ Sur le fil
✗ SPN apparaît au niveau des messages TGSREQ, TGSREP et ASREQ✗ Message TGSREP peut contenir un SPN différent de celui envoyé
✗ Option de mise sous forme canonique sous Windows 2000✗ SPN retourné est de la forme SERVER$✗ Mise sous forme canonique désactivée dans Windows Server 2003
Kerberos : tickets d'une machine DC (1/2) Kerberos : tickets d'une machine DC (1/2) (session de connexion LOCALSYSTEM)(session de connexion LOCALSYSTEM)
Kerberos : tickets d'une machine DC (2/2) Kerberos : tickets d'une machine DC (2/2) (session de connexion LOCALSYSTEM)(session de connexion LOCALSYSTEM)
✗ KRB5KRB_AP_ERR_SKEW✗ Problème de synchronisation horaire
✗ KRB5KDC_ERR_PREAUTH_FAILED✗ Typiquement, mauvais mot de passe
✗ KRB5KRB_AP_ERR_TKT_EXPIRED✗ Ticket expiré, à renouveler✗ La LSA cache le mot de passe des utilisateurs donc peut obtenir un nouveau
TGT, dans la limite de 7 jours (Max. Lifetime for user ticket renewal)✗ KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN
✗ Principal non reconnu par le KDC✗ Absence de SPN (attribut servicePrincipalName) sur un compte dans AD ?✗ Ex : utilisation d'une adresse IP dans un nom UNC
Limites et approches complémentairesLimites et approches complémentaires
✗ Limites de l'analyse réseau
✗ Trafic chiffré : typiquement LDAP et certaines opérations MSRPC✗ Trafic non décodé par un analyseur réseau
✗ Typiquement avec MSRPC, où les opérations RPC ne contiennent pas de référence à l'interface DCE RPC utilisée Utiliser la fonction Decode As DCERPC d'ethereal
✗ Approches complémentaires
✗ Corrélation des traces réseaux avec les événements journalisés✗ Journaux Sécurité et Système des systèmes Windows
✗ Outils de diagnostic sur les serveurs✗ Ex : statistiques accessibles via l'outil System Monitor (perfmon.msc), avec
l'objet NTDS✗ Ex : outils pour visualiser le cache des tickets Kerberos