Architecture et composants AppLocker
Cette rubrique destinée aux professionnels de l’informatique décrit l’architecture de base d’AppLocker et ses principaux composants.
AppLocker s’appuie sur le service d’identité de l’application pour fournir des attributs relatifs à un fichier et pour évaluer la stratégie AppLocker concernant ce fichier. Les stratégies AppLocker sont des entrées de contrôle d’accès (ACE) conditionnel et sont évaluées à l’aide des fonctions SeAccessCheckWithSecurityAttributes ou AuthzAccessCheck de contrôle d’accès basé sur des attributs.
AppLocker offre trois méthodes pour vérifier et confirmer qu’un fichier est autorisé à s’exécuter selon une stratégie AppLocker.
Création d’un processus
Lors de la création d’un processus, tel que l’exécution d’un fichier exécutable ou d’une application Windows universelle, AppLocker appelle le composant d’identité de l’application pour calculer les attributs du fichier exécutable principal utilisé pour créer un processus. AppLocker met ensuite à jour le jeton du nouveau processus avec ces attributs et vérifie la stratégie AppLocker pour vérifier que le fichier exécutable est autorisé à s’exécuter.
Chargement d’une DLL
Lors du chargement d’une nouvelle bibliothèque de liens dynamiques (DLL), une notification est envoyée à AppLocker pour vérifier que le chargement de cette DLL est autorisé. AppLocker appelle le composant d’identité de l’application pour calculer les attributs du fichier. Il duplique le jeton de processus existant et remplace ces attributs d’identité de l’application dans le jeton dupliqué par les attributs de la DLL chargée. AppLocker évalue ensuite la stratégie de cette DLL, et le jeton dupliqué est ignoré. Selon le résultat de cette vérification, le système continue à charger la DLL ou arrête le processus.
Exécution d’un script
Avant l’exécution d’un fichier de script, l’hôte de script (par exemple, PowerShell dans le cas des fichiers .ps1) appelle AppLocker pour vérifier le script. AppLocker appelle le composant d’identité de l’application en mode utilisateur avec le nom ou le descripteur de fichier pour calculer les propriétés du fichier. AppLocker évalue ensuite le fichier de script par rapport à la stratégie AppLocker pour vérifier que son exécution est autorisée. Dans chaque cas, les actions exécutées par AppLocker sont consignées dans le journal des événements.