Vous êtes sur la page 1sur 18

Chapitre 7

Protocoles d’authentification réseau

Objectifs du chapitre

Dans ce chapitre, vous allez apprendre


• Les protocoles d’authentification utilisés sous Windows

Authentification-7-2

1
Authenfication réseau

NTLM

Kerberos

Présentation Active Directory Federation Service (AD FS)

Authentification-7-3

NTLM

• Windows New Technology LAN Manager (NTLM) est une suite de


protocoles de sécurité mise à disposition par Microsoft pour confirmer
l’identité des utilisateurs et protéger l’intégrité et la confidentialité de
leurs activités
• Fondamentalement, NTLM est un outil d’authentification qui s’appuie
sur un protocole de stimulation/réponse pour confirmer l’identité d’un
utilisateur
• Toujours utilisé en Workgroup
— Remplacé par Kerberos dans un contexte de domaine Active Directory

Authentification-7-4

2
Comment fonctionne NTLM ?

Base de
Paul comptes
pwd Paul
pwd

Authentification-7-5

Comment fonctionne NTLM ?


(suite)

• NTLM utilise un procédé de défi-réponse afin de vérifier l’authenticité du


membre du réseau
• Pour cela, le client et l’hôte suivent plusieurs étapes :
1. Le client envoie un nom d’utilisateur à l’hôte
2. L’hôte répond avec un nombre aléatoire, c’est le défi
3. À partir de ce nombre et du mot de passe de l’utilisateur, le client génère
une fonction de hachage et envoie celle-ci en réponse
4. L’hôte qui connait également le mot de passe crée également une
fonction de hachage et peut comparer celle-ci avec la réponse du client
5. Lorsque ces deux valeurs correspondent, l’authentification du client est
confirmée et l’accès est autorisé
– Si les valeurs ne correspondent pas, le client est bloqué

Authentification-7-6

3
NTLM et SMB

• NTLM sur un transport Server Message Block (SMB) est utilisé comme
méthode d’authentification et du chiffrement NTLM sur un PC ne faisant
pas partie d’un domaine Windows

Authentification-7-7

Sécurité NTLM

• NTLM présente plusieurs failles de sécurité connues liées au hachage des


mots de passe
• Le calcul de l'empreinte du défi repose sur DES pour NTLM
— DES n'est pas très robuste
• Par conséquent, les systèmes utilisant ce protocole sont vulnérables aux
attaques par force brute
— Si l’utilisateur choisit un mot de passe faible ou courant, il est
particulièrement vulnérable à ces tactiques
• Dans la version NTLMv2, un algorithme plus robuste est utilisé, HMAC-MD5

Authentification-7-8

4
Authenfication réseau

NTLM

Kerberos

Présentation Active Directory Federation Service (AD FS)

Authentification-7-9

Kerberos

• Kerberos est un protocole qui permet :


— A des utilisateurs ou des ordinateurs de s’authentifier sur le réseau
— Accéder à des services de manière authentifiée
• Le besoin auquel répond Kerberos est celui d’un utilisateur qui souhaite
utiliser un service exposé sur le réseau
— Sans pour autant que l’utilisateur ait besoin d’envoyer son mot de passe
— Sans que le serveur ait besoin de connaitre les mots de passe de tout le
monde
— C’est une authentification centralisée
• Pour répondre à cette problématique, il faut au
minimum trois entités
- Un client, qui peut être un ordinateur, un service, une
personne, …
- Une machine proposant un service ou une ressource
- Un Key Distribution Center ou centre de
distribution de clés (KDC) qui est le contrôleur de
domaine (DC) en environnement Active Directory
Authentification-7-10

5
Key distribution Center (KDC)

• Un KDC fonctionne sur tous les contrôleurs de domaines


– Le KDC dispose des clés maîtres pour les utilisateurs et les
machines du domaine
– Ceci permet au KDC de crypter les messages que seule la machine
ou l’utilisateur requis peut lire
– Tous les tickets sont horodatés et cryptés
- Une synchronisation horaire est nécessaire
– Le service KDC se déclare automatiquement dans le DNS

