Produktarchitektur

In diesem Abschnitt werden folgende Themen behandelt:

Architekturdiagramm

Software Agent

Application Control wird mithilfe eines einfachen Agents auf den Endpunkten installiert und ausgeführt. Der Agent wird direkt auf dem lokalen Computer installiert. Sowohl Agents als auch Konfigurationen sind als Windows Installer-Pakete (MSI) aufgesetzt und können daher mit einem beliebigen externen Bereitstellungssystem mit MSI-Unterstützung verteilt werden. Die Installationsprogramme werden als separate Microsoft Installer-Pakete (32-Bit und 64-Bit) bereitgestellt.

Damit Application Control ordnungsgemäß funktioniert, muss der Agent zusammen mit einer zugehörigen Konfiguration auf dem Clientendpunkt installiert sein. Die Installation kann entweder manuell oder mithilfe eines Bereitstellungssystems wie Management Center durchgeführt werden. Da Agents und Konfigurationen lokal auf dem Endpunkt installiert und gespeichert sind, sind sie auch dann in Betrieb, wenn der Endpunkt getrennt oder offline ist.

Der Application Control Agent installiert einen Windows-Dienst (Application Control-Dienst), einen Dateisystem-Filtertreiber, einen Kerneltreiber, einen Hook und Browsererweiterungen. Der Hook wird vom Kerneltreiber in alle Prozesse injiziert und fängt Prozesserstellungsanforderungen, Winsock-Aufrufe sowie bestimmte Aufrufe in Bezug auf die Berechtigungsverwaltung ab. Weitere Informationen finden Sie im Abschnitt Anwendungshook.

Der Dateisystem-Filtertreiber fängt Anforderungen zum Ausführen, Überschreiben und Umbenennen seitens aller Nicht-Systemprozesse ab. Der Treiber wird dynamisch zusammen mit dem Agent gestartet und gestoppt. Weitere Informationen finden Sie im Abschnitt Dateisystem-Filtertreiber.

Wenn eine Anforderung vom Hook abgefangen und erfolgreich verarbeitet wird, wird die betreffende Anforderung vom Treiber ignoriert. Falls der Hook nicht vorhanden ist (z. B. aufgrund eines Ausschlusses), fängt der Treiber die Anforderung ab und leitet sie durch das Regelmodul.

Agent Service

Der Application Control Agent Service wird als SYSTEM-Dienst auf jedem Computer ausgeführt, der mithilfe der Application Control-Komponente gesteuert wird. Der Agent verarbeitet die Anforderungen, die vom Dateisystem-Filtertreiber, vom Hook und von den Browsererweiterungen an ihn weitergeleitet werden. Jede Anforderung wird mit den Konfigurationseinstellungen abgeglichen und durch das Regelmodul geleitet. Abgesehen von den Details der Anwendungsanforderung prüft der Dienst Benutzername, Hostname und andere Metadaten, um die Anforderung zu verarbeiten und sicherzustellen, dass Benutzer-, Gruppen-, Client- und benutzerdefinierte Regeln planmäßig funktionieren.

Die Konfiguration wird zu Leistungs- und Kontrollzwecken in einer lokalen Konfigurationsdatei gespeichert. Dadurch können alle Anforderungen in kürzester Zeit verarbeitet werden und vor allem, ohne dass hierfür eine Netzwerkverbindung zu einem zentralen Server erforderlich ist. Dies hat den Vorteil, dass nicht verbundene Geräte, z. B. Laptops, auch dann sicher sind, wenn sie nicht physisch mit dem LAN verbunden sind.

Agent Assist

Agent Assist unterstützt den Agent. Instanzen von Agent Assist werden bedarfsorientiert vom Agent gestartet und über das SYSTEM-Konto ausgeführt. Jeder Agent Assist gehört zu einer bestimmten Benutzersitzung. Nachdem Agent Assist initiiert wurde, kann in der betreffenden Sitzung keine weitere Instanz ausgeführt werden. Nach dem Starten wird Agent Assist in der Regel solange ausgeführt, bis die Sitzung abgemeldet oder der Agent gestoppt wird.

DLL Injection Assist

DLL Injection Assist ist eine 32-Bit-Komponente, die nur auf 64-Bit-Systemen installiert wird. Sie wird ausschließlich von Agent Assist verwendet, um den 32-Bit-Anwendungshook auf 32-Bit-Anwendungen zu installieren, die in derselben Benutzersitzung ausgeführt werden.

Dateisystem-Filtertreiber

Der Filtertreiber fängt primär Anforderungen zum Öffnen von Dateien mit Ausführungsrechten ab. Ausführbare Dateien und DLLs müssen mit Ausführungsrechten geöffnet werden, wenn sie ausgeführt werden sollen. Der Treiber fängt diese jedoch zuverlässig ab. Andere Dateien können ebenfalls mit Ausführungsrechten geöffnet werden, auch solche, die eigentlich nicht ausführbar sind, z. B.Protokolldateien und .ini-Dateien. Aus diesem Grund werden manchmal Ereignisse für verweigerte, nicht ausführbare Dateien angezeigt. Die abgefangenen Anforderungen werden an den Agent gesendet und durch das Regelmodul geleitet. Das Ergebnis ist entweder, dass die Anforderung zugelassen oder verweigert wird. Falls sie für zulässig befunden wird, ändert sich nichts. Die Anforderung wird wie zuvor an das Dateisystem weitergeleitet. Wird die Anforderung abgelehnt, wird die ursprüngliche Anforderung an AMMesage.exe weitergeleitet. Die aufrufende Anwendung meldet dadurch keinen Fehler und dem Benutzer wird eine Meldung angezeigt, die über den Vorgang informiert. Falls sich die Anforderung auf eine DLL bezogen hat, kann diese nicht geladen werden. Je nach DLL-Typ zeigt entweder das Betriebssystem oder die Anwendung eine entsprechende Meldung für den Benutzer an.

