Signature LDAP et liaison de canal : fermer la porte aux attaques par relais sur vos DC
Les contrôleurs de domaine acceptent encore souvent des liaisons LDAP non signées. C'est précisément ce qu'exploitent les attaques par relais NTLM pour créer des comptes, modifier des délégations ou s'octroyer des droits. Deux paramètres, correctement déployés, neutralisent l'essentiel de ce risque.
Le scénario d'attaque
Un attaquant force une machine ou un utilisateur à s'authentifier auprès de lui, puis relaie cette authentification NTLM vers le service LDAP d'un contrôleur de domaine. Si le DC n'exige pas la signature, la session relayée est acceptée avec les droits de la victime. Avec le compte d'un serveur ou d'un administrateur, l'attaquant peut par exemple configurer une délégation contrainte basée sur les ressources ou modifier des ACL. Sur LDAPS, la signature ne s'applique pas de la même façon : c'est la liaison de canal qui empêche le relais, en liant l'authentification à la session TLS.
Les deux protections
| Protection | Paramètre de stratégie | Ce qu'elle bloque |
|---|---|---|
| Signature LDAP | Contrôleur de domaine : conditions requises pour la signature de serveur LDAP | Liaisons SASL non signées et liaisons simples en clair sur LDAP (port 389) |
| Liaison de canal | Contrôleur de domaine : exigences de jeton de liaison de canal du serveur LDAP | Relais d'authentification vers LDAPS (port 636) |
La liaison de canal accepte trois valeurs : Jamais, Lorsque pris en charge, Toujours. Côté clients, la stratégie « Sécurité réseau : conditions requises pour la signature de client LDAP » doit au minimum négocier la signature. Les versions récentes de Windows Server ont renforcé les valeurs par défaut pour les nouveaux déploiements ; ne supposez pas pour autant que vos DC existants en bénéficient et vérifiez la configuration effective.
Identifier les clients non conformes
Le journal « Service d'annuaire » des contrôleurs de domaine est la source de référence :
- 2886 : avertit que la signature n'est pas exigée ;
- 2887 : résumé quotidien du nombre de liaisons non sécurisées ;
- 2889 : détail de chaque liaison non sécurisée, avec l'adresse IP du client et le compte utilisé ;
- 3039, 3040, 3041 : informations liées à la liaison de canal.
L'événement 2889 n'est journalisé qu'après augmentation du niveau de diagnostic « 16 LDAP Interface Events » à 2 dans le registre du DC. Ce niveau génère du volume : activez-le le temps de la collecte.
Les suspects habituels. Copieurs multifonctions, appliances réseau, applications Java ou anciennes bibliothèques qui utilisent des liaisons simples sur le port 389. La plupart supportent LDAPS ou la signature : il suffit souvent d'un changement de configuration.
Plan de déploiement
- Activer la journalisation diagnostique LDAP sur tous les DC et collecter les événements 2889 pendant plusieurs semaines.
- Corriger chaque client identifié : passage à LDAPS, activation de la signature, mise à jour.
- Configurer la liaison de canal sur « Lorsque pris en charge » et surveiller les événements associés.
- Exiger la signature LDAP sur les contrôleurs de domaine.
- Passer la liaison de canal à « Toujours » une fois les derniers clients traités.
Ce qu'un audit vérifie
- la valeur effective des exigences de signature LDAP sur chaque DC ;
- la configuration de la liaison de canal ;
- la présence d'événements 2887 ou 2889 indiquant des liaisons non sécurisées ;
- la cohérence des stratégies client LDAP sur les postes et serveurs.