Méthodes de sécurité Application Control (Contrôle des applications)
Dans cette section :
- Implémentation des méthodes de sécurité Application Control (Contrôle des applications)
- Propriétaires de confiance
- Fournisseurs de confiance
- Signatures numériques
- Whitelists
- Listes noires
Implémentation des méthodes de sécurité Application Control (Contrôle des applications)
Application Control (Contrôle des applications) offre un certain nombre de méthodes de sécurité que vous pouvez implémenter pour protéger un système sans listes complexes ni gestion constante. Cela comprend les éléments suivants :
- Trusted Ownership (Propriétaire de confiance)
- Fournisseurs de confiance
- Signatures numériques
- Listes blanches (whitelist)
- Listes noires
Pour tirer le meilleur parti d'une configuration Application Control (Contrôle des applications), vous pouvez adopter une approche hybride : combinez les composants les mieux adaptés de chaque méthode de sécurité pour créer un modèle de sécurité optimale, tout en limitant la charge de travail globale de gestion et de configuration.
L'approche Trusted Ownership (Propriétaire de confiance) permet aux propriétaires de confiance d'installer de nouvelles applications sans qu'il soit nécessaire d'apporter des changements à la configuration Application Control (Contrôle des applications), mais en assurant quand même une protection totale contre les applications inconnues et contre le contenu de script introduit par des utilisateurs finaux autres que ceux de confiance. Ainsi, il est recommandé d'appliquer cette méthode de sécurité comme base pour la plupart des configurations Application Control (Contrôle des applications). C'est pourquoi cette fonction est activée par défaut dans toutes les nouvelles configurations Application Control (Contrôle des applications).
L'approche par liste blanche est la plus sûre, mais c'est un modèle de sécurité très exigeant pour les administrateurs. Si une entreprise n'utilise pas la sécurité NTFS pour ses systèmes de fichiers, la méthode par liste blanche est recommandée, parce que la fonction Trusted Ownership (Propriétaire de confiance) repose sur des informations sur les propriétaires des fichiers, uniquement disponibles dans NTFS.
La fonction Trusted Ownership convient uniquement au contenu exécutable installé en local, à savoir les applications présentes sur les lecteurs fixes locaux d'un ordinateur. Tout le contenu d'exécutable ou de script résidant dans des dossiers réseau ou sur des supports amovibles (CD ou DVD-ROM, par exemple) est automatiquement considéré comme n'étant pas De confiance et son exécution est interdite. Si un utilisateur doit exécuter une application de ce type, cette dernière doit être explicitement ajoutée à la liste blanche dans la configuration Application Control (Contrôle des applications), avec le chemin UNC complet de l'exécutable concerné. (Facultatif) Si nécessaire, il est possible de désactiver la vérification Trusted Ownership pour ces éléments. Vous pouvez également, si vous le souhaitez, choisir d'utiliser une signature SHA-1, SHA-256 ou Alder-32 pour vérifier le fichier lors de l'exécution. L'une des meilleures pratiques consiste à utiliser la vérification de signature numérique pour les applications basées sur le réseau ou sur des supports amovibles, parce que ces fichiers échappent souvent au contrôle de l'administrateur responsable des postes client de l'entreprise.
La vérification des fournisseurs de confiance est recommandée pour les environnements de développement et de test, où les utilisateurs finaux peuvent avoir besoin d'installer et de tester en permanence différentes versions des applications et du contenu de script dont l'entreprise est propriétaire. En signant les exécutables voulus à l'aide d'un certificat numérique, vous pouvez configurer la vérification des fournisseurs de confiance afin d'autoriser tous les composants signés à s'exécuter si et quand c'est nécessaire.
Enfin, vous devez créer une liste noire, qui interdit à des utilisateurs spécifiques d'accéder à des applications généralement installées par des propriétaires de confiance et qui leur appartiennent, notamment des éléments du système d'exploitation comme les outils d'édition du registre, les outils de partage de fichiers et l'accès aux composants Panneau de configuration. Cette liste noire peut également servir à la gestion des licences d'application, si vous la combinez aux listes blanches et à la fonction Limites d'application.
Trusted Ownership (Propriétaire de confiance)
La vidéo suivante contient une présentation des concepts utilisés dans Trusted Ownership :
Trusted Ownership - Pourquoi ? Quoi ? Comment ?
Application Control (Contrôle des applications) utilise des pilotes de filtre sécurisé et des stratégies de sécurité Microsoft NTFS pour intercepter toutes les demandes d'exécution. Les demandes d'exécution passent par le hook Application Control (Contrôle des applications) et toutes les applications indésirables sont bloquées. Les droits des applications reposent sur le propriétaire de l'application concernée. Par défaut le propriétaire de confiance est l'administrateur. Avec cette méthode, la stratégie d'accès aux applications actuelle est appliquée sans nécessiter de scripts ou de gestion de listes. Cette fonction s'appelle Trusted Ownership (Propriétaire de confiance).Outre les fichiers exécutables, Application Control (Contrôle des applications) gère les droits du contenu d'application, comme les scripts VBScript, les fichiers batch, les paquets MSI et les fichiers de configuration du registre.
Application Control (Contrôle des applications) prend en charge PowerShell uniquement à partir de la version 2.0 et vous devez l'installer sur le poste client.
Trusted Ownership (Propriétaire de confiance) est la méthode par défaut de contrôle de l'accès aux applications dans Application Control (Contrôle des applications). Il utilise le modèle DAC (Discretionary Access Control, Contrôle d'accès discrétionnaire). Il examine l'attribut de propriétaire (owner) du fichier et le compare à une liste prédéfinie de propriétaires de confiance. Si le propriétaire du fichier figure dans la liste, l'exécution du fichier est autorisée. Sinon, elle est refusée. La décision est prise que l'utilisateur cherche ou non à réellement exécuter le fichier.
L'un des aspects importants de cette méthode de sécurité est qu'il est possible de ne pas examiner le contenu proprement dit du fichier. De cette façon, Application Control (Contrôle des applications) contrôle à la fois les applications connues et les applications inconnues. Les systèmes de sécurité conventionnels comme les applications antivirus comparent les motifs des fichiers à ceux d'une liste connue pour identifier les menaces potentielles. Ainsi, la protection qu'ils assurent est directement proportionnelle à la précision de la liste utilisée pour la comparaison. De nombreuses applications de malware ne sont jamais identifiées ou, au mieux, ne sont identifiées qu'après un certain délai, pendant lequel les systèmes restent vulnérables. Par défaut, Application Control (Contrôle des applications) autorise TOUT le contenu exécutable installé en local à s'exécuter, À CONDITION que le propriétaire de l'exécutable figure dans la liste Propriétaires de confiance dans la configuration. L'administrateur doit ensuite fournir la liste des applications qui ne doivent pas s'exécuter sur le sous-système de disque local. Il s'agit en général d'applications d'administration comme mmc.exe, eventvwr.exe, setup.exe, etc.
Si cette approche est choisie, l'administrateur n'a pas besoin de connaître tous les détails de chaque élément de code d'exécution nécessaire au fonctionnement des applications, car le modèle Trusted Ownership autorise/refuse l'accès de manière appropriée.
Même si Application Control (Contrôle des applications) est capable de bloquer n'importe quel malware basé sur un script exécutable dès son introduction sur un système, Application Control (Contrôle des applications) n'est pas conçu pour remplacer les outils existants de suppression des malwares : il doit plutôt jouer le rôle d'une technologie complémentaire qui les accompagne. Par exemple, même si Application Control (Contrôle des applications) peut stopper l'exécution d'un virus, il ne peut pas l'éliminer du disque.
Application Control (Contrôle des applications) et Trusted Ownership (Propriétaire de confiance)
Application Control (Contrôle des applications) tient à jour la liste des propriétaires de confiance, définie dans la boîte de dialogue Propriétaires de confiance. Vous accédez à cette boîte de dialogue depuis le ruban Paramètres globaux.
Il est possible d'ajouter et de supprimer des utilisateurs et des groupes comme vous le souhaitez.
Ne supprimez jamais tous les propriétaires de confiance. Si vous le faites, aucune des applications du système n'est marquée De confiance et les utilisateurs standard ne peuvent rien exécuter.
Dans le système NTFS, un fichier peut appartenir aussi bien à un utilisateur qu'à un groupe. Vous pouvez donc ajouter les deux. Lorsque le système exécute la vérification Trusted Ownership (Propriétaire de confiance), il détermine le SID (System Identifier, ID système) du propriétaire du fichier et le compare à la liste des SID figurant dans la configuration Propriétaire de confiance. Application Control (Contrôle des applications) ne peut pas évaluer un groupe ni déterminer les utilisateurs d'un groupe. Cela garantit que le logiciel Application Control (Contrôle des applications) continue à fonctionner correctement lorsque les machines ne sont connectées à aucun réseau et que ces informations ne sont pas disponibles.
La boîte de dialogue Propriétaires de confiance offre deux options :
- Activer la vérification Trusted Ownership - Sélectionnez cette option pour activer la vérification Trusted Ownership (Propriétaire de confiance).Si vous ne sélectionnez pas cette option, Application Control (Contrôle des applications) n'effectue aucune vérification Trusted Ownership et vous devez configurer d'autres méthodes de sécurité pour assurer la protection voulue.
- Changer le propriétaire d'un fichier s'il est écrasé ou renommé - Sous certains systèmes d'exploitation, le comportement par défaut consiste à conserver le même propriétaire pour un fichier lorsqu'il est écrasé ou renommé. Cela peut être considéré comme une faille de sécurité car, si les permissions NTFS l'autorisent, un utilisateur peut écraser un fichier légitime à l'aide d'un fichier qui serait normalement bloqué. Sélectionnez cette option pour garantir que, si un fichier légitime est compromis de cette façon, l'utilisateur qui effectue l'opération en devient propriétaire et Trusted Ownership interdit l'exécution de ce fichier.
Règle Trusted Ownership (Propriétaire de confiance)
Trusted Ownership n'a pas besoin de tenir compte de l'utilisateur connecté. Peu importe que l'utilisateur connecté soit propriétaire de confiance, administrateur ou autre. Trusted Ownership se concentre sur l'utilisateur (ou le groupe) propriétaire d'un fichier sur le disque. Il s'agit en général de l'utilisateur qui a créé le fichier.
Il est courant de voir le groupe BUILTIN\Administrators de la console Application Control (Contrôle des applications) désigné comme propriétaire du fichier. Il est également possible que le propriétaire du fichier soit un compte d'administrateur spécifique. Cela provoque les situations suivantes :
- Le propriétaire du fichier est le groupe BUILTIN\Administrators et ce groupe est un propriétaire de confiance. Trusted Ownership autorise l'exécution du fichier.
- Le propriétaire du fichier est un administrateur spécifique et cet administrateur est un propriétaire de confiance. Trusted Ownership autorise l'exécution du fichier.
- Le propriétaire du fichier est un administrateur spécifique qui n'est pas un propriétaire de confiance mais le groupe BUILTIN\Administrators est un propriétaire de confiance. Trusted Ownership interdit l'exécution du fichier.
Dans ce dernier cas, bien que l'administrateur propriétaire du fichier soit membre du groupe BUILTIN\Administrators, il n'est pas considéré comme propriétaire de confiance. Le groupe n'est pas développé pour vérifier si le propriétaire concerné doit être considéré comme étant de confiance. Dans ce cas, pour autoriser le fichier à s'exécuter, il faut changer le propriétaire du fichier pour le remplacer par BUILTIN\Administrators.
Fournisseurs de confiance
Vous pouvez spécifier des fournisseurs de confiance dans chaque nœud de règle Application Control (Contrôle des applications). Les fournisseurs de confiance servent à répertorier les certificats numériques valides. Un certificat numérique est un document électronique qui utilise une signature numérique pour lier une clé publique à une identité. Cela inclut des informations telles que le nom de la personne ou de l'entreprise, son adresse, etc. Les certificats numériques sont émis par une autorité de certification (CA) et servent à vérifier qu'une clé publique appartient bien à une personne donnée. Application Control (Contrôle des applications) interroge chaque exécution de fichier pour détecter la présente d'un certificat numérique. Si le fichier comporte un certificat numérique valide et que son signataire correspond à une entrée dans la liste des fournisseurs de confiance, le fichier est autorisé à s'exécuter et les vérifications Trusted Ownership (Propriétaire de confiance) sont ignorées.
Vous pouvez vérifier si un fichier possède un certificat numérique en affichant la boîte de dialogue Propriétés. Un fichier comporte un certificat numérique si vous voyez apparaît l'onglet Signatures numériques, contenant les détails de ce certificat, notamment des informations sur le signataire, les paramètres avancés et une option permettant d'afficher le fichier certificate.rusted_Vendors.htm.
Pour en savoir plus, reportez-vous à « Ajout d'un certificat à un fournisseur de confiance ».
Signatures numériques
La fonction Signatures numériques permet d'identifier précisément un fichier en fonction du contenu réel du fichier proprement dit. Chaque fichier est examiné, puis, en fonction de son contenu, le système introduit un hachage numérique, qui s'apparente à une empreinte digitale. Application Control (Contrôle des applications) utilise des hachages aux normes de l'industrie : SHA-1, SHA256 et Adler-32. Si le fichier est modifié de quelque façon que ce soit, le hachage SHA-1 l'est également.
Il est possible de choisir d'autres algorithmes dans la liste déroulante Signatures de la boîte de dialogue Paramètres avancés.
L'application d'un hachage numérique est considérée comme la meilleure méthode de sécurité, car elle est très précise. Elle identifie chaque fichier séparément de tous les autres facteurs autres que le fichier lui-même. Par exemple, l'administrateur capture le hachage numérique de tous les fichiers exécutables d'un système d'ordinateur et l'enregistre. Un utilisateur tente ensuite d'exécuter une application. Le hachage numérique de cette application est calculé et comparé aux valeurs enregistrées. Si une correspondance est trouvée, l'application est autorisée à s'exécuter. Sinon, elle est bloquée. Cette méthode assure également la protection « zero-day », car elle empêche non seulement l'introduction de nouvelles applications, mais elle bloque aussi les applications infectées par un malware.
Bien que les signatures numériques assurent une protection semblable à celle que met en place Trusted Ownership (Propriétaire de confiance), vous devez également tenir compte du temps et des efforts de gestion nécessaires pour maintenir les systèmes de sécurité en place. Les applications sont sans cesse mises à jour à l'aide de Service Packs, de corrections de bug et de correctifs de vulnérabilité. Cela signifie que tous les fichiers associés sont constamment mis à jour. Par conséquent, si vous appliquez par exemple un Service Pack à Microsoft Office, il faut capturer de nouveaux hachages numériques des fichiers mis à jour pour que les portions mises à jour des logiciels fonctionnent. Veillez à vérifier que ces valeurs sont disponibles lorsqu'une mise à jour est publiée, pour éviter les périodes d'inactivité. De plus, il est recommandé de supprimer les anciennes signatures.
Assistant Signature
Application Control (Contrôle des applications) comporte l'assistant Signature, qui vous permet d'appliquer des signatures numériques à un fichier spécifique ou à un groupe. Il est possible de regrouper les signatures numériques de deux façons : en analysant les dossiers et sous-dossiers, ou en examinant un processus en cours d'exécution.
L'assistant Signature est disponible dans le ruban Groupes lorsque vous sélectionnez un groupe sous le nœud Bibliothèque > Gestion des groupes.
L'option Rechercher dans les dossiers de l'assistant Signature analyse tous les fichiers reposant sur des exécutables et des scripts dans le dossier sélectionné, puis calcule automatiquement les hachages numériques. L'option Examiner un processus en cours d'exécution vous permet de sélectionner un processus actuellement en cours d'exécution. Ce processus est analysé, ainsi que tous les fichiers exécutables actuellement chargés, et le système calcule les hachages numériques.
Si le système trouve un fichier pour lequelle la signature a déjà été calculée, il affiche une notification signalant un doublon. Vous n'avez pas besoin d'un hachage en double dans une configuration. Si les fichiers sont mis à jour, par exemple à l'aide d'un Service Pack, vous pouvez sélectionner le groupe de fichiers de signature et choisir de le réanalyser. Toutes les signatures numériques sont automatiquement mises à jour et la nouvelle configuration peut être déployée.
Whitelists
L'approche par liste blanche exige que chaque élément du contenu exécutable soit prédéfinie avant que l'utilisateur émette la demande concernant l'application dans le système d'exploitation. Les détails de tout le contenu identifié de cette manière sont stockés dans une liste blanche qui doit être consultée à chaque demande d'exécution. Si le fichier exécutable figure dans la liste blanche, l'exécution est autorisée. Sinon, elle est refusée.
Les technologies qui fonctionnent de cette façon sont peu nombreuses mais le niveau d'administration requis après leur implémentation est souvent problématique. En effet, il est nécessaire d'ajouter et de maintenir tous les correctifs, Service Packs et mises à niveau dans la liste blanche.
Application Control (Contrôle des applications) prend entièrement en charge ce modèle de contrôle et ajoute des étapes significatives pour renforcer la sécurité de ce modèle. L'une de ces fonctions supplémentaires est la capacité à inclure des signatures numériques SHA-1, SHA-256 et Adler-32, pour exiger non seulement que le nom de l'application et le chemin du fichier correspondent, mais aussi que la signature numérique de l'exécutable concerné figure dans la base de données. De plus, Application Control (Contrôle des applications) ajoute aussi le chemin complet de l'exécutable à la liste afin de s'assurer que ces trois éléments correspondent, avant l'exécution de l'application :
Nom de fichier - Par exemple, winword.exe.
Chemin de fichier - Par exemple, C:\Program Files\Microsoft Office\Office\digital signature.
Pour ajouter un niveau de contrôle à la technologie, Application Control (Contrôle des applications) ne se contente pas de collecter les détails des exécutables : il demande également à l'administrateur de spécifier des DLL spécifiques, ainsi que tout le reste du contenu exécutable, notamment les contrôles ActiveX, les scripts Visual Basic et les scripts de commande.
Dans Application Control (Contrôle des applications), les listes blanches font partie des éléments autorisés. Les entrées de la liste Éléments autorisés sont :
- Fichiers
- Dossiers
- Lecteurs
- Éléments de signature
- Éléments de connexion réseau
- Applis Windows Store
- Groupes
- Trusted Ownership (Propriétaire de confiance)
- Heures d'accès
Pour en savoir plus, reportez-vous à « Éléments autorisés » et à « Éléments de règle ».
Listes noires
Contrairement aux listes blanches, les listes noires constituent une mesure de sécurité relativement peu efficace. Une liste est générée et tenue à jour pour inclure toutes les applications dont l'exécution doit être refusée. C'est le principal point faible de cette méthode : elle suppose que l'on connaît vraiment toutes les applications dangereuses. Cela s'avère très peu utile dans la plupart des entreprises, surtout en cas d'accès par e-mail et par Internet, et/ou si l'utilisateur peut introduire des fichiers et des applications sans intervention de l'administrateur.
Application Control (Contrôle des applications) n'a pas besoin de tenir activement à jour la liste des applications refusées, car toutes les applications non installées (c'est-à-dire dont l'administrateur n'est pas propriétaire) sont bloquées grâce à Trusted Ownership (Propriétaire de confiance).
L'un des principales raisons justifiant de bloquer des applications via une liste noire est de permettre l'utilisation de Trusted Ownership pour la gestion des licences, en interdisant même l'exécution des applications connues (et donc, de confiance et avec propriétaire), jusqu'à ce qu'un administrateur autorise ultérieurement l'accès à l'application en question en définissant un utilisateur/groupe spécifique ou une règle de client. Cette protection ne nécessite aucune configuration, sauf pour autoriser une application extérieure. En outre, la liste de noire est utile pour refuser l'accès aux fichiers appartenant à des propriétaires de confiance mais susceptibles de représenter un risque pour la sécurité. Par exemple, regedit.exe, ftp.exe, etc.