Architecture du produit

Dans cette section :

Diagramme d'architecture

Agent logiciel

Application Control (Contrôle des applications) est installé et exécuté sur les postes client à l'aide d'un agent léger.L'agent est installé directement sur l'ordinateur local.Les agents comme les configurations sont conçus sous forme de paquets Windows Installer (MSI). Vous pouvez donc les distribuer à l'aide de n'importe quel système de déploiement tiers prenant en charge le format MSI.Les programmes d'installation sont fournis dans les paquets Microsoft Installer 32 et 64 bits distincts.

Pour que le logiciel Application Control (Contrôle des applications) fonctionne, l'agent doit être installé sur le poste client, avec la configuration associée.L'installation peut être réalisée manuellement ou à l'aide d'un système de déploiement comme Management Center.Comme les agents et les configurations sont installés et stockés en local sur le poste client, ils continuent à fonctionner si le poste client est déconnecté ou hors ligne.

L'agent Application Control (Contrôle des applications) installe un service Windows (service Application Control (Contrôle des applications)), un pilote de filtrage du système de fichiers, un pilote de noyau (kernel), un hook et des extensions de navigateur.Le hook est injecté dans tous les processus par le pilote de noyau, et intercepte les créations de demandes de processus, les appels Winsock, ainsi que certains appels liés à la gestion des privilèges.Pour en savoir plus, reportez-vous à la section « Hook d'application  ».

Le pilote de filtrage du système de fichiers intercepte les demandes d'exécution, d'écrasement et de changement de nom de tous les processus non système.Le pilote démarre et s'arrête dynamiquement lorsque l'agent démarre/s'arrête.Pour en savoir plus, reportez-vous à la section « Pilote de filtrage du système de fichiers ».

Si une demande est interceptée et gérée avec succès par le hook, cette demande est ignorée par le pilote.Si le hook est absent (par exemple,en raison d'une exclusion), le pilote intercepte la demande et elle est traitée par le moteur de règles.

Service d'agent

Le service d'agent Application Control (Contrôle des applications) s'exécute en tant que service système (SYSTEM) sur chacun des ordinateurs contrôlés à l'aide du composant Application Control (Contrôle des applications).L'agent offre l'intelligence nécessaire pour traiter la demande qui lui est transmise par le pilote de filtrage du système de fichiers, le hook et les extensions de navigateur.Chaque demande est validée par rapport aux paramètres de configuration, puis envoyée via le moteur de règles.Outre les détails de la demande d'application, le service vérifie le nom de l'utilisateur, le nom d'hôte et d'autres métadonnées pour traiter la demande, et garantir que les règles utilisateur, de groupe, de client et personnalisées fonctionnent comme prévu.

La configuration est stockée dans un fichier de configuration local pour des raisons de performances et de contrôle.Cela signifie que toutes les demandes peuvent être transmises en un temps record et (ce qui est encore plus important) sans nécessiter aucune liaison réseau à un serveur central. Cela garantit que les machines non connectées, comme les ordinateurs portables, restent sécurisées même si elles ne sont pas physiquement connectées au réseau local (LAN).

Agent Assist

Agent Assist assure la prise en charge de l'agent.Des instances d'Agent Assist sont démarrées à la demande par l'agent et exécutées avec le compte système (SYSTEM).Chaque instance Agent Assist est propre à une session utilisateur.Si Agent Assist démarre, une seule instance s'exécute dans chaque session.Après démarrage, Agent Assist continue généralement à s'exécuter jusqu'à ce que la session se déconnecte ou que l'agent s'arrête.

DLL Injection Assist

DLL Injection Assist est un composant 32 bits installé uniquement sur les systèmes 64 bits.Il est utilisé uniquement par Agent Assist, pour installer le hook d'application 32 bits dans les applications 32 bits exécutées dans la même session utilisateur.

Pilote de filtrage du système de fichiers

Le pilote de filtrage intercepte principalement les ouvertures de fichier avec des droits Exécuter.Les exécutables et les DLL doivent être ouverts avec des droits Exécuter si vous prévoyez de les exécuter. Leur interception par le pilote est donc garantie.D'autres fichiers peuvent également être ouverts avec des droits Exécuter, même ceux qui ne peuvent pas être réellement exécutés, commeles fichiers journaux et les fichiers ini. C'est pourquoi, parfois, il est possible de voir des événements signalant que des fichiers non exécutables ont été refusés.Ces demandes interceptées sont envoyées à l'agent et traitées par le moteur de règles.Résultat : la demande est soit autorisée, soit refusée.Si le résultat est une autorisation, il n'y a aucun changement et la demande passe par le système de fichiers comme précédemment.Si la demande est refusée, la demande d'origine est remplacée par AMMesage.exe, afin que l'application qui émet l'appel ne signale pas d'erreur et que l'utilisateur voie à l'écran un message qui explique ce qui se passe.Si la demande concerne une DLL, le chargement de cette dernière est interdit et, selon le type de la DLL, l'OS ou l'application affiche un message pour l'utilisateur.

Le pilote de filtrage détecte également les demandes d'écrasement et de changement de nom des fichiers.Ces demandes sont aussi envoyées à l'agent pour traitement des règles.La demande peut résulter soit en l'absence totale de changement, soit en un remplacement du propriétaire du fichier par celui de l'utilisateur.Cela signifie que, à l'exécution suivante de ce fichier, le système va le refuser parce que ce propriétaire, en général, n'est pas marqué De confiance.Enfin, le pilote de filtrage est chargé d'intercepter et (potentiellement) de bloquer l'accès aux chemins UNC.L'opération est réalisée dans le cadre de la fonction Application Network Access Control (Contrôle de l'accès réseau aux applications), plus précisément du contrôle de nom d'hôte.

