Authentification

LDAP

LDAP (Lightweight Directory Access Protocol) est un protocole utilisé pour accéder et gérer des services d'annuaire distribués sur un réseau. Ces annuaires contiennent des informations sur les utilisateurs, les groupes, les ordinateurs, les imprimantes, et bien plus. L'authentification LDAP permet de vérifier l'identité des utilisateurs lorsqu'ils se connectent à des systèmes et des applications.

Pour l'authentification, il n'agit pas comme hôte intermédiaire entre l'utilisateur et Active Directory. Il prend les informations d'identification de l'utilisateur et utilise son propre ensemble d'informations d'identification pour vérifier l'utilisateur dans Active Directory.

  • Connexion au serveur LDAP :

    • L'utilisateur envoie une demande d'authentification au serveur LDAP depuis son client.

  • Recherche de l'utilisateur :

    • Le serveur LDAP localise l'entrée correspondant au nom d'utilisateur dans l'annuaire.

  • Vérification du mot de passe :

    • Le serveur compare le mot de passe fourni avec celui stocké. Si les deux correspondent, l'utilisateur est authentifié.

LDAP Pass-back Attacks

  • Accès au Périphérique :

    • Vous avez accès à l'interface d'administration d'un périphérique réseau, comme une imprimante. Ces interfaces utilisent souvent des paramètres par défaut qui sont peu sécurisés, comme admin:admin.

  • Modification des Paramètres LDAP :

    • Dans l'interface d'administration du périphérique, vous changez les paramètres LDAP pour que le périphérique tente de se connecter à un serveur LDAP contrôlé par vous, au lieu du serveur LDAP légitime. Par exemple, vous modifiez l'adresse IP du serveur LDAP pour qu'elle pointe vers votre machine.

  • Configuration d'un Serveur LDAP Factice :

    • Vous configurez un serveur LDAP factice sur votre propre machine. Ce serveur est configuré pour accepter les connexions LDAP avec des méthodes d'authentification non sécurisées (comme PLAIN ou LOGIN), ce qui permet aux informations d'identification d'être envoyées en texte clair.

  • Capture des Informations d'Identification :

    • Lorsque le périphérique essaie de tester les paramètres LDAP modifiés, il se connecte à votre serveur LDAP factice. Vous pouvez alors capturer les informations d'identification (nom d'utilisateur et mot de passe) envoyées en texte clair en utilisant des outils comme Netcat.

TGT et TGS

  • TGT : C'est un ticket unique qui sert à prouver que vous êtes authentifié une seule fois. Il vous permet d'accéder à de multiples services sans avoir à saisir votre mot de passe à chaque fois.

  • Ticket de service : Un ticket spécifique à un service donné (par exemple, un serveur de fichiers), qui est généré à partir du TGT pour autoriser l'accès au service.

Étape 1 : Authentification initiale (Alice entre son mot de passe)

  1. Alice entre son identifiant et mot de passe :

    • Identifiant : alice@entreprise.com

    • Mot de passe : MonMotDePasseSuperSecurise

  2. Création de la clé secrète :

    • Le mot de passe d'Alice est transformé en une clé secrète (via un algorithme comme SHA-256).

  3. Chiffrement de l'horodatage :

    • L’ordinateur d'Alice crée un horodatage (ex. 1674207621) qui représente l'heure exacte de la demande

    • Cet horodatage est chiffré avec la clé secrète (ex. abcdef1234567890) en utilisant un algorithme comme AES.

    Exemple :

    • Horodatage : 1674207621

    • Chiffrement (avec la clé secrète) → Valeur chiffrée : C0A8F6D9E5F… (valeur fictive)

  4. Envoi au KDC : L'ordinateur envoie l'horodatage chiffré au KDC (contrôleur de domaine).

Étape 2 : Délivrance du TGT par le KDC

  1. Le KDC reçoit la demande d'Alice et déchiffre l'horodatage envoyé par l'ordinateur d’Alice.

    • Le KDC connaît la clé secrète de l'utilisateur Alice, car elle est stockée sur le contrôleur de domaine (dérivée de son mot de passe).

  2. Le KDC vérifie l'horodatage :

    • Si l’horodatage est correct (c'est-à-dire qu'il correspond à l'heure actuelle et que le chiffrement est valide), cela prouve qu’Alice connaît bien son mot de passe.

    • Le KDC délivre alors un TGT (Ticket Granting Ticket) qui permet à Alice d’accéder à d’autres services.

  3. Le TGT contient des informations comme :

    • L’identifiant d’Alice.

    • Une clé de session temporaire pour Alice (utilisée pour ses échanges futurs avec le KDC).

    • Une date d’expiration pour ce TGT (par exemple, il peut être valide pendant 8 heures).

  4. Le TGT est chiffré par le KDC, donc l’ordinateur d’Alice ne peut pas le modifier.

🔑 Durée de vie et renouvellement :

  • Le TGT délivré par le KDC peut être valable pour quelques heures (par exemple, 8 heures).

  • Alice n'a pas à retaper son mot de passe pendant cette période.

  • Si le TGT expire, Alice devra se réauthentifier pour obtenir un nouveau TGT.

Étape 3 : Demande d’accès à un service

  1. Alice décide d’accéder à un serveur de fichiers (serveurFichiers.entreprise.com).

    • Alice n’a pas besoin de rentrer son mot de passe à ce moment-là, car elle a déjà un TGT valide.

  2. L'ordinateur d’Alice envoie le TGT au KDC avec une demande d'accès au serveur de fichiers.

    • Demande : "Donne-moi un ticket pour accéder au serveur de fichiers."

  3. Le KDC vérifie le TGT (qu'il peut déchiffrer), puis génère un ticket de service pour le serveur de fichiers. Ce ticket permet à Alice d'accéder au serveur.

  4. Ce ticket est renvoyé à l'ordinateur d'Alice, qui peut l'utiliser pour se connecter au serveur de fichiers sans avoir à entrer à nouveau son mot de passe.

Last updated