Autoriser l’inscription d’objets COM dans une stratégie de contrôle d’application Windows Defender

S'applique à:

  • Windows10
  • WindowsServer2003 2016
  • WindowsServer2003 2019

Important

Certaines informations concernent la version préliminaire de produits susceptibles d’être considérablement modifiés d’ici leur commercialisation. Microsoft ne donne aucune garantie, expresse ou implicite, concernant les informations fournies ici.

Le modèle COM Microsoft (Component Object Model) est un système orienté objet qui est indépendant de la plateforme, qui permet de créer des composants logiciels binaires pouvant interagir. COM spécifie un modèle objet et des exigences de programmation qui permettent aux objets COM d’interagir avec d’autres objets.

Configurabilité d’objets COM dans la stratégie WDAC

Avant la mise à jour Windows 10 1903, le contrôle d’application Windows Defender (WDAC) applique une liste verte intégrée pour l’inscription d’objets COM. Même si ce mécanisme fonctionne pour la plupart des scénarios courants d’utilisation des applications, les clients ont fourni des commentaires dans certains cas où des objets COM supplémentaires doivent être autorisés. La mise à jour 1903 vers Windows 10 introduit la possibilité de spécifier des objets COM autorisés par le biais de leur GUID dans la stratégie WDAC.

Remarque: pour ajouter cette fonctionnalité à d’autres versions de Windows 10, vous pouvez installer les mises à jour suivantes ou ultérieures:

Obtenir le GUID d’objet COM

Procurez-vous l’application GUID pour l’une des manières suivantes:

  • Recherche d’un événement de blocage dans l’observateur d’événements (journaux d’application et de service > Microsoft > Windows > AppLocker > MSI et script) et extraction du GUID
  • Création d’une stratégie d’audit (à l’aide de New-CIPolicy-audit), éventuellement avec un fournisseur spécifique et utilisation d’informations de blocage des événements pour obtenir le GUID

Paramètre de stratégie d’auteur permettant d’autoriser ou de refuser le GUID d’objet COM

Trois éléments:

  • Fournisseur: plateforme sur laquelle le code est en cours d’exécution (les valeurs sont PowerShell, WSH, Internet Explorer, VBA, MSI ou un caractère générique «AllHostIds»)
  • Clé: GUID pour le programme avec lequel vous souhaitez exécuter la mise en forme de la{33333333-4444-4444-1616-161616161616}clé = ""
  • ValueName: doit être définie sur «EnterpriseDefinedClsId»

Un attribut:

  • Value: doit être «true» pour Allow et «false» pour Deny
    • Notez que Deny ne fonctionne que dans les stratégies de base, pas de complément
  • Le paramètre doit être placé dans l’ordre des valeurs ASCII (d’abord par le fournisseur, puis clé, puis ValueName)

Exemples

Exemple 1: permettre l’inscription de tous les GUID d’objets COM dans n’importe quel fournisseur

<Setting Provider="AllHostIds" Key="AllKeys" ValueName="EnterpriseDefinedClsId">
  <Value>
    <Boolean>true</Boolean>
  </Value>
</Setting>

Exemple 2: bloquer l’enregistrement d’un objet COM spécifique via Internet Explorer (IE)

<Setting Provider="IE" Key="{00000000-4444-4444-1616-161616161616}" ValueName="EnterpriseDefinedClsId">
  <Value>
    <Boolean>false</Boolean>
  </Value>
</Setting>

Exemple 3: permettre l’inscription d’un objet COM spécifique dans PowerShell

<Setting Provider="PowerShell" Key="{33333333-4444-4444-1616-161616161616}" ValueName="EnterpriseDefinedClsId">
  <Value>
    <Boolean>true</Boolean>
  </Value>
</Setting>