Toutes les actions ci-dessus sont auditées en fonction de la configuration.

Hook d'application

Il s'agit d'une DLL, qui est injectée dans tous les processus utilisateur par le pilote de noyau (kernel) AsModLdr.Le hook d'application envoie des demandes de création de processus et des demandes réseau Winsock à l'agent, pour autorisation.En cas de blocage d'une demande réseau, l'accès à la ressource réseau est refusé et un message configurable s'affiche.

Si la gestion des privilèges est requise, la demande de création de processus est envoyée à l'agent pour traitement des règles.Si la gestion des privilèges est requise, l'agent démarre le processus pertinent avec des droits élevés et désigne un nouveau parent pour l'application.Le contrôle revient ensuite au hook dans l'application qui a émis l'appel.

Concernant Application Network Access Control (ANAC), le trafic de demandes réseau est élevé. Par conséquent, les résultats fournis par l'agent sont mis en cache dans la mémoire de l'application.Cela est indispensable pour éviter une dégradation dramatique des performances du trafic réseau.

Module complémentaire de navigateur

CascadeBHO.dll est un objet d'aide de navigateur (Browser Helper Object - BHO) Application Control (Contrôle des applications), chargé par Internet Explorer et utilisé comme partie intégrante des fonctions Redirection d'URL et Sites Web élevés.Si une configuration contient l'un de ces types de règle, l'objet d'aide (BHO) CascadeBHO est activé (et donc, chargé) par Internet Explorer.S'il n'existe aucune règle Redirection d'URL ou Sites Web élevés, l'objet BHO est désactivé.

L'objet BHO est chargé uniquement par Internet Explorer.Chrome et les nouveaux navigateurs Microsoft Edge (Chromium) chargent une extension distincte, Ivanti Cascade, qui offre les mêmes fonctions.

Vérification de l'état de CascadeBHO.dll

  1. Dans Internet Explorer, sélectionnez Outils > Gérer les modules complémentaires.

    La boîte de dialogue Gérer les modules complémentaires s'affiche.

  2. Dans le volet Types de module complémentaire, vérifiez que l'option Barres d'outils et extensions est sélectionnée.

    Vous pouvez afficher l'état des modules complémentaires dans le volet de droite.

Configuration

Les fichiers de configuration AppSense Application Control (Contrôle des applications) (fichiers AAMP) contiennent les paramètres de règle servant à sécuriser votre système.L'agent vérifie les règles de configuration pour déterminer l'action à réaliser lors de l'interception de demandes d'exécution de fichier.

Les configurations sont stockées en local dans le profil Tous les utilisateurs et sont protégées par la sécurité NTFS.En mode Autonome, les changements de configuration sont écrits directement dans le système de fichiers depuis la console Application Control (Contrôle des applications).En mode Entreprise, les configurations sont stockées dans la base de données Management Center, puis distribuées au format MSI à l'aide de la console Management Center.

Vous pouvez également exporter et importer des configurations vers et depuis un fichier MSI à l'aide de la console Application Control (Contrôle des applications).Cela s'avère utile pour créer des modèles ou distribuer des configurations avec des systèmes de déploiement tiers.

Après avoir créé ou modifié une configuration, vous devez l'enregistrer (et la déployer, si nécessaire) pour garantir son implémentation.