Anavem
Languageen
administrative templatesConfiguration ordinateur Activé

Allow Remote Shell Access (WinRM)

Controls whether à distance PowerShell shells are permitted. Disable if à distance management is handled through other means.

10 mai 20264 min
Chemin de la stratégie
Computer Configuration > Administrative Templates > Windows Components > Windows Remote Shell
Supporté sur
Windows 10, Windows 11, Windows Server 2016 and later

Controls whether à distance PowerShell shells are permitted. Disable if à distance management is handled through other means. Les référentiels de sécurité recommandent de le définir sur Disabled (if WinRM not used).

Description

Allow Remote Shell Access (WinRM) est un paramètre de stratégie de groupe Windows situé sous Computer Configuration > Administrative Templates > Windows Components > Windows Remote Shell. Il s'applique à la branche Configuration ordinateur et est classé comme une stratégie de niveau Avertissement dans la catégorie Remote Assistance.

Controls whether à distance PowerShell shells are permitted. Disable if à distance management is handled through other means.

La valeur par défaut Microsoft est Enabled tandis que les référentiels de sécurité (CIS, NIST, DISA STIG) recommandent Disabled (if WinRM not used).

Techniquement, cette stratégie est appliquée via le registre Windows dans HKLM\Software\Policies\Microsoft\Windows\WinRM\Service via la valeur AllowRemoteShellAccess. Modifier directement la valeur avec regedit.exe ou PowerShell produit le même résultat que la configuration GPO, mais passer par les stratégies de groupe est préférable pour bénéficier d'une gestion centralisée et d'une persistance lors des redémarrages, reconstructions d'images et cycles de rafraîchissement.

Explication détaillée

Ce paramètre a un impact réel sur la posture de sécurité ou la stabilité opérationnelle du système. La valeur par défaut Microsoft reste acceptable pour des postes isolés ou à faible risque, mais la plupart des référentiels (CIS, NIST, DISA STIG) demandent explicitement de le durcir avant toute exposition à des utilisateurs ou des réseaux non maîtrisés.

Cette stratégie est regroupée dans la catégorie Remote Assistance, ce qui signifie qu'elle est généralement appliquée via une GPO de domaine liée au niveau d'une OU. Dans un contexte MSP multi-tenant, ciblez-la via des filtres WMI ou des groupes de sécurité plutôt qu'en l'attachant à la racine du domaine, pour pouvoir déployer progressivement (OU pilote → anneaux plus larges → production complète).

Le paramètre prend effet après le prochain rafraîchissement des stratégies de groupe (gpupdate /force pour un test immédiat, ou par défaut sous 90 minutes environ sur un poste et ~5 minutes sur un contrôleur de domaine). Pour une stratégie ordinateur, un redémarrage peut être nécessaire ; pour une stratégie utilisateur, une déconnexion/reconnexion suffit.

Cas d'usage

  • Durcir à l'échelle de l'organisation la catégorie remote assistance sur tous les postes Windows joints au domaine.
  • Déployer un baseline aligné CIS Benchmark visant 'Allow Remote Shell Access (WinRM)' via une GPO dédiée.
  • Réduire la surface d'attaque des comptes manipulant des identifiants privilégiés ou des données sensibles.
  • Standardiser la configuration sur plusieurs tenants clients dans un parc géré en MSP.

Implications sécurité

Laisser cette stratégie en valeur par défaut n'ouvre pas directement l'accès à un attaquant, mais elle élargit le rayon d'impact une fois l'accès initial obtenu – les mots de passe sont plus faciles à deviner, le verrouillage ne se déclenche pas, les pistes d'audit sont incomplètes ou le mouvement latéral est plus discret. La plupart des régulateurs et assureurs cyber attendent désormais que ce contrôle soit en place au moins au niveau recommandé.

Comment configurer

  1. Ouvrez la Console de gestion des stratégies de groupe (gpmc.msc) sur un contrôleur de domaine ou un poste disposant des outils RSAT.
  2. Créez ou éditez une GPO liée à l'OU contenant les configuration ordinateurs cibles. Nous recommandons une GPO de baseline dédiée (ex. SEC – Remote Assistance) plutôt que de modifier la Default Domain Policy.
  3. Naviguez vers Computer Configuration > Administrative Templates > Windows Components > Windows Remote Shell.
  4. Ouvrez Allow Remote Shell Access (WinRM) et définissez-le sur Disabled (if WinRM not used).
  5. Cliquez sur OK et fermez l'éditeur.
  6. Sur le poste cible, exécutez gpupdate /force (ou attendez le prochain cycle), puis vérifiez avec rsop.msc ou gpresult /h rapport.html.

Chemin direct registre : HKLM\Software\Policies\Microsoft\Windows\WinRM\Service\AllowRemoteShellAccess. Vous pouvez appliquer le même changement en PowerShell :

New-Item -Path 'HKLM\Software\Policies\Microsoft\Windows\WinRM\Service' -Force | Out-Null
Set-ItemProperty -Path 'HKLM\Software\Policies\Microsoft\Windows\WinRM\Service' -Name 'AllowRemoteShellAccess' -Value <valeur> -Type DWord

Correspondance registre

Chemin de registreHKLM\Software\Policies\Microsoft\Windows\WinRM\Service
Nom de la valeurAllowRemoteShellAccess
Type de valeurREG_DWORD
Valeur ActivéDisabled (if WinRM not used)

Questions fréquentes

Que fait la stratégie de groupe Allow Remote Shell Access (WinRM) ?
Controls whether à distance PowerShell shells are permitted. Disable if à distance management is handled through other means.
Où trouver ce paramètre dans l'éditeur de GPO ?
Ouvrez <code>gpmc.msc</code>, naviguez vers <code>Computer Configuration > Administrative Templates > Windows Components > Windows Remote Shell</code> et cherchez <strong>Allow Remote Shell Access (WinRM)</strong>.
Quelle est la valeur par défaut Microsoft ?
<code>Enabled</code> sur une installation Windows neuve. Les machines jointes au domaine peuvent hériter d'une autre valeur si une GPO de baseline est déjà en place.
Quelle valeur les référentiels de sécurité recommandent-ils ?
<code>Disabled (if WinRM not used)</code> – aligné avec les guides CIS, NIST et DISA STIG pour les versions Windows actuelles.
Puis-je configurer ce paramètre sans GPO ?
Oui, en écrivant directement dans <code>HKLM\Software\Policies\Microsoft\Windows\WinRM\Service\AllowRemoteShellAccess</code> via <code>regedit</code>, PowerShell ou Intune. Une GPO reste préférable en environnement géré centralement car elle survit aux réinstallations et facilite l'audit.