Les anciens protocoles sont difficiles à supprimer. Que ce soit des protocoles grand public comme le SMBv1 (Server Message Block) ou des protocoles réseau comme Windows NT LAN Manager (NTLM), il faut généralement du temps et un peu de planification pour abandonner les protocoles auxquels on a fait jusque-là confiance. Beaucoup utilisent encore le NTLM pour s'authentifier sur leurs réseaux, et cela a été particulièrement vrai pour l'accès à distance pendant la pandémie de Covid-19. Ce protocole ancien, mais bien utilisé, servait d'authentification réseau par défaut dans le système d'exploitation Windows NT 4.0. Mais il est moins sûr que des protocoles plus modernes comme Kerberos.

Pourquoi Windows NTLM pose-t-il problème aujourd’hui ?

D'une manière générale, plus un protocole est ancien, plus il est susceptible de dépendre de chiffrements anciens. Le NTML v1 utilise l'algorithme de chiffrement par blocs DES avec un hachage MD4. Il est possible de le casser par force brute, principalement par ce qu’il n’utilise pas de clé 128 bits complète. Le NTLM v2 utilise un algorithme de hachage et un chiffrement plus puissants. Il peut néanmoins être exploitée par des techniques de type « pass-the-hash » ou « man-in-the-middle ». C’est pourquoi, il est devenu préférable de se passer du NTLM. Au minimum, il est important de savoir exactement quand et où le NTLM est encore utilisé sur le réseau.

Auditer l'utilisation de NT Lan Manager

Pour voir si le NTLM v1 est utilisé, il faut réaliser un audit de ses réseaux. En activant « Auditer les évènements de connexion » sur le contrôleur de domaine permet de trouver les applications qui utilisent le NTLMv1. Ensuite, en recherchant « Rechercher les évènements réussis ID 4624 », on peut avoir des informations sur la version NTLM utilisée.

Cette recherche fait remonter de nombreux événements et il peut être difficile de trouver si le NTLM est toujours utilisé. Un moyen plus facile de déterminer si la désactivation du NTLM est possible consiste à activer un paramètre pour savoir si on peut le restreindre. Pour cela, il faut définir une stratégie de groupe sur son contrôleur de domaine en éditant la console de gestion des stratégies de groupe :

 - Aller dans « Forêt ».

- Aller dans « Domaines ».

- Naviguer jusqu'à « Politique de domaine par défaut » et cliquer dessus avec le bouton droit de la souris.

- Sélectionnee « Éditer ».

- Faire défiler et sélectionner « Configuration ordinateur ».

- Sélectionner « Politiques ».

- Sélectionner « Paramètres de Windows ».

- Sélectionner « Paramètres de sécurité ».

- Sélectionner « Politiques locales ».

- Sélectionner « Options de sécurité ».

- Sélectionner « Sécurité réseau : Restreindre NTLM : Auditer l’authentification NTLM dans ce domaine.

Une fois la stratégie active, les demandes d'authentification NTLM sont enregistrées dans le journal d’organisation situé dans « Application et Services », puis dans « Microsoft », puis dans « Windows », puis dans le journal NTLM sur chaque serveur où l'objet de stratégie de groupe (GPO) est défini.

Sélectionner d'abord les politiques qui ne font que des audits plutôt que « Sécurité du réseau : Trafic NTLM entrant ». Cette fonction est prise en charge sur Server 2008 R2 et plus. Il y a deux politiques. Premièrement, une fois que « Sécurité réseau : restreindre NTLM : auditer le trafic NTLM entrant » est activé, sélectionnez « Activer l’audit pour les comptes de domaine » ou « Activer l’audit pour tous les comptes ».

 

Activer l'audit pour tous les comptes. (Crédit : Susan Bradley)

Ensuite, activez « Sécurité réseau : restreindre NTLM : auditer l’authentification NTLM dans ce domaine ». Pour ce paramètre, vous pouvez choisir « Activer les comptes de domaine vers les serveurs de domaine », « Activer pour les comptes de domaine », « Activer pour les serveurs de domaine » ou Tout Activer ».

 

Audit de l'authentification NTLM sur les serveurs de domaine. (Crédit : Susan Bradley)

Revenez maintenant aux journaux d’organisation et examinez quels processus de votre domaine utilisent ce protocole pour l'authentification et l'accès. Vous constaterez peut-être que les processus d'accès à distance utilisent le NTLM parce qu'ils ne nécessitent pas de connexion directe avec le contrôleur de domaine. Les processus comme Remote Desktop Protocol (RDP) qui s'authentifient via une passerelle de bureau à distance sont susceptibles d'utiliser le NTLM pour transmettre l'authentification au serveur.

Vérifiez si vous pouvez définir la stratégie de groupe « Envoyer des réponses NTLMv2 uniquement. Refuser LM & NTLM » pour « Sécurité réseau : niveau d’authentification LAN Manager ».

Désactiver NTLM lors de l'utilisation d'Azure Active Directory

Microsoft recommande de ne pas s’appuyer sur le NTLM quand on utilise Azure pour les services de domaine. Microsoft préconise les procédures suivantes pour renforcer ses services de domaine Azure Active Directory (Azure AD) :

- Désactiver les chiffrements NTLM v1 et TLS v1.

- Désactiver la synchronisation du hachage du mot de passe NTLM.

- Désactiver la possibilité de modifier les mots de passe avec le chiffrement RC4.

- Activer le blindage Kerberos ou « Kerberos armoring ».

Pour effectuer ces actions, connectez-vous aux services de domaine Azure AD et choisissez votre domaine. Sur le côté gauche, sélectionnez « Paramètres de sécurité » et désactivez les paramètres suivants :

- Mode TLS 1.2 uniquement

- Authentification NTLM

- Synchronisation du mot de passe NTLM à partir de l'installation sur site

- Cryptage RC4 

Activez la sécurité Kerberos

Il ne faut pas oublier qu'Azure AD est différent d'Active Directory (AD). Il ajoute l'authentification unique à l'AD existant. À moins d’utiliser Office 365 et rien d'autre, l'autorité pour les identités des utilisateurs réside toujours dans AD. AD fournit des fonctions clés à un domaine, comme le stockage d'informations sur les utilisateurs, les ordinateurs et les groupes ou le suivi d'objets tels que les unités d’organisation, les domaines et les forêts. Il fournit également des fournisseurs d'authentification communs pour le domaine ainsi que le LDAP, le NTLM et Kerberos pour garantir une authentification sécurisée entre les périphériques joints au domaine. Plus important encore, AD permet un contrôle et une gestion fine des ordinateurs, des utilisateurs et des serveurs.

Azure AD fournit les services de gestion des identités et des accès basés sur le cloud de Microsoft et permet l'accès à Microsoft 365, aux ressources Azure et à d'autres applications software-as-a-service. Azure AD fournit une identité en tant que service pour les applications à travers différents services cloud. En faisant l'inventaire de son réseau, que ce soit des services sur site ou dans le cloud, on peut déterminer le paramètre d'authentification le plus sûr pour son domaine. Souvent, avec les anciennes applications, le NTLM est le mieux que l’on puisse faire. Cependant, il est préférable de limiter l'utilisation du NTLM v1 et de savoir exactement où le NTLM v2 est utilisé. Inutile d’attendre pour planifier l'abandon de ce paramètre. Il faut aussi vérifier quelles applications et quels fournisseurs continuent à utiliser Windows NT LAN Manager.