Partager via


Protéger le trafic SMB contre l’interception

Dans cet article, vous allez découvrir certaines des façons dont un attaquant peut utiliser les techniques d’interception contre le protocole SMB et comment vous pouvez déjouer une attaque. Les concepts présentés vous aideront à développer votre propre stratégie de défense en profondeur pour le protocole SMB.

Qu’est-ce qu’une attaque par interception ?

Une attaque AITM (Adversary-In-The-Middle) est destinée à modifier la communication réseau entre un client et un serveur, permettant à une entité malveillante d’intercepter le trafic. Après l’interception, une entité malveillante peut avoir la possibilité d’usurper une identité, d’effectuer des falsifications, de divulguer des informations ou de refuser l’accès aux données de votre organisation ou à des informations d’identification de compte.

De nombreuses organisations s’appuient sur SMB pour partager des fichiers entre les utilisateurs et prendre en charge d’autres applications ou technologies, comme Active Directory Domain Services. Avec une adoption à grande échelle de ce type, SMB est à la fois une cible répandue pour les attaquants et peut avoir un impact sur l’ensemble de l’entreprise.

Par exemple, une attaque AITM peut être utilisée pour l’espionnage industriel ou au niveau de l’État, l’extorsion ou la recherche de données de sécurité sensibles stockées dans des fichiers. Il peut également être utilisé dans le cadre d’une attaque plus large pour permettre à l’attaquant de se déplacer latéralement au sein de votre réseau ou de cibler plusieurs points de terminaison.

Étant donné que les attaquants utilisent souvent une combinaison de techniques nouvelles et établies, les attaques évoluent constamment. Lors de la protection de votre système contre l’interception SMB, il y a deux objectifs principaux :

  • Réduire le nombre de méthodes d’attaque disponibles.
  • Sécuriser les parcours que vous présentez à vos utilisateurs.

En raison de la diversité de la technologie et des clients au sein de nombreuses organisations, une défense complète combine plusieurs méthodes et suit les principes Confiance Zéro. Découvrez-en plus sur la Confiance Zéro dans l’article Qu’est-ce que la Confiance Zéro ?.

Vous allez maintenant découvrir certaines des configurations recommandées classiques pour réduire le risque d’interception SMB.

Réduction des méthodes d’attaque disponibles

Pour protéger votre système contre les attaques par interception SMB, vous devez commencer par réduire la surface d’attaque. Les surfaces d’attaque sont des endroits où votre système est vulnérable aux cybermenaces et aux compromissions.

Dans les sections suivantes, nous allons aborder certaines des étapes de base que vous devez suivre pour réduire la surface d’attaque.

Installer les mises à jour

Installez régulièrement toutes les mises à jour de sécurité disponibles sur vos systèmes Windows Server et clients aussi proche de leur version que votre organisation le permet. L’installation des dernières mises à jour de sécurité est le moyen le plus rapide et le plus simple de protéger vos systèmes contre les failles de sécurité connues actuelles qui affectent non seulement SMB, mais aussi tous les produits et services Microsoft.

Vous pouvez installer les mises à jour de sécurité à l’aide de différentes méthodes en fonction des exigences de votre organisation. Les méthodes classiques sont les suivantes :

Envisagez de vous abonner aux notifications dans le Guide des mises à jour de sécurité MSRC (Microsoft Security Response Center). Le système de notification du guide des mises à jour de sécurité vous permet de savoir quand des mises à jour logicielles sont publiées pour traiter les Vulnérabilités et risques courants (CVE) nouvelles et existantes.

Supprimer SMB 1.0

Vous devez supprimer ou désactiver la fonctionnalité SMB 1.0 de tous les systèmes Windows Server et clients qui n’en ont pas besoin. Pour les systèmes qui nécessitent SMB 1.0, vous devez passer dès que possible à SMB 2.0 ou une version ultérieure. À compter de la Windows 10 Fall Creators Update et Windows Server 2019, SMB 1.0 n’est plus installé par défaut.

Conseil

