Utiliser la signature de code pour renforcer le contrôle et la protection avec Windows Defender contrôle d’application

Remarque

Certaines fonctionnalités de Windows Defender Contrôle d’application ne sont disponibles que sur des versions spécifiques de Windows. Pour plus d’informations, consultez Windows Defender disponibilité des fonctionnalités de contrôle d’application.

Qu’est-ce que la signature de code et pourquoi est-elle importante ?

La signature de code offre des avantages importants pour les fonctionnalités de sécurité des applications telles que Windows Defender Contrôle d’application (WDAC). Tout d’abord, il permet au système de vérifier par chiffrement qu’un fichier n’a pas été falsifié depuis qu’il a été signé et avant qu’un code ne soit autorisé à s’exécuter. Deuxièmement, il associe le fichier à une identité réelle, telle qu’une entreprise ou un développeur individuel. Cette identité peut faciliter vos décisions d’approbation de stratégie et permettre des conséquences réelles lorsque la signature de code est utilisée de manière malveillante ou abusive. Bien que Windows n’exige pas que les développeurs de logiciels signent numériquement leur code, la plupart des principaux éditeurs de logiciels indépendants (ISV) utilisent la signature de code pour une grande partie de leur code. Et les métadonnées qu’un développeur inclut dans l’en-tête de ressource d’un fichier (. RSRC), comme OriginalFileName ou ProductName, peut être combiné avec le certificat de signature du fichier pour limiter l’étendue des décisions d’approbation. Par exemple, au lieu d’autoriser tous les fichiers signés par Microsoft, vous pouvez choisir d’autoriser uniquement les fichiers signés par Microsoft où ProductName est « Microsoft Teams ». Utilisez ensuite d’autres règles pour autoriser tous les autres fichiers qui doivent s’exécuter.

Dans la mesure du possible, vous devez exiger que tous les fichiers binaires et scripts d’application soient signés dans le cadre de vos critères d’acceptation d’application. De plus, vous devez vous assurer que les développeurs d’applications métier internes ont accès aux certificats de signature de code contrôlés par votre organization.

Signature de catalogue

Les fichiers binaires et les scripts d’application sont généralement signés par incorporation ou par catalogue. Les signatures incorporées font partie du fichier lui-même et sont transférées avec le fichier où qu’il soit copié ou déplacé. En revanche, les signatures de catalogue sont détachées du ou des fichiers individuels. Au lieu de cela, un « fichier catalogue » distinct est créé qui contient des valeurs de hachage pour un ou plusieurs fichiers à signer. Ce fichier catalogue est ensuite signé numériquement et appliqué à n’importe quel ordinateur sur lequel vous souhaitez que la signature existe. Tout fichier dont la valeur de hachage est incluse dans le catalogue signé hérite de la signature du fichier catalogue. Un fichier peut avoir plusieurs signatures, y compris une combinaison de signatures incorporées et de catalogue.

Vous pouvez utiliser des fichiers catalogue pour ajouter facilement une signature à une application existante sans avoir besoin d’accéder aux fichiers sources d’origine et sans reconditionnement coûteux. Vous pouvez même utiliser des fichiers catalogue pour ajouter votre propre signature à une application ISV lorsque vous ne souhaitez pas faire confiance à tout ce que l’éditeur de logiciels indépendants signe directement, lui-même. Ensuite, vous déployez simplement le catalogue signé avec l’application sur tous vos points de terminaison managés.

Remarque

Étant donné que les catalogues identifient les fichiers qu’ils signent par hachage, toute modification apportée au fichier peut invalider sa signature. Vous devez déployer des signatures de catalogue mises à jour chaque fois que l’application est mise à jour. L’intégration de la signature de code à vos processus de développement d’applications ou de déploiement d’applications est généralement la meilleure approche. Tenez compte des applications qui se mettent à jour automatiquement, car leurs fichiers binaires d’application peuvent changer à votre insu.

Pour savoir comment créer et gérer des fichiers catalogue pour des applications existantes, consultez Déployer des fichiers catalogue pour prendre en charge Windows Defender Contrôle d’application.

Stratégies WDAC signées

Alors qu’une stratégie WDAC commence sous la forme d’un document XML, elle est ensuite convertie en fichier codé binaire avant le déploiement. Cette version binaire de votre stratégie peut être signée par du code comme n’importe quel autre fichier binaire d’application, ce qui offre la plupart des mêmes avantages que ceux décrits ci-dessus pour le code signé. En outre, les stratégies signées sont traitées spécialement par WDAC et aident à se protéger contre la falsification ou la suppression d’une stratégie, même par un utilisateur administrateur.

Pour plus d’informations sur l’utilisation de stratégies signées, consultez Utiliser des stratégies signées pour protéger Windows Defender Contrôle d’application contre la falsification.

Obtenir des certificats de signature de code pour votre propre utilisation

Voici quelques façons d’obtenir des certificats de signature de code pour votre propre utilisation :