Authentification-7-11

Schéma simplifié

Authentification-7-12

6
Jeu de clés Kerberos

Authentification-7-13

Stratégies Kerberos

• Les tickets délivrés par le serveur KDC ont une durée de vie limitée
• Paramétrable depuis la stratégie
— Default Domain Policy | Ordinateur | Paramètres Windows
– Paramètres de sécurité

En réalité 10 heures

En réalité 7 jours

Authentification-7-14

7
Appliquer les restrictions pour l’ouverture de
session

• Détermine si le KDC valide chaque demande de ticket de session par


rapport à la stratégie de droits utilisateur du compte d’utilisateur
— La validation de chaque demande de ticket de session est facultative, car
l’étape supplémentaire prend du temps et peut ralentir l’accès réseau aux
services
— Si ce paramètre de stratégie est désactivé, les utilisateurs peuvent se voir
accorder des tickets de session pour les services qu’ils n’ont pas le droit
d’utiliser

Authentification-7-15

Durée de vie maximale du ticket de service TGS

• La durée de vie maximale du paramètre de stratégie de ticket de service


(TGS) détermine le nombre maximal de minutes pendant combien de
minutes un ticket de session accordé peut être utilisé pour accéder à un
service particulier
— Il est conseillé de définir la durée de vie maximale du ticket de service sur
600 minutes
– Si la valeur est 0, les tickets n’expirent jamais
— Si un client présente un ticket de session expiré lorsqu’il demande une
connexion à un serveur, le serveur renvoie un message d’erreur
– Le client doit demander un nouveau ticket de session au KDC
– Les opérations en cours ne sont pas interrompues si le ticket de
session qui a authentifié la connexion expire pendant la connexion

Authentification-7-16

8
Durée de vie maximale pour le ticket utilisateur TGT

• La durée de vie maximale du paramètre de stratégie de ticket utilisateur


détermine la durée maximale (en heures) pendant combien de temps le
ticket TGT d’un utilisateur peut être utilisé
— Lorsque le ticket (TGT) expire, un nouveau ticket doit être demandé ou celui
existant doit être renouvelé
— Il est conseillé de définir la durée de vie maximale du ticket sur 10 heures
– Si la valeur est 0, les tickets n’expirent jamais

Authentification-7-17

Durée de vie maximale pour le renouvellement du


ticket utilisateur

• La durée de vie maximale du paramètre de stratégie de renouvellement de


ticket utilisateur détermine la période (en jours) pendant laquelle le ticket
d’octroi de ticket d’un utilisateur peut être renouvelé
— Si la valeur de ce paramètre de stratégie est trop élevée, les utilisateurs
pourront peut-être renouveler des tickets d’octroi de tickets d’utilisateur très
anciens
– Si la valeur est 0, les tickets n’expirent jamais
— Il est conseillé de définir la durée de vie maximale pour le renouvellement
du ticket utilisateur sur 7 jours

Authentification-7-18

9
Tolérance maximale pour la synchronisation de
l’horloge de l’ordinateur

• Ce paramètre de sécurité détermine la différence de temps maximale (en


minutes) que Kerberos tolérera entre l’heure sur l’horloge du client et
l’heure sur le contrôleur de domaine qui fournit l’authentification Kerberos
— Par défaut 5 mn

Authentification-7-19

Chiffrement Kerberos

• Microsoft Active Directory prend en charge les chiffrements


— Rivest Cipher 4 (RC4)
— Advanced Encryption Standard 128 bits (AES-128)
— Advanced Encryption Standard 256 bits (AES-256)
— Data Encryption Standard (DES)
– Non recommandé car considéré comme non sécurisé
• Ces algorithmes de chiffrement sont étendus par des fonctions de
hachage cryptographiques
- Security Hash Algorithm (SHA)
- Message Digest Algorithm 5 (MDA5)

Authentification-7-20

10
Chiffrement Kerberos
(suite)