Windows 10 Famille et Windows 10 Professionnel contiennent toujours le client SMB 1.0 par défaut après une nouvelle installation ou une mise à niveau sur place. Ce comportement change dans Windows 11. Vous pouvez en savoir plus dans l’article SMB1 maintenant désactivé par défaut pour les builds Windows 11 Home Insider.

La suppression de SMB 1.0 protège vos systèmes en éliminant plusieurs vulnérabilités de sécurité connues. SMB 1.0 ne dispose pas des fonctionnalités de sécurité de SMB 2.0 et des versions ultérieures qui contribuent d’éviter l’interception. Par exemple, pour empêcher une connexion compromise, SMB 3.0 ou les versions ultérieures utilisent l’intégrité de pré-authentification, le chiffrement et la signature. Découvrez-en plus dans l’article Améliorations concernant la sécurité SMB.

Avant de supprimer la fonctionnalité SMB 1.0, assurez-vous qu’aucune application et qu’aucun processus sur l’ordinateur n’en a besoin. Pour plus d’informations sur la façon de détecter et de désactiver SMB 1.0, consultez l’article Guide pratique pour détecter, activer et désactiver SMBv1, SMBv2 et SMBv3 dans Windows.

Vous pouvez également utiliser l’outil Fichiers et partage de fichiers de Windows Admin Center pour à la fois activer rapidement l’audit des connexions client SMB1 et désinstaller SMB 1.

Désactiver l’authentification d’invité et de secours

Dans SMB 1.0, quand les informations d’identification d’un utilisateur échouent, le client SMB essaie l’accès invité. À compter de la version 1709 de Windows 10 et de Windows Server 2019, les clients SMB2 et SMB3 n’autorisent plus l’accès au compte invité ou le recours au compte invité par défaut. Vous devez utiliser SMB 2.0 ou une version ultérieure et désactiver l’utilisation de l’accès invité SMB sur tout système où l’accès invité n’est pas désactivé par défaut.

Conseil

Les éditions Famille et Professionnel de Windows 11 sont inchangées par rapport à leur comportement par défaut précédent. Elles autorisent l’authentification d’invité par défaut.

Lorsque l’accès invité est désactivé, cela empêche une entité malveillante de créer un serveur et d’inciter les utilisateurs à y accéder à l’aide de l’accès invité. Par exemple, lorsqu’un utilisateur accède au partage dont l’identité a été usurpée, ses informations d’identification échouent et SMB 1.0 se rabat sur l’utilisation de l’accès invité. La désactivation de l’accès invité empêche la session SMB de se connecter, évitant que l’utilisateur accède au partage et à des fichiers malveillants.

Pour empêcher l’utilisation de l’accès invité de secours sur les clients SMB Windows où l’accès invité n’est pas désactivé par défaut (notamment Windows Server) :

  1. Ouvrez la Console de gestion des stratégies de groupe.
  2. Dans l’arborescence de la console, sélectionnez Configuration ordinateur > Modèles d’administration > Réseau > Station de travail Lanman.
  3. Pour le paramètre, cliquez avec le bouton droit sur Activer les ouvertures de session invité non sécurisées, puis sélectionnez Modifier.
  4. Sélectionnez Activé, puis OK.

Pour en savoir plus sur le comportement par défaut de l’accès invité, lisez l’article Accès invité dans SMB2 et SMB3 désactivé par défaut dans Windows.

Désactiver le protocole WebDAV

Les clients Windows peuvent ne pas avoir besoin que le service WebClient soit en cours d’exécution. Le service fournit le protocole WebDAV (Web Distributed Authoring and Versioning). Si vos clients n’accèdent pas aux partages SMB via HTTP ou HTTPS à l’aide de WebDAV, vous pouvez désactiver le service.

Lorsque vos utilisateurs accèdent à des fichiers à l’aide de WebDAV, il n’existe aucune méthode pour forcer une connexion TLS via HTTPS. Par exemple, votre serveur peut être configuré pour exiger la signature ou le chiffrement SMB, mais le client web peut se connecter à HTTP/80 si WebDAV a été activé. Toute connexion obtenue est non chiffrée, quelle que soit votre configuration SMB.