Der Filtertreiber erkennt auch Anforderungen zum Überschreiben und Umbenennen von Dateien. Diese Anforderungen werden auch zur Regelverarbeitung an den Agent gesendet. Die Anforderung kann entweder gar keine Konsequenz haben oder der Besitzer der betroffenen Datei wird auf den Benutzer abgeändert. Dies bewirkt, dass die Datei beim nächsten Ausführen verweigert wird, weil der Besitzer in der Regel kein vertrauenswürdiger Benutzer ist. Der Filtertreiber ist außerdem für das Abfangen und potenzielle Blockieren des Zugriffs auf UNC-Pfade zuständig. Dies erfolgt im Rahmen der Funktion "Zugriffskontrolle für Anwendungsnetzwerk", konkret über die Hostnamenkontrolle.

Alle oben erwähnten Aktionen werden entsprechend der Konfiguration geprüft.

Anwendungshook

Dies ist eine DLL, die vom AsModLdr-Kerneltreiber in jeden Benutzerprozess injiziert wird. Der Anwendungshook sendet Anforderungen zur Prozesserstellung und Winsock-Netzwerkanforderungen zur Genehmigung an den Agent. Wird eine Netzwerkanforderung blockiert, wird der Zugriff auf die Netzwerkressource verweigert und es wird eine konfigurierbare Meldung angezeigt.

Ist eine Berechtigungsverwaltung erforderlich, wird die Anforderung zur Prozesserstellung zur Regelverarbeitung an den Agent gesendet. Bei erforderlicher Berechtigungsverwaltung startet der Agent den betreffenden Prozess mit erhöhten Rechten und ordnet die Anwendung in der Hierarchie neu zu. Die Kontrolle geht dann wieder zurück an den Hook in der aufrufenden Anwendung.

Bei der Zugriffskontrolle für Anwendungsnetzwerk (Application Network Access Control, ANAC) werden die vom Agent ausgegebenen Ergebnisse aufgrund der zahlreichen Anforderungen für Netzwerkressourcen im Arbeitsspeicher der Anwendung zwischengespeichert. Dies ist wichtig, um ein starkes Abfallen der Netzwerkleistung zu verhindern.

Browser Add-on

"CascadeBHO.dll" ist ein Application Control Browser Helper Object (BHO), das von Internet Explorer geladen wird und im Rahmen der Funktionen "URL-Umleitung" und "Erhöhte Websites" zur Anwendung kommt. Enthält eine Konfiguration einen dieser Regeltypen, wird das Cascade BHO aktiviert und daher von Internet Explorer geladen. Sind keine Regeln für URL-Umleitung oder Erhöhte Websites vorhanden, ist das BHO deaktiviert.

Das BHO wird ausschließlich von Internet Explorer geladen. Eine separate Erweiterung mit derselben Funktionalität, Ivanti Cascade, wird von den Browsern Google Chrome und dem neuen Microsoft Edge (Chromium) geladen.

Prüfen des CascadeBHO.dll-Status

  1. Wählen Sie in Internet Explorer Extras >Add-ons verwalten aus.

    Das Dialogfeld "Add-ons verwalten" wird angezeigt.

  2. Stellen Sie sicher, dass im Bereich "Add-on-Typen" die Option Symbolleisten und Erweiterungen ausgewählt ist.

    Der Status der Add-ons wird im rechten Bereich angezeigt.

Konfigurationen

AppSense Application Control-Konfigurationsdateien (AAMP) enthalten die Regeleinstellungen zum Sichern Ihres Systems. Der Agent prüft die Konfigurationsrichtlinien, um zu bestimmen, welche Aktion beim Abfangen von Anforderungen zum Ausführen von Dateien durchgeführt werden soll.

Konfigurationen werden lokal im Profil Alle Benutzer gespeichert und durch NTFS-Sicherheit geschützt. Im eigenständigen Modus werden Konfigurationsänderungen von der Application Control-Konsole direkt in das Dateisystem geschrieben. Im Enterprise-Modus werden Konfigurationen in der Management Center-Datenbank gespeichert und über die Management Center-Konsole im MSI-Format verteilt.

Konfigurationen können mithilfe der Application Control-Konsole auch in das MSI-Dateiformat exportiert bzw. daraus importiert werden. Dies bietet sich für die Erstellung von Vorlagen an oder wenn Konfigurationen unter Verwendung externer Bereitstellungssysteme verteilt werden sollen.

Nachdem Sie eine Konfiguration erstellt oder geändert haben, müssen Sie diese mit den neuesten Einstellungen speichern (und ggf. bereitstellen), um sicherzustellen, dass diese implementiert werden.