• Mode de chiffrement paramétrable :


— Par stratégie de groupe
— Ou individuellement au niveau d’un compte utilisateur

Authentification-7-21

Service Principal Name (SPN)

• Un nom principal de service est un identificateur unique pour un service


sur un réseau qui utilise l'authentification Kerberos
— Il est composé d’une classe de service, d’un nom d’hôte et parfois d’un port.
(Les noms de principal du service HTTP ne nécessitent pas de port)
• Sur un réseau qui utilise l'authentification Kerberos, un nom principal de
service pour le serveur doit être inscrit sous un compte d'ordinateur
prédéfini (tel que NetworkService ou LocalSystem) ou un compte
d'utilisateur
• Les noms principaux de service sont enregistrés automatiquement pour
les comptes intégrés
• Toutefois, lorsque l’on exécute un service sous un compte d'utilisateur de
domaine, il faut inscrire manuellement le nom principal de service pour le
compte que vous souhaitez utiliser
— Setspn -s http/<computer-name>.<domain-name> <domain-user-account>

Authentification-7-22

11
Délégation Kerberos

• Au sein d’un Active Directory, des services peuvent être utilisés par des
utilisateurs
— Il arrive parfois que ces services doivent en contacter d’autres, au nom de
l’utilisateur, comme un service web pourrait avoir besoin de contacter un
serveur de fichier ou une base de données SQL
• Afin d’autoriser un service à accéder à un autre service au nom de
l’utilisateur on peut utiliser la délégation Kerberos

Authentification-7-23

Délégation Kerberos
(suite)

• Exemple
- Une machine héberge un service Web qui, via une interface, permet à un
utilisateur d’accéder à son dossier personnel, hébergé sur un serveur de
fichiers
- Le serveur Web est en frontal, et c’est lui qui va chercher les informations à
la place de l’utilisateur sur le serveur de fichiers afin d’afficher le contenu
d’un dossier

Authentification-7-24

12
Délégation Kerberos
(suite)

• Cependant, le serveur web ne sait pas ce qui appartient à l’utilisateur sur le


serveur de fichiers
• La délégation Kerberos permet au serveur web de prendre la place de
l’utilisateur, et de s’authentifier au nom de celui-ci auprès du serveur de
fichiers
— Du point de vue du serveur de fichiers, c’est l’utilisateur qui fait la demande,
et le serveur de fichiers va pouvoir vérifier les droits de cet utilisateur, puis
renvoyer les informations auxquelles ce compte a accès

Authentification-7-25

Délégation Kerberos
(suite)

• Kerberos Constrained
Delegation
— Si une machine ou un compte
de service possède le flag
Constrained Delegation,
alors une liste de services
autorisés sera associée à ce
droit
– Par exemple, dans le cas
du serveur web, la
machine hébergeant le
serveur web aura le
drapeau Constrained Serveur01

Delegation avec comme


précision que ce serveur
ne peut relayer les
informations de l’utilisateur
qu’au service CIFS du
serveur SERVEUR01
Authentification-7-26

13
Authenfication réseau

NTLM

Kerberos

Présentation Active Directory Federation Service (AD FS)

Authentification-7-27

Fédération d’identité

• Permet l’identification, l’authentification et l’autorisation à travers les


limites organisationnelles
• Nécessite une relation d’approbation fédérée entre deux organisations ou
entités
• Permet aux organisations de conserver le contrôle sur les personnes
pouvant accéder aux ressources
• Permet aux organisations de conserver le contrôle de leurs comptes
d’utilisateurs et de groupes

Authentification-7-28

14
Revendications

• Les revendications fournissent des


informations sur les utilisateurs
• Le fournisseur d’identité des
utilisateurs donne des informations
que le fournisseur de l’application
accepte

Service d’émission Application


de jeton de sécurité

Jeton de sécurité Jeton de sécurité


(revendications (revendications
sortantes) entrantes)
Fournisseur Fournisseur
d’identité d’application

Authentification-7-29

Ressources cibles : Services Web compatibles AD FS