Vous pouvez utiliser la stratégie de groupe Préférences pour désactiver le service sur un grand nombre de machines lorsque vous êtes prêt à effectuer l’implémentation. Pour plus d’informations sur la configuration de la stratégie de groupe Préférences, consultez Configurer un élément de service.

Restreindre les destinations SMB sortantes

Bloquez au minimum le trafic SMB sortant vers les appareils en dehors de votre réseau. Le blocage du trafic SMB sortant empêche l’envoi de données à des points de terminaison externes. Les entités malveillantes essaient souvent des attaques par usurpation d’identité, par falsification ou par hameçonnage qui tentent d’envoyer des utilisateurs vers des points de terminaison malveillants dissimulés dans des liens ou raccourcis conviviaux dans des e-mails ou autres fichiers. Pour en savoir plus sur le blocage de l’accès SMB sortant, lisez l’article Sécuriser le trafic SMB dans Windows Server.

Pour aller plus loin dans ce principe, introduisez des micro-périmètres et une micro-segmentation dans votre architecture. Le blocage du trafic SMB sortant vers des réseaux externes permet d’empêcher l’exfiltration directe de données vers Internet. Toutefois, les attaques modernes utilisent des techniques avancées pour obtenir indirectement un accès en attaquant d’autres systèmes, puis en se déplaçant latéralement au sein de votre réseau. Les micro-périmètres et la micro-segmentation visent à réduire le nombre de systèmes et d’utilisateurs en mesure de se connecter directement à votre partage SMB, sauf si cela est explicitement nécessaire. Découvrez-en plus sur la segmentation du réseau dans le cadre de nos conseils sur la Confiance Zéro.

Sécuriser le protocole

Votre deuxième objectif est de sécuriser les parcours entre vos utilisateurs et leurs données. Cette opération est appelée « protection des données en transit ». La protection des données en transit implique généralement l’utilisation du chiffrement, la sécurisation renforcée de l’interface et la suppression des protocoles non sécurisés pour améliorer votre résistance aux attaques.

Dans les sections suivantes, nous allons aborder certaines des étapes de base que vous devez suivre pour sécuriser le protocole SMB.

Utiliser SMB 3.1.1

Windows négocie toujours avec le protocole le plus élevé disponible. Assurez-vous que vos appareils et machines prennent en charge SMB 3.1.1.

SMB 3.1.1 est disponible à compter de Windows 10 et de Windows Server 2016. SMB 3.1.1 inclut une nouvelle fonctionnalité de sécurité obligatoire appelée intégrité de pré-authentification. L’intégrité de pré-authentification signe ou chiffre les premières phases des connexions SMB pour empêcher la falsification des messages de négociation et de configuration de session à l’aide du hachage de chiffrement.

Le hachage de chiffrement suppose que le client et le serveur peuvent approuver mutuellement les propriétés de connexion et de session. L’intégrité de pré-authentification remplace la négociation de dialecte sécurisée introduite dans SMB 3.0. Vous ne pouvez pas désactiver l’intégrité de pré-authentification, mais si un client utilise un dialecte plus ancien, il ne sera pas utilisé.

Vous pouvez renforcer votre posture de sécurité en imposant l’utilisation de SMB 3.1.1 au minimum. Pour définir le dialecte SMB minimal sur 3.1.1, à partir d’une invite PowerShell avec élévation de privilèges, exécutez les commandes suivantes :

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" -Name "MinSMB2Dialect" -Value 0x000000311
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" -Name "MaxSMB2Dialect" -Value 0x000000311

Pour en savoir plus concernant le paramétrage du minimum et du maximum pour le dialecte SMB utilisé dans Windows Server et Windows, veuillez consulter la rubrique Gérer les dialectes SMB dans Windows.

Utiliser la sécurisation renforcée UNC pour exiger la signature, le chiffrement et l’authentification mutuelle

Activez la sécurisation renforcée UNC pour tous les partages SMB en exigeant au moins l’authentification mutuelle (Kerberos) et l’intégrité (signature SMB). Vous devez également envisager d’évaluer la confidentialité (chiffrement SMB) à la place de la signature SMB. Il n’est pas nécessaire de configurer à la fois la signature et le chiffrement SMB, car le chiffrement inclut implicitement les signatures utilisées par la signature.

Attention

Le chiffrement SMB a été introduit avec SMB 3 dans Windows 8 et Windows Server 2012. Vous ne devez pas exiger le chiffrement, sauf si toutes vos machines prennent en charge SMB 3.0 ou une version ultérieure, ou s’il s’agit de tiers disposant de SMB 3 et de la prise en charge du chiffrement. Si vous configurez le chiffrement SMB sur des clients ou des chemins d’accès UNC hébergés par des serveurs qui ne prennent pas en charge le chiffrement SMB, le client SMB ne pourra pas accéder au chemin spécifié. De même, si vous configurez votre serveur pour le chiffrement SMB et des clients qui ne le prennent pas en charge y accèdent, ces clients ne pourront, là encore, pas accéder au chemin.

La sécurisation renforcée UNC permet de vérifier les chemins d’accès UNC pour les paramètres de sécurité obligatoires et refuse la connexion si un serveur n’a pas pu les respecter. À compter de Windows Server 2016 et de Windows 10, la sécurisation renforcée UNC est activée par défaut pour les partages SYSVOL et NETLOGON sur les contrôleurs de domaine. Il s’agit d’un outil très efficace contre l’usurpation et la falsification, car le client peut authentifier l’identité du serveur et valider l’intégrité des charges utiles SMB.

Lors de la configuration de la sécurisation renforcée UNC, vous pouvez spécifier différents modèles de chemin d’accès UNC. Exemple :

  • \\<Server>\<Share> : l’entrée de configuration s’applique au partage qui porte le nom spécifié sur le serveur spécifié.
  • \\*\<Share> : l’entrée de configuration s’applique au partage qui porte le nom spécifié sur n’importe quel serveur.
  • \\<Server>\* : l’entrée de configuration s’applique à n’importe quel partage sur n’importe quel serveur.

Vous pouvez utiliser une stratégie de groupe pour appliquer la fonctionnalité de sécurisation renforcée UNC à un grand nombre de machines lorsque vous êtes prêt à l’implémenter. Pour plus d’informations sur la configuration de la sécurisation renforcée UNC par le biais d’une stratégie de groupe, consultez le bulletin de sécurité MS15-011.

Mapper des lecteurs à la demande avec signature ou chiffrement obligatoire

En plus de la sécurisation renforcée UNC, vous pouvez utiliser la signature ou le chiffrement lors du mappage des lecteurs réseau. À compter de Windows version 1709 et les versions ultérieures, vous pouvez créer des lecteurs mappés chiffrés ou signés à la demande à l’aide de Windows PowerShell ou d’une invite de commandes. Vous pouvez utiliser la commande NET USE ou la commande PowerShell New-SmbMapping pour mapper des lecteurs en spécifiant les paramètres RequireIntegrity (signature) ou RequirePrivacy (chiffrement).

Les commandes peuvent être utilisées par des administrateurs ou incluses dans des scripts pour automatiser le mappage de lecteurs qui nécessitent un chiffrement ou des vérifications d’intégrité.

Les paramètres ne changent pas la façon dont la signature ou le chiffrement fonctionnent, ni les conditions associées aux dialectes. Si vous essayez de mapper un lecteur et que le serveur refuse de respecter votre exigence concernant la signature ou le chiffrement, le mappage de lecteur échoue plutôt que d’établir une connexion non sécurisée.

Découvrez la syntaxe et les paramètres de la commande New-SmbMapping dans l’article de référence New-SmbMapping.

À part SMB

Arrêtez d’utiliser NTLM et augmentez votre sécurité Kerberos. Vous pouvez commencer par activer l’audit pour l’utilisation de NTLM, puis examiner les journaux pour trouver où NTLM est utilisé.

La suppression de NTLM vous permet de vous protéger contre les attaques courantes comme les attaques de type pass-the-hash, les attaques par force brute ou les tables de hachage arc-en-ciel en raison de son utilisation de l’ancienne fonction de hachage de chiffrement MD4/MD5. NTLM n’est pas non plus en mesure de vérifier l’identité du serveur, contrairement aux protocoles plus récents comme Kerberos, ce qui le rend également vulnérable aux attaques de relais NTLM. Beaucoup de ces attaques courantes sont facilement déjouées avec Kerberos.

Pour savoir comment auditer NTLM dans le cadre de vos efforts pour commencer la transition vers Kerberos, consultez l’article Évaluation de l’utilisation de NTLM. Vous pouvez également en savoir plus sur la détection de protocoles non sécurisés à l’aide d’Azure Sentinel dans l’article de blog Guide d’implémentation de classeur Protocoles non sécurisés Azure Sentinel.

Parallèlement à la suppression de NTLM, vous devez envisager d’ajouter des couches de protection supplémentaires pour les attaques hors connexion et les attaques de passage de ticket. Utilisez les éléments suivants comme guide lors de l’amélioration de la sécurité Kerberos.

  1. Déployer Windows Hello Entreprise ou des cartes à puce : l’authentification à deux facteurs avec Windows Hello Entreprise ajoute une nouvelle couche de protection. Découvrez-en plus sur Windows Hello Entreprise.
  2. Appliquer des mots de passe longs et des expressions : nous vous encourageons à utiliser des mots de passe plus longs, par exemple 15 caractères ou plus, afin de réduire votre résistance aux attaques par force brute. Vous devez également éviter les mots ou les expressions courants pour renforcer encore davantage votre mot de passe.
  3. Déployez Microsoft Entra Password Protection pour les services de domaine Active Directory - Utilisez Microsoft Entra ID Password Protect pour bloquer les mots de passe faibles connus et les termes spécifiques à votre organisation. Pour en savoir plus, consultez la section Appliquer localement la protection par mot de passe Microsoft Entra pour les services de domaine Active Directory.
  4. Utiliser des comptes de service géré de groupe (gMSA) : avec leur construction de 127 caractères aléatoires, les services pour lesquels les comptes gMSA sont activés rendent les attaques par force brute et les attaques par dictionnaire visant à décoder les mots de passe très laborieuses. Découvrez ce que sont les comptes gMSA dans l’article Vue d’ensemble des comptes de service géré de groupe.
  5. Blindage Kerberos, connu sous le nom de FAST (Flexible Authentication Secure Tunneling) : FAST empêche le kerberoasting, car les données de pré-authentification de l’utilisateur sont protégées et ne sont plus soumises à des attaques par force brute ou par dictionnaire hors connexion. Il empêche également les attaques par rétrogradation à partir de contrôleurs de domaine Kerberos (KDC) usurpés. Pour en savoir plus, consultez Blindage Kerberos.
  6. Utiliser Windows Defender Credential Guard : Credential Guard rend la compromission locale de tickets plus difficile en empêchant l’octroi de tickets et le vol de tickets de service. Découvrez-en plus dans l’article Fonctionnement de Windows Defender Credential Guard.
  7. Envisager d’exiger SCRIL (Carte à puce requise pour l’ouverture de session interactive) : lors du déploiement de SCRIL, AD remplace le mot de passe de l’utilisateur par une valeur aléatoire de 128 bits que les utilisateurs ne peuvent plus utiliser pour se connecter de manière interactive. En général, SCRIL convient uniquement aux environnements ayant des exigences de sécurité spécifiques. Pour en savoir plus sur les stratégies sans mot de passe, consultez Configuration des comptes d’utilisateur pour interdire l’authentification par mot de passe.

Étapes suivantes

Maintenant que vous avez découvert certains des contrôles de sécurité et des atténuations pour empêcher l’interception SMB, vous comprendrez qu’il n’existe pas une étape unique pour empêcher toutes les attaques par interception. L’objectif est de créer une combinaison réfléchie, holistique et hiérarchisée des mesures d’atténuation des risques couvrant plusieurs technologies par le biais de défenses en couches.

Vous pouvez continuer à découvrir ces concepts dans les articles ci-dessous.