Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 3036|Répondre: 0

[fenêtres] Authentification Windows AD : Kerberos et NTLM

[Copié le lien]
Publié sur 22/08/2023 19:16:28 | | | |
L’authentification AD utilise deux protocoles principaux : Kerberos et NTLM

NTLM



Le processus de certification est le suivant :

  • Le client génère localement un hachage NTLM, et la valeur est la valeur du hachage du mot de passe de l’utilisateur.
  • Le client envoie le nom d’utilisateur au serveur d’applications.
  • Le serveur d’applications génère une valeur aléatoire pour le client, généralement appelée nonce ou challenge.
  • le client chiffre le nonce avec le hachage NTLM et l’envoie au serveur d’applications.
  • Après l’avoir reçue, le serveur d’application l’envoie au serveur AD avec le nom d’utilisateur et le nonce.
  • AD génère un hachage NTLM basé sur le mot de passe de l’utilisateur, chiffre le nonce, puis compare le message du client.
  • Si les valeurs sont les mêmes, l’authentification passe, et si elles sont différentes, l’authentification échoue.


Kerberos



Termes clés :

  • KDC : Centre de distribution de clés, qui fournit deux services : Service d’authentification (AS) et Service d’attribution de tickets (TGS). Le domaine génère un compte de domaine appelé krbtgt pour KDC, et TGT utilise le mot de passe pour le chiffrement et le déchiffrement. Lorsqu’un utilisateur de domaine accède pour la première fois, il souhaite que l’AS s’authentifie, et après avoir réussi, l’AS demande à TGS de fournir un ticket (TGT) à l’utilisateur du domaine.
  • SPN : Nom du Principal du Service。 En plus des comptes utilisateurs, les comptes AD ont aussi des comptes service. L’application aura également un compte de service associé, ce qui facilitera l’accès aux ressources serveur, telles qu’Exchange, SQL, IIS, etc. SPN est un service utilisé pour associer le service, activé par l’application, au compte de service dans AD.


Processus de certification :

1. Lorsqu’un utilisateur de domaine se connecte, une requête AS (AS_REQ) est envoyée au DC, qui contient un horodatage chiffré chiffré avec le hachage et le nom d’utilisateur du mot de passe de l’utilisateur.

2. Après avoir reçu la requête, le DC utilise le hachage du nom d’utilisateur et du mot de passe de l’utilisateur pour la déchiffrer. Le DC répond une réponse AS (AS_REP) au client, qui inclut une clé de session et un TGT (Ticket d’octroi de ticket). La clé de session est chiffrée avec le hachage du mot de passe de l’utilisateur. Le TGT contient l’appartenance au groupe, le domaine, l’horodatage, l’IP du client et la clé de session. TGT est également chiffré, chiffré avec le mot de passe du compte de service KDC, et le client ne peut pas le déchiffrer. (TGT est valable par défaut pendant 10 heures, et les mises à jour qui suivent ne nécessitent pas que l’utilisateur saisit à nouveau le mot de passe)

3. Lorsqu’un utilisateur demande une ressource dans le domaine, une demande de service d’octroi de tickets (TGS_REQ) est envoyée, incluant le nom d’utilisateur, l’horodatage, le TGT et le SPN. Les horodatages et les noms d’utilisateur sont chiffrés avec une clé de session.

4. Après avoir reçu la requête, le KDC détermine d’abord s’il y a un SPN dans la requête, puis déchiffre le TGT, extrait la clé de session et l’horodatage dans le TGT, et utilise la clé de session dans le TGT pour déchiffrer le nom d’utilisateur et l’horodatage chiffrés. Effectuez plusieurs vérifications :

(1) L’horodatage déchiffré par TGT doit être valide. (Si une attaque de reprise survient, l’horodatage est invalide.) )

(2) Si le nom d’utilisateur dans le TGT est cohérent avec celui de la requête.

(3) Si l’adresse IP dans le TGT est la même que celle de la requête.

Le chèque répondra au ServiceReply (TGS_REP) d’octroi de tickets du client, qui contient l’accès autorisé SPN, la nouvelle clé de session utilisée pour l’accès entre le client et le SPN, ainsi que le nouveau ticket de service Service Ticket (incluant la nouvelle clé de session, le nom d’utilisateur et le groupe d’utilisateurs). Le SPN autorisé et la clé de session qui accède au SPN sont tous deux chiffrés avec la clé de session dans TGT. Le ticket de service est chiffré avec le mot de passe du compte de service SPN correspondant.

1. Après le processus ci-dessus, l’utilisateur a obtenu la clé de session et le ticket de service liés au service applicatif. L’utilisateur envoie une Application Request (AP_REQ) au service applicatif, qui contient le nom d’utilisateur et l’horodatage, et est chiffrée avec une clé de session.

2. Le service applicatif utilise le hachage du mot de passe du compte de service pour déchiffrer le ticket de service et extraire l’utilisateur, le groupe d’utilisateurs et la clé de session. Déchiffrez le nom d’utilisateur et l’horodatage dans le AP_REQ avec la clé de session déchiffrée. AP_REQ Si c’est le cas, la requête est acceptée, et le service applicatif attribue des permissions en fonction des informations du groupe d’utilisateurs dans le ticket de service, puis l’utilisateur peut accéder au service demandé.

Adresse originale :La connexion hyperlientérée est visible.





Précédent:Le navigateur Windows Edge ouvre la solution de plantage avec IE
Prochain:DNS-over-HTTPS et DNS-over-TLS pour la résolution de noms de domaine
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com