• Les services Web comprennent un ensemble normalisé de spécifications


utilisées pour construire des applications et services
• Généralement, les services Web :
• Transmettent des données au format XML ;
• Utilisent SOAP pour définir le format de message en XML ;
• Utilisent WSDL pour définir les messages SOAP valides ;
• Utilisent UDDI pour décrire les services Web disponibles.
• SAML est une norme d’échange de réclamations d’identité
• Ces services Web doivent être compatibles AD FS
• Fichiers de configuration se référant à un serveur de fédération des
ressources

Authentification-7-30

15
Principes ADFS

Trey Research A. Datum Corporation


AD DS
Approbation de fédération

6 Serveur
de fédération
Serveur de de ressources
7 fédération
de compte

10
4
Ordinateur 8
client 5 9 Serveur
interne 3 Web

1 11

Authentification-7-31

AD FS pour Microsoft 365

Local Exchange Online

AD DS
Approbation de fédération
Serveur
de fédération
des services
Serveur de Microsoft Online
6 fédération
de comptes
7 9
4

10
5 Serveur
3
Microsoft
8 Outlook
2 Web App

Ordinateur
client interne
1 11

Authentification-7-32

16
AD FS pour Microsoft 365
(suite)

1. L’utilisateur ouvre un navigateur Web et envoie une demande HTTPS au


serveur Office 365 Outlook Web App
2. Le serveur Outlook Web App reçoit la demande et vérifie si l’utilisateur
fait partie d’un déploiement hybride Exchange Server
Si tel est le cas, le serveur redirige l’ordinateur client vers le serveur de
fédération Microsoft online services
3. L’ordinateur client envoie une demande HTTPS au serveur de fédération
Microsoft online services
4. L’ordinateur client est de nouveau redirigé vers le serveur local de
fédération
La redirection vers le domaine d’accueil de l’utilisateur est basée sur le
suffixe UPN de l’utilisateur
5. L’ordinateur client envoie une demande HTTPS au serveur local de
fédération

Authentification-7-33

AD FS pour Microsoft 365


(suite)

• 6. Si l’utilisateur est déjà connecté au domaine, le serveur local de


fédération peut prendre ticket Kerberos de l’utilisateur et demander une
authentification de l’AD DS pour le compte de l’utilisateur en utilisant
l’authentification Windows
— Si l’utilisateur provient de l’extérieur du réseau ou d’un ordinateur qui n’est
pas membre du domaine interne, l’utilisateur est invité à entrer les
informations d’identification
• 7. Le contrôleur de domaine AD DS authentifie l’utilisateur puis renvoie le
message de réussite au serveur de fédération avec d’autres informations
relatives à l’utilisateur que le serveur de fédération peut utiliser pour
générer les revendications de l’utilisateur
• 8. Le serveur de fédération crée la revendication pour l’utilisateur selon les
règles définies lors de la configuration du serveur AD FS
— Les données des revendications sont placées dans un jeton de sécurité
signé numériquement et transmis au navigateur de l’utilisateur
– Ensuite, les données sont envoyées à l’ordinateur client, qui les publie
de nouveau sur les serveurs de fédération Microsoft online services
Authentification-7-34

17
AD FS pour Microsoft 365
(suite)

• 9. Le serveur de fédération de Microsoft online services vérifie que le jeton


de sécurité provient d’un partenaire de fédération de confiance
— Cette approbation est configurée lorsque vous configurez l’environnement
du serveur Exchange hybride
• 10. Le serveur de fédération Microsoft online services crée et signe un
nouveau jeton qu’il envoie à l’ordinateur client, qui le renvoie à son tour au
serveur Outlook Web App
• 11. Le serveur Outlook Web App reçoit la demande et valide les jetons
signés
— Le serveur délivre au client un cookie de session indiquant qu’il s’est
authentifié avec succès
— L’utilisateur est alors autorisé à accéder à sa boîte de réception Exchange
Server

Authentification-7-35

18

Vous aimerez peut-être aussi