Vous devez rattacher un PC Windows 7 Pro 64 bits, non mis à jour depuis 2014, à un domaine Active Directory récent sans casser une application industrielle. Voici un plan éprouvé qui concilie sécurité, compatibilité et continuité de production.
Contexte et risques
Un poste Windows 7 non patché représente une cible facile : fin de support depuis le 14 janvier 2020, vulnérabilités publiques non corrigées, protocoles obsolètes (SMB 1, TLS 1.0/1.1, NTLM v1, LDAP sans signature). De leur côté, les domaines Active Directory modernes (2012 R2, 2016, 2019, 2022) durcissent par défaut LDAP, Kerberos et NTLM, ce qui peut rompre la compatibilité d’un client resté à l’état « 2014 ».
Le défi est double : empêcher que cette machine serve de point d’appui à un attaquant pour pivoter vers le cœur du SI, tout en ne perturbant pas l’outil de production qu’elle pilote.
Stratégie globale
- Séparer pour protéger : isolez physiquement et logiquement le PC sur un VLAN/zone « Legacy » avec filtrage strict vers les contrôleurs de domaine (DC) et rien d’autre.
- Mettre à niveau au minimum : appliquez un socle réduit de correctifs ciblés (signature SHA‑2, TLS 1.2, correctifs RDP critiques) qui n’affectent pas l’application.
- Encadrer côté AD : créez une OU dédiée avec GPO « compatibilité contrôlée », sans affaiblir la sécurité globale du domaine.
- Tester avant : travaillez d’abord sur un clone ou une image restaurable, dans un réseau d’essai reproduisant les politiques du domaine.
Réponse et solutions synthétiques
Axe | Points clés | Mesures proposées |
---|---|---|
Sécurité | OS hors support (EOL 14/01/2020) ; exposition à SMB 1, TLS 1.0/1.1, NTLM v1, LDAP non signé ; risque de pivot vers le domaine. | Segmenter en VLAN/DMZ industrielle, ACL vers seuls DC autorisés. Bloquer toute sortie inutile : Internet, messagerie, postes utilisateurs, serveurs non requis. Activer pare‑feu local avec règles sortantes par défaut en deny. Désactiver SMB 1 et privilégier SMB signé/chiffré lorsque possible. |
Compatibilité AD | Domaine 2012 R2/2016/2019/2022 compatible Windows 7 si le poste est à jour. Risques sans correctifs : LDAP signing/CBT, Kerberos armoring (FAST), exigence NTLMv2 only. | Environnement d’essai : cloner le disque ou snapshot VM, tester jointure et GPO. Minimum vital : SP1, Servicing Stack Update (KB4490628), SHA‑2 (KB4474419), TLS 1.2 activé, correctifs RDP 2019 (BlueKeep), désactivation SMB 1. |
Exploitation industrielle | Dépendances aux comptes locaux, services, tâches planifiées, dongles/licences, chemins UNC, DCOM/OPC. Mode déconnecté si DC indisponible. | Conserver un compte local de secours admin non joint au domaine. Documenter et tester la continuité si AD non joignable (cache d’identifiants, délais). |
Alternative | Laisser en workgroup et gérer localement si aucune ressource AD n’est requise. | Virtualiser l’IHM dans une VM Windows 10 LTSC jointe au domaine, hôte isolé. Envisager un upgrade matériel/OS planifié (Windows 10 IoT LTSC). |
Architecture réseau recommandée
Segmentation et filtrage
- VLAN « Legacy » dédié, routé uniquement vers : DC/RODC autorisés, serveur NTP, serveur WSUS/PKI interne si utilisé.
- ACL sortantes par défaut en blocage, ouverture fine par IP/port vers les DC uniquement.
- Option RODC dans la zone industrielle pour limiter l’impact sécurité et réduire la latence d’authentification.
- Accès d’administration via un bastion/jump server du SI, jamais directement depuis des postes bureautiques.
Flux minimaux à autoriser
Usage | Protocole/Port | Direction | Remarques |
---|---|---|---|
DNS | UDP/TCP 53 | Client → DC/DNS | Serveurs DNS = DC du domaine uniquement. |
Kerberos | TCP/UDP 88 | Client → DC | Authentification domaine. |
LDAP | TCP 389 | Client → DC | LDAP signé (signing). Préférer LDAPS si possible. |
LDAPS | TCP 636 | Client → DC | Annuaire chiffré. Vérifier chaîne de confiance. |
SMB | TCP 445 | Client ↔ DC/serveurs | Netlogon, scripts GPO, partages. Désactiver SMB 1. |
RPC EPM | TCP 135 | Client → DC | Endpoint Mapper pour jointure et GPO. |
RPC dynamiques | TCP 49152–65535 | Client → DC | Plage par défaut Vista/7+. Filtrer par IP des DC. |
Time/NTP | UDP 123 | Client → DC/NTP | Indispensable pour Kerberos (dérive < 5 min). |
WMI (option) | TCP 135 + RPC dyn. | Management | À ouvrir seulement si supervision requise. |
Mise à niveau minimale du poste Windows 7
Avant toute action
- Sauvegarde image complète du disque (outil de votre choix) et point de restauration si activé.
- Inventaire des pilotes, services, tâches planifiées, versions .NET, dépendances réseau/partages.
- Clonage ou snapshot d’un double du poste pour tous les tests.
Correctifs « minimum vital »
Sans basculer dans un Patch Tuesday complet, appliquez a minima :
- SP1 si absent.
- KB4490628 (Servicing Stack Update) puis KB4474419 (prise en charge SHA‑2), nécessaires pour installer des mises à jour signées récentes.
- Correctifs RDP 2019 (vulnérabilité BlueKeep) pour éliminer un vecteur critique.
- Activation TLS 1.2 côté OS et .NET, afin de négocier correctement avec des DC durcis et des services internes.
- Désactivation SMB 1 (client et serveur).
Paramétrages concrets
Activer TLS 1.2 côté SChannel
rem TLS 1.2 - Client
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" /v Enabled /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" /v DisabledByDefault /t REG_DWORD /d 0 /f
rem TLS 1.2 - Server (au cas où le poste expose des services)
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server" /v Enabled /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server" /v DisabledByDefault /t REG_DWORD /d 0 /f
Forcer .NET à utiliser des suites fortes
reg add "HKLM\SOFTWARE\Microsoft\.NETFramework\v2.0.50727" /v SchUseStrongCrypto /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319" /v SchUseStrongCrypto /t REG_DWORD /d 1 /f
Désactiver SMB 1
rem Composant serveur SMBv1
reg add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" /v SMB1 /t REG_DWORD /d 0 /f
rem Composant client SMBv1
sc.exe config mrxsmb10 start= disabled
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb20 start= auto
Redémarrage requis pour la prise en compte.
Exiger NTLMv2 uniquement et refuser LM/NTLM
Via stratégie locale (secpol.msc → Stratégies locales → Options de sécurité) :
- Sécurité réseau : niveau d’authentification LAN Manager : « Envoyer des réponses NTLMv2 uniquement. Refuser LM et NTLM ».
- Accès réseau : ne pas autoriser l’énumération anonyme des comptes et des partages : Activé.
Durcir le pare‑feu Windows
netsh advfirewall set allprofiles state on
netsh advfirewall set allprofiles firewallpolicy blockinbound,blockoutbound
rem Autoriser seulement les flux AD vers les DC
netsh advfirewall firewall add rule name="AD-DNS" dir=out action=allow protocol=UDP remoteport=53 remoteip=
netsh advfirewall firewall add rule name="AD-Kerberos" dir=out action=allow protocol=TCP remoteport=88 remoteip=
netsh advfirewall firewall add rule name="AD-LDAP" dir=out action=allow protocol=TCP remoteport=389 remoteip=
netsh advfirewall firewall add rule name="AD-LDAPS" dir=out action=allow protocol=TCP remoteport=636 remoteip=
netsh advfirewall firewall add rule name="AD-SMB" dir=out action=allow protocol=TCP remoteport=445 remoteip=
netsh advfirewall firewall add rule name="AD-RPC135" dir=out action=allow protocol=TCP remoteport=135 remoteip=
netsh advfirewall firewall add rule name="AD-RPC-Dynamic" dir=out action=allow protocol=TCP remoteport=49152-65535 remoteip=
netsh advfirewall firewall add rule name="TIME-NTP" dir=out action=allow protocol=UDP remoteport=123 remoteip=
Services et paramètres à vérifier
- Désactiver Remote Registry et l’Assistance à distance si non requis.
- Limiter RDP aux IP d’administration (règle entrante ciblée, authentification NLA).
- Désactiver Autorun sur tous les lecteurs amovibles.
- Renommer le compte Administrateur local et appliquer un mot de passe fort, stocké dans un coffre.
Préparer l’Active Directory
OU et GPO dédiées
- Créer une OU « Legacy‑Industrial ».
- Lier une GPO « Legacy‑Compat » avec, par exemple :
- Ne pas exiger Kerberos FAST/armoring pour cette OU (laisser « Support des revendications, authentification composée et armoring Kerberos » en Autorisé, pas Requis).
- Scripts de démarrage/arrêt compatibles Windows 7.
- Paramètres SMB : signature requise côté client si vos serveurs l’exigent.
- WMI Filter pour cibler uniquement Windows 7 :
SELECT * FROM Win32_OperatingSystem WHERE Version LIKE "6.1%" AND ProductType = "1"
Attention : n’affaiblissez pas les paramètres au niveau du domaine pour toute l’organisation. Concentrez les ajustements sur l’OU de la machine legacy.
DNS, NTP et certificats
- Attribuer des DNS = DC du domaine (et seulement eux) dans la configuration IP du poste.
- Synchronisation heure sur la hiérarchie de domaine :
w32tm /config /syncfromflags:DOMHIER /update net stop w32time && net start w32time w32tm /query /status
- Si LDAPS sera utilisé, déployer la chaîne de certificats racine/intermédiaire dans le magasin « Autorités de certification racines de confiance » du poste.
Procédures de jointure
Scénario A : jointure hors‑ligne (Offline Domain Join)
Réduit l’exposition RPC pendant la jointure et permet de préparer la machine sans ouverture temporaire de ports supplémentaires.
- Sur un serveur membre/contrôleur de domaine :
djoin /provision /domain CONTOSO.LOCAL /machine WIN7LEGACY /savefile C:\ODJ\WIN7LEGACY.txt /reuse /machineou "OU=Legacy-Industrial,DC=CONTOSO,DC=LOCAL"
- Transférer le fichier ODJ de manière sécurisée au poste (clé USB contrôlée, réseau isolé).
- Sur le poste Windows 7 :
djoin /requestODJ /loadfile C:\ODJ\WIN7LEGACY.txt /windowspath C:\Windows /localos shutdown /r /t 0
- Au redémarrage, vérifier la connectivité aux DC, forcer une mise à jour de stratégies :
nltest /dsgetdc:CONTOSO.LOCAL klist purge gpupdate /force
Scénario B : jointure classique
- Configurer DNS vers les DC et heure correcte (< 5 minutes d’écart).
- Utiliser la commande :
netdom join WIN7LEGACY /domain:CONTOSO.LOCAL /userd:CONTOSO\JoinAccount /passwordd:* /OU:"OU=Legacy-Industrial,DC=CONTOSO,DC=LOCAL"
- Redémarrer puis exécuter :
nltest /sc_query:CONTOSO.LOCAL gpresult /h C:\Temp\gp.html & start C:\Temp\gp.html
Vérifications post‑jointure
- Journal d’événements : Kerberos (Système/Sécurité), GroupPolicy (Applications et Services → Microsoft → Windows → GroupPolicy → Operational).
- Netlogon : activer le log si nécessaire (
nltest /dbflag:0x2080FFFF
, puis%windir%\debug\netlogon.log
). - Tests ressources : accès aux partages nécessaires, scripts de connexion, imprimantes industrielles.
- Stabilité applicative : tests fonctionnels complets de la chaîne de production.
Réduction de la surface d’attaque du poste
Principes
- Moindre privilège : l’utilisateur d’exploitation ne doit pas être admin local.
- Exposition minimale : aucun service inutile exposé, pas de navigation Web ni messagerie.
- Traçabilité : journalisation locale et centralisée (si SIEM), horodatage fiable.
Mesures concrètes
Zone | Action | Détail |
---|---|---|
Comptes | Compte local de secours | Admin local robuste, stocké en coffre. Interdire les comptes partagés. |
Authentification | Cache d’identifiants | Limiter cachedlogonscount si risque de vol hors ligne. |
Réseau | Liste blanche | Seulement DC, NTP et serveurs strictement nécessaires. |
USB | Contrôle des périphériques | Politique de blocage/autorisation ciblée des ports amovibles. |
Journaux | Surveillance | Remontée centrale des logs si disponible (Sysmon léger si validé). |
Spécificités industrielles et check‑list
- Services/tâches planifiées : vérifiez les comptes d’exécution. Conserver des identifiants locaux si l’applicatif les attend.
- Chemins UNC : si l’application utilise des partages, validez l’accès après jointure (droits NTFS/partage).
- OPC/DCOM : certains SCADA exigent DCOM. Documentez les CLSID/ports si ouverture supplémentaire indispensable.
- Dongles/licences : revalidez toute licence liée à la machine après la modification du domaine/SID.
- Mode dégradé : scénarios de production si AD indisponible (délais d’authentification, cache, comptes locaux).
Alternatives si la jointure est trop risquée
- Workgroup isolé : la machine reste hors domaine, administration via un bastion, transferts de fichiers par passerelle sécurisée/zone tampon.
- Virtualisation : l’IHM legacy tourne dans une VM Windows 7 sur un hôte moderne ; c’est la VM qui est jointe (ou non) selon le besoin, avec des snapshots pour retour arrière.
- Modernisation progressive : migration vers Windows 10 IoT LTSC validée par l’éditeur, puis rattachement normal au domaine.
Plan de mise en œuvre étape par étape
- Évaluer/Inventorier : matériel, pilotes, dépendances, logiciels sensibles, contraintes réglementaires.
- Cloner et tester : réseau d’essai avec politiques AD identiques, validation fonctionnelle.
- Appliquer le « minimum vital » (SSU, SHA‑2, RDP, TLS 1.2, désactivation SMB 1).
- Durcir le poste (pare‑feu, comptes, services, RDP limité).
- Préparer l’AD (OU, GPO, filtres WMI, RODC éventuel).
- Réaliser la jointure (offline join ou classique), redémarrer.
- Contrôler (journaux, gpresult, tests applicatifs).
- Mettre en production avec plan de retour arrière et supervision renforcée.
Dépannage / cas fréquents
- Erreur « L’horloge est désynchronisée » : réaligner l’heure (
w32tm /resync
), vérifier NTP et fuseau. - Échec LDAP signé/CBT : activer TLS 1.2, vérifier certificats, confirmer que les DC n’imposent pas un mode que Windows 7 non patché ne supporte pas.
- GPO non appliquées : DNS incorrect, RPC dynamiques bloqués, OU/GPO non liées, filtre WMI.
- Impossible de parcourir des partages : SMB 1 désactivé côté serveur cible ; préférer SMB 2+, ou utiliser un serveur passerelle compatible.
- Perte d’accès applicatif après jointure : vérifier services lancés avec compte local devenu non autorisé ; ajuster droits locaux (groupe « Opérateurs de sauvegarde », « Utilisateurs avec pouvoir », etc.).
Bonnes pratiques de gouvernance
- Zone « Legacy » officielle : politique écrite, exemptions approuvées, revue trimestrielle des risques.
- Cycle de vie produit : feuille de route matérielle/logicielle conjointe avec l’éditeur/constructeur.
- Documentation : procédures installées, liste des correctifs appliqués, configuration des ACL/pare‑feu, matrice de flux.
- Surveillance : détection d’anomalies réseau (SMB, LDAP, Kerberos), alertes sur authentifications anormales.
Annexes : commandes utiles
rem Vérifier le contrôleur de domaine découvert
nltest /dsgetdc:CONTOSO.LOCAL
rem Vérifier la confiance sécurisée
nltest /sc_query:CONTOSO.LOCAL
rem Afficher/vider les tickets Kerberos
klist
klist purge
rem Forces GPO et rapport
gpupdate /force
gpresult /h C:\Temp\gp.html
rem Résolution DNS
ipconfig /all
nslookup _ldap._tcp.dc._msdcs.CONTOSO.LOCAL
rem Activer log Netlogon (diag)
nltest /dbflag:0x2080FFFF
rem Ports à l’écoute
netstat -ano | findstr LISTENING
Conclusion
Rattacher un Windows 7 non patché à un domaine AD moderne est possible, mais uniquement au prix d’une maîtrise stricte du périmètre : segmentation, mise à niveau minimale, contrôle des flux, GPO dédiées et validation exhaustive sur clone. En gardant l’option « workgroup isolé » ou la virtualisation en plan B, vous protégez la production tout en respectant les exigences sécurité de l’entreprise.
Rappel : certaines organisations interdisent tout OS hors support sur leur réseau. Votre démarche doit s’inscrire dans un processus d’exemption et un plan de migration vers une plateforme maintenue.