--- titre: Windows Active Directory (Cours 4) description: Windows Active Directory (Cours 4), 19/03/2020 tags: ACDA, jerome.tchan author: Jérôme Tchan --- # Windows Active Directory (Cours 4) > Slides (ancienne version) > > {%pdf https://51.38.177.120/dokuwiki/lib/exe/fetch.php?media=cours:acda:4-windows-ad-epita.pdf %} ## DNS Domain Name System: service de résolution de noms UDP/53 et TCP/53 BDD utilisée pour stocker les enregistrements DNS principal / maître / primaire: read/write DNS secondaire / esclave: read only Serveur relais / cache: uniquement chargé de la résolution, stocke les infos récupérées en cache Client DNS Transfert de zone: - réplication de tout ou partie des enregistrements DNS - de type maître-esclave - entre le serveur DNS principal et un serveur DNS secondaire - utilise le protocole DNS sur TCP/53 Si le serveur n'arrive pas à résoudre un nom, deux modes: - Itératif: le serveur renvoie l'adresse d'un autre serveur susceptible d'effectuer cette résolution et le client doit refaire la requête vers ce nouveau serveur - Récursif: le serveur effectue les différentes requêtes sur les autres serveurs à la place du client et renvoie la réponse complète; transparent pour le client mais une charge non négligeable pour le serveur (et possibilités d'attaques type DoS) Dans la vraie vie: un mix entre les 2: le client fait une requête récursive et le serveur fait de l'itératif ### Vulnérabilités et solutions **Recherche manuelle** Parades: - Limiter les informations aux seules nécessaires - Séparer infos privées et publiques **Transfert de zone:** récupération de toutes les infos Parades: - On peut limiter le transfert de zone aux seuls serveurs secondaires connus **Tunneling DNS:** fuite d'info via des canaux cachés - Tunneling classique: utilisation des ports DNS pour établir un tunnel (SSH, OpenVPN) Parades: - Filtrer correctement les flux - Interdir aux clients d'accéder directement aux serveurs externes - Tunneling évolué: passage des données au dessus des requêtes DNS (NSTX, OzymanDNS) Parades: - Interdiction complète des flux DNS émis par les clients et utilisation de proxys avec authentification qui réécriront les requêtes DNS **Corruption de résolution:** rediriger les requêtes d'un client vers un serveur maîtrisé par l'attaquant - Corruption au niveau du client: modification de paramètres locaux des clients (fichier hosts, config DNS, etc) Parade: - Sécurisation locale correcte et audit de la configuration - Corruption au niveau du serveur: DNS cache poisoning => utilisation des additionnal records pour corrompre le cache des serveurs Parades: - Configuration - Corruption au niveau du réseau: DNS spoofing **Déni de service:** rendre indisponible ce service critique Parades: - Architecture bien pensée (serveurs relais, DMZ) - Restriction des transferts de zone - Interdiction de récursivité sur les serveurs exposés - Contrôle des requêtes simples Protéger les serveurs DNS principaux: isoler les serveurs principaux TSIG: mécanisme d'authentification - Signature des échanges - Entre serveurs primaires et secondaires - Pour les mises à jour dynamiques - Entre un resolver et un serveur cache éventuellement - Cryptographie symétrique => Gestion difficile des clés, utilisation à grande échelle délicate => problématique résolue par GSS-TSIG DNSSEC: extensions de sécurité DNS - De nombreuses RFC (4033, 4034, 4035, 5155, 6944, etc.) - Sécurise les données échangées - Basé sur de la cryptographie asymétrique (signature) - Fournit - Gestion des clés internes au DNS - Authentification de l'origine des données - Intégrité des données - Signature des zones où chaque enregistrement est signé - Stockage de clés publiques - Ajout de nouveaux enregistrements (voir slides pour détails) - Clés - Zone Signing Key (ZSK) - Key Signing Key (KSK) - Trust Anchor - Limites: - Performances - Phase transitoire - Gestion difficile des révocations - Synchro horaire obligatoire