[AD DS Securité] Partage de fichier et protocole SMB (Partie 1 )

À la suite de questions sur la compatibilité entre les OS anciens et récent dans un domaine AD, je vais essayer de résumer quelques informations utiles sur les protocoles de partage de fichiers (SMB). Dans un domaine Active Directory nous avons aux minimums deux partages présents sur tous les contrôleurs de domaine (en bonne santé) : « NetLogon » et « Sysvol ». Ces partages mettent à disposition des postes membres du domaine, les scripts et les paramètres de stratégie de groupes. Les protocoles d'accès aux partages de fichiers chez Microsoft sont assez anciens et ont évolué avec le temps. Certaines de ces anciennes versions comme SMB1 sont devenues vulnérables et représentent un risque de sécurité.

Lorsqu'on parle de partage de fichiers Windows, on retrouve également le terme de CIFS. CIFS est un dialecte de SMB. Je vous conseille de lire l'article suivant si vous souhaitez avoir plus de détails :

https://docs.microsoft.com/en-us/windows/win32/fileio/microsoft-smb-protocol-and-cifs-protocol-overview

 

Et si vous avez du mal à dormir, vous pouvez essayer avec le détail du dialecte de CIFS téléchargeable sur le lien suivant (721 pages) :

https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-cifs/d416ff7c-c536-406e-a951-4f04b2fd1d2b?redirectedfrom=MSDN

 

Dans cet article nous allons mettre de côté les versions Windows antérieur à Windows 2003/ XP. Lors de la connexion à un partage de fichiers, le poste client doitt d'abord envoyer une requête de connexion en spécifiant les dialectes acceptés. Le client et le serveur vont automatiquement utiliser le protocole le plus évolué qu'ils ont en commun. Sur Windows 2003 et XP, le protocole le plus évolué supporté est SMB V1.

Dans l'image ci-dessous qui représente une trame réseau SMB, un poste client Windows XP envoie une liste de dialecte qu'il peut prendre en charge. Dans la liste on retrouve des termes comme « Windows for Workgroups 3.1 ». Je ne pense pas qu'il soit utile de préciser qu'il est vraiment vieux. Le protocole le plus évolué que peut utiliser le client Windows XP, ou le serveur Windows 2003 est « NT LM 0.12 » qui correspond à SMB1.

 

Comme nous l'avons expliqué SMB à évoluer depuis et pour que le client puisse accéder à une ressource partagée il doit pouvoir trouver un dialecte commun. Le tableau ci-dessous vous donnera un résumé des versions utilisé entre un poste client et un serveur en fonction des OS de chacun :

OS

Windows 10/
2016

Windows 8.1/
2012 R2

Windows 8/
2012

Windows 7 /
2008 R2

Windows Vista/
2008

Windows XP/

2003

Windows 10 /
2016

SMB 3.1.1

SMB 3.0.2

SMB 3.0

SMB 2.1

SMB 2.0.2

SMB 1

Windows 8.1/
2012 R2

SMB 3.0.2

SMB 3.0.2

SMB 3.0

SMB 2.1

SMB 2.0.2

SMB 1

Windows 8/
2012

SMB 3.0

SMB 3.0

SMB 3.0

SMB 2.1

SMB 2.0.2

SMB 1

Windows 7/
2008 R2

SMB 2.1

SMB 2.1

SMB 2.1

SMB 2.1

SMB 2.0.2

SMB 1

Windows Vista
2008

SMB 2.0.2

SMB 2.0.2

SMB 2.0.2

SMB 2.0.2

SMB 2.0.2

SMB 1


Windows XP/

2003

SMB 1

SMB 1

SMB 1

SMB 1

SMB 1

SMB 1

 

Avec PowerShell et la commande « Get-SMBConnection », vous pouvez rapidement vérifier la version SMB utilisée par votre client :

A partir de Windows 10 1709, le protocole SMB1 n'est plus pris en charge par défaut.

Il est possible de le réactiver même si ce n'est pas recommandé :

Sur Windows Server 2016, lié à la version 1607, SMB 1.0 est toujours actif par défaut.

Il est possible de l'ajouté ou de le supprimer dans les fonctionnalités de rôles de serveur :

 

Pour conclure , nous pouvons retenir les éléments suivants :

  • Windows XP et 2003 utilisent au maximum SMB 1.0 pour accéder au partage de fichiers et ce protocole est très vulnérable aujourd'hui (exemple Wannacry)
  • Il est possible de migrer les contrôleurs de domaine vers Windows 2016, même si vous disposez encore de poste avec Windows XP et Windows Server 2003. Ces postes pourront accéder aux partages « Netlogon » et « Sysvol » sur les contrôleurs de domaine en Windows Server 2016, si vous n'avez pas désactivé SMB1
  • Les postes Windows XP et 2003 ne pourront accéder par défaut à des partages sur des postes Windows client et serveur 1709 et plus récente.
  • Windows XP et 2003 ne sont plus supportés depuis plusieurs années, si vous n'avez pas encore migré vers des OS plus récent, vous devez l'envisager rapidement.

 

En mars 2017, Microsoft a publié une mise à jour de sécurité pour Windows XP et 2003, afin de corriger des vulnérabilités de SMB 1 exploité. Si vous être concerné, je vous conseille de regarder les liens ci-dessous.

 

https://support.microsoft.com/fr-fr/help/4012598/title

Il est possible de télécharger le correctif à l'adresse suivante :

http://www.catalog.update.microsoft.com/search.aspx?q=4012598

 

 

 

Theme: 

Systeme: 

Annee: