Programmkontrolle als Pfand für die Netzwerksicherheit. Teil 1

Inhalt

    Einleitung

    Eines der dringlichsten Probleme von modernen Unternehmen ist die Sicherheit ihrer Netzwerke. Schadprogramme fügen der Wirtschaft erhebliche Verluste zu und beschädigen nicht zuletzt das Ansehen der betroffenen Firmen. Zwar bieten auf IT-Sicherheit spezialisierte Unternehmen verschiedenartige teure Lösungen an, doch deren Integration führt zu deutlich erhöhten Ausgaben für die Betreuung und den Support des Netzes. Außerdem sind bei Weitem nicht alle klassischen Lösungen in der Lage, einen Schutz vor unbekannten Bedrohungen, insbesondere vor zielgerichteten Attacken zu garantieren.

    Der vorliegende Artikel beschäftigt sich mit einem alternativen Ansatz zum Schutz von Unternehmensnetzwerken, den wir Whitelist Security Approach nennen.

    Whitelist Security Approach ist eine Weiterentwicklung der Technologie Programmstart- und Programmausführungskontrolle (Application Control), ergänzt durch den weiterentwickelten Modus „Standardmäßig blockieren“ (Default Deny) sowie durch die innovative Technologie der Weißen Listen (Dynamic Whitelist).

    Wir von Kaspersky Lab halten den Whitelist Security Approach für eines der Schlüsselelemente von neuartigen Schutztechnologien für Unternehmensnetzwerke. Produkte, in denen dieser Ansatz realisiert wurde, schützen nicht nur vor unbekannten Bedrohungen. Sie stellen Netzwerkadministratoren und IT-Sicherheitsingenieuren auch ausgereifte Report- und Kontrollinstrumente für Software zur Verfügung, was Produkte von Drittanbietern (die nicht mit dem Produktionsprozess in Verbindung stehen) sowie unerwünschte und nicht lizenzierte Programme mit einschließt.

    Voraussetzungen für die Suche nach alternativen Schutzansätzen

    Die Zahl neuer Software steigt mit jedem Jahr stetig an. Um den Anwendern einen qualitativ hochwertigen Schutz bieten zu können, müssen Anbieter von Antiviren-Software zeitnah gigantische Informationsströme analysieren und täglich Terabytes von Daten verarbeiten, indem sie Abermillionen von Dateien klassifizieren. Die gesamte Software lässt sich in drei Kategorien einteilen: bekannte Schadprogramme, bekannte saubere Programme und unbekannte Software.

    Software gilt als unbekannt, wenn sie von einem Antiviren-Unternehmen nicht eindeutig als sauber oder schädlich eingestuft wurde.

    Ein Teil der unbekannten Software enthält schädlichen Code, und genau diese Programme gehören zu den für die Anwender gefährlichsten und sind von den AV-Produkten am schwierigsten zu entdecken. Denn genau hier ist mit Bedrohungen zu rechnen, da die Virenschreiber ihre Kunst ständig verfeinern und laufend neue Schadprogramme erscheinen.

    In den meisten Fällen werden die Hersteller von Antiviren-Software in die Rolle des Hinterherhinkenden gedrängt – erst nachdem die Virenschreiber eine neue Technologie herausgebracht haben, dreht sich auch die Spirale in der Entwicklung von Schutztechnologien weiter. Zur Verbesserung des Sicherheitsniveaus werden heute nicht nur traditionelle Signatur-basierte Technologien eingesetzt, sondern ein ganzes Spektrum moderner Schutztechniken. Dabei handelt es sich einerseits um proaktive heuristische Methoden (sowohl statische als auch dynamische) und andererseits um Cloud-Technologien. Diese erlauben eine sofortige Reaktion auf neue Bedrohungen und erhöhen außerdem die Leistungsfähigkeit herkömmlicher Schutztechnologien, denn mit der Cloud-Infrastruktur steht diesen nun ein zusätzlicher Online-Dienst zur Seite.

    Der traditionelle Schutzansatz sieht das Blockieren bekannter Bedrohungen anhand bekannter schädlicher Verhaltensmuster vor. Die Geschichte mit den Trojanern Stuxnet, Duqu und Flame hat allerdings gezeigt, dass auf dem Markt angebotene traditionelle Schutzlösungen praktisch wirkungslos gegen einige neue Bedrohungen und zielgerichtete Attacken sind. Die Folge davon sind ständig steigende Anforderungen an die Sicherheit von Unternehmensnetzwerken.

    In dieser Situation stehen die Softwareentwickler im Bereich IT-Sicherheit vor der Aufgabe, nach alternativen Lösungen zu suchen, mit denen sich das Schutzniveau von Unternehmensnetzwerken deutlich verbessern lässt. Der in diesem Artikel beschriebene Ansatz, der Whitelist Security Approach, erfüllt nicht nur die aktuellen Anforderungen an das Schutzniveau, sondern ermöglicht es Anbietern von Antiviren-Software auch, sich aus der Rolle des Verfolgers zu befreien und damit zu beginnen, nach den eigenen Regeln zu spielen.

    Whitelist Security Approach fußt nicht allein auf unserer Kenntnis um die Entwicklung und Verbreitung von Unternehmensbedrohungen. Wir wissen auch, welche Geschäftsanforderungen unsere Unternehmenskunden haben und welche Schutztechnologien für die Umsetzung einer zuverlässigen und gleichzeitig ausbalancierten Lösung notwendig sind. Die im Folgenden beschriebene Lösung zeichnet sich durch einfache Integration und Steuerung aus, und – was ebenso wichtig ist – durch relativ geringe Gesamtbetriebskosten (ТСО) bei einem gleichzeitig  hohen IT-Sicherheitsniveau.

    Die Umsetzung dieses Ansatzes machte nicht nur eine Überprüfung von jahrzehntealten „Verfolgungsparadigmen“ erforderlich, sondern läutete eine prinzipiell neue Etappe in der Entwicklung der Anwendungskontrolle ein.

    Komponenten moderner Sicherheitsprodukte

    Ein zuverlässiger IT-Schutz erfordert einen komplexen Ansatz. Moderne Schutzlösungen bestehen aus mehreren Komponenten, von denen jede eine bestimmte Aufgabe erfüllt.

    pic2s

    Komponentenmodell moderner Schutzlösungen

    In diesem Modell lassen sich die Komponenten in vier Hauptgruppen einteilen: Abfänger, Antiviren-Engines, Komponenten der Anwendungskontrolle und Cloud-Dienste.

    Hier ein Überblick über die funktionalen Aufgaben jeder einzelnen Komponente.

    Abfänger sind „Sensoren“, die es den Antiviren-Produkten ermöglichen, sich so in den Funktionsprozess des Betriebssystems zu integrieren, dass andere Komponenten des AV-Schutzes Objekte und Ereignisse im richtigen Augenblick überprüfen können.

    Als Abfänger fungieren:

    • Treiber, die von Anwendungen aufgerufene Dateien abfangen. Durch das Abfangen des Aufrufs einer Datei kann das AV-Produkt diese Datei auf Schadcode untersuchen oder die Zulässigkeit einer Operation gemäß den Regeln der Aktivitätskontrolle von Anwendungen (HIPS) prüfen. Ist Schadcode vorhanden oder werden die Regeln der Anwendungsaktivität verletzt, kann der Treiber entweder den Aufruf der Datei oder den Start der Anwendung verbieten.
    • Netzwerktreiber, die eine Kontrolle der Netzaktivität von Anwendungen ermöglichen (Verhinderung von Datenlecks über das Netz, Blockierung von Netzattacken usw.).
    • Plug-ins, also Bibliotheken (Module), die in populäre Anwendungen integriert werden (in E-Mail-Clients, Browser, IM-Clients usw.) und die Überprüfung der übertragenen Daten gewährleisten.

    Engines sind die Module des Produkts, die potenziell schädliche Objekte analysieren. Die Überprüfungsmethoden können variieren und jeder AV-Anbieter hat seinen eigenen Katalog an Engines und seine eigenen Bezeichnungen.

    Engines lassen sich in verschiedene Grundtypen einteilen:

    • Statische Analyzer erkennen schädliche Objekte anhand von bestimmten charakteristischen statischen Merkmalen (hängt meist mit der Dateistruktur spezifischer Formate zusammen).
    • URL-Analyzer überprüfen, ob die Webadresse, die der Anwender besuchen möchte oder die ihm per Mail geschickt wurde, in der Datenbank schädlicher oder Phishing-URLs vorhanden ist beziehungsweise in der Datenbank mit Webseiten zu bestimmten Themen (Komponente „Kindersicherung“) steht.
    • Heuristische Analyzer ermöglichen es, mit einer Signatur eine Vielzahl von Schaddateien zu erkennen, darunter auch früher unbekannte Malware-Modifikationen. Dabei verbessern sie gleichzeitig die Trefferqualität und können die Größe der Antiviren-Datenbanken verringern.
    • Emulatoren sind Module, die Programmcode zur darauffolgenden Verhaltensanalyse in einer isolierten Umgebung ausführen.

    Ein wesentlicher Bestandteil der meisten modernen Antiviren-Produkte ist eine Zusammenstellung von Technologien, die in der Komponente Programmstart- und Programmausführungskontrolle umgesetzt sind (Application Control). Diese Anwendungskontrolle funktioniert unter Verwendung der von den „Abfängern“ gelieferten Ereignisse, wobei diese Ereignisse mit Hilfe verschiedener Komponenten verarbeitet werden:

    • PDM (Proactive Defense Module). Suche nach und Erkennung von bekannten Schadmodulen bestimmter Programme (Folgerichtigkeit, Muster) anhand von Datenbanken mit schädlichen Verhaltensmustern.
    • HIPS (Host Intrusion Prevention System). Untersuchung jeder potenziell gefährlichen Aktion eines Programms (meist atomare Aktionen) nach einem Regelkatalog, der die für dieses Programm zulässigen Aktionen definiert. Dabei können diese Regeln je nach Softwarekategorie unterschiedlich ausfallen. So kann „vertrauenswürdigen“ Programmen etwa „alles“ gestattet sein, wohingegen „unbekannte und verdächtige“ Software Einschränkungen unterliegt.
    • Exploit Protection. Diese Komponente schützt vor Malware, die Sicherheitslücken in Programmen und dem Betriebssystem ausnutzt.

    Derzeit haben nur wenige Anbieter die Komponente Exploit Protection im Programm, doch wir halten diese Schutzfunktion für unerlässlich. Die von Kaspersky Lab verwendete Kombination von Technologien heißt Automatic Exploit Prevention (AEP). Auf ihr basiert die Verhaltensanalyse von Exploits sowie eine spezielle Kontrolle von Anwendungen, die häufiger als andere Programme Attacken von Cyberkriminellen ausgesetzt sind. AEP verhindert die Ausführung von Exploits und die Ausbildung von schädlichem Verhalten, wenn das Exploit trotzdem gestartet werden konnte.

    • EAC (Enterprise Application Control). Start von Programmen unterschiedlicher Kategorien und/oder Softwareversionen in Übereinstimmung mit verschiedenen Regeln.

    Das Zusammenspiel mit Cloud-Services erweitert die Möglichkeiten sowohl von Engines als auch von Technologien zur Kontrolle der Programmaktivität. Die Verwendung der Cloud verbirgt einen Teil der Überprüfungslogik für Schadprogramme vor den Cyberkriminellen und erschwert ihnen so das Reverse Engineering. Auf Anwender- und Kundenseite verringert die Cloud außerdem die Updategröße für die Signatur-Datenbanken und für die Datenbanken mit Verhaltensschablonen.

    Application Control als Schlüsseltool der Anwendungskontrolle in Unternehmensnetzwerken

    Mit dem oben beschriebenen Komponentenmodul Аpplication Control ist es möglich, die Aktivität von Anwendungen mit Hilfe von HIPS-Regeln flexibel zu regulieren, die ursprünglich von den Herstellern der AV-Lösungen vorgegeben wurden. Programme stuft die Аpplication Control in vier Kategorien ein, die den Grad der Anwendungskontrolle festlegen: sicher, gefährlich, mit starken Beschränkungen, mit schwachen Beschränkungen. Jeder Kategorie liegen Regeln zugrunde, die den Zugriff der Anwendungen auf verschiedene Ressourcen (Dateien, Ordner, Netzadressen) regulieren. Wenn eine Anwendung zum Beispiel Zugriff auf eine bestimmte Ressource fordert, überprüft die Application Control, ob sie über das entsprechende Recht verfügt und führt daraufhin die mit den vorgegebenen Regeln in Übereinstimmung stehende Operation aus.

    Die Application Control kann zudem den Start von Anwendungen protokollieren. Diese Informationen lassen sich im Rahmen von Untersuchungen von Vorfällen und verschiedenen Überprüfungen verwenden. Steht einem IT-Sicherheitsingenieur oder Administrator eine derartige Funktionalität zur Verfügung, so erhält er operativ und in strukturierter Form Antworten auf die folgenden Fragen:

    • Welche Anwendungen wurden gestartet und wann genau in einem bestimmten Zeitintervall?
    • Auf welchen Computern und unter wessen Account?
    • Wie lange wird ein Programm schon verwendet?

    Gerade von den funktionellen Möglichkeiten (Leistungsstärke und Benutzerfreundlichkeit) dieser Komponente hängt es ab, wie effizient Netzadministratoren verschiedene Sicherheitsregeln einführen und durchsetzen können.

    Balance zwischen Handlungsfreiheit und Sicherheit

    Bei der Auswahl der Module für den IT-Schutz ist ein vernünftiges Gleichgewicht zwischen Freiheit und Sicherheit von großer Bedeutung.

    Für Heimanwender ist es wichtig, die Möglichkeit zu haben, jede Software ohne Einschränkungen installieren und verwenden zu können. Obwohl das Risiko einer Infektion in so einem Fall größer ist als im strikten Verbotsmodus, verwaltet der Heimanwender nur seine persönlichen Daten und entscheidet selbstständig, wobei er das potenzielle Risiko der Preisgabe oder des Verlustes von Daten berücksichtigt.

    Der Anwender in einem Unternehmen operiert hingegen mit Informationen, deren Eigentümer nicht er selbst ist. Je strenger die Kontrolle, desto geringer das Risiko für die IT-Sicherheit: Zu den möglichen Gefahren gehören hier beispielsweise Preisgabe oder Verlust von für das Geschäft kritisch wichtigen Daten, Störung der Betriebsprozesse und als Folge finanzielle Einbußen und Verlust des guten Rufs.

    Für Unternehmen bedeutet das Gleichgewicht zwischen Sicherheit und Handlungsfreiheit eine Balance zwischen den möglichen Risiken und dem Komfort, der den Anwendern im Unternehmen zugutekommt. Während in einem kleinen Unternehmen die Benutzerfreundlichkeit Vorrang hat und damit auch ein Minimum an Beschränkungen gilt, so steht in großen Unternehmensnetzwerken die Garantie eines maximalen Schutzniveaus an allererster Stelle. Großkonzerne verwenden zentralisierte Sicherheitsregeln – einheitliche Regeln zur Nutzung der unternehmenseigenen Informationsressourcen. Der Komfort für den Endanwender muss hinter der unternehmensweit einheitlichen Software und einer maximalen Transparenz der Prozesse für die Systemadministratoren zurückstehen.

    Für ihre Arbeit benötigen die Mitarbeiter einer Firma normalerweise nur bestimmte Programme. Die Möglichkeit, nur erwünschte Anwendungen zuzulassen und die restlichen unerwünschten Programme zu sperren (nicht autorisierte, nicht legitime und nicht zielführende Software), ist eine äußerst wichtige Option für Unternehmensnetzwerke, Industrieobjekte, Finanzorganisationen, Rüstungsbetriebe und Geräte mit spezialisierter Funktion (zum Beispiel Bankomaten oder Terminals unterschiedlicher Art).

    Maximale Anwenderfreundlichkeit gewährt die Application Control durch den Modus „Standardmäßig zulassen“ (Default Allow) und maximalen Schutz durch den Modus „Standardmäßig blockieren“ (Default Deny).

    Traditioneller Schutzansatz: Default Allow

    Herstellerseitig ist traditionell sowohl in den Produkten für Heimanwender als auch in Unternehmenslösungen der Modus „Standardmäßig zulassen“ (Default Allow) aktiv. Hier kann der Anwender jede beliebige Anwendung starten, mit Ausnahme von blockierten oder solchen Programmen, für deren Start Beschränkungen vorgegeben sind. Das hat damit zu tun, dass die auf dem Markt angebotenen Lösungen auf Bedienkomfort ausgerichtet sind.

    Wenn Nutzer jede beliebige Anwendung starten dürfen, verlangt das ganz klar nach qualitativ hochwertigen Erkennungstechnologien. Bei Default Allow sind alle oben vorgestellten Schutzkomponenten an der Analyse der auszuführenden Programme beteiligt. So ist es möglich, nicht ausschließlich bekannte, sondern auch einige unbekannte Bedrohungen zu finden. Die Erkennungsqualität hängt dabei vom Hersteller der Antiviren-Lösung ab.

    Doch wie bereits oben erwähnt hinken die AV-Unternehmen den Virenschreibern in der Regel hinterher, das heißt es existiert immer schädliche Software, die noch nicht vom Antivirenschutz erkannt wurde. Start und Ausführung sind im Modus Default Allow standardmäßig erlaubt, sofern das Programm nicht zu den blockierten Anwendungen gehört. Das bedeutet, dass Default Allow ein gewisses Risiko darstellt: Der zum Start zugelassene Code kann eine bisher noch nicht identifizierte Bedrohung in sich tragen.

    Neben Schadprogrammen gibt es auch legitime, in manchen Netzwerken allerdings unerwünschte Software. Sie fällt nicht unter die Blockierungsregeln, und wenn kein spezielles Verbot besteht, kann sie daher im Modus Default Allow in einem Unternehmensnetzwerk ohne Beschränkungen ausgeführt werden.

    Es folgen zwei Beispiele dafür, wie ein Programm, das nicht durch die Sicherheitsregeln blockiert wird, einem Unternehmen Schaden zufügen kann.

    Beispiel 1: Ein Mitarbeiter installiert auf seinem Computer Skype, eine IP-Telefonie-Software mit IM-Funktion. Ein besonderes Merkmal von Skype ist das Verschlüsseln der übermittelten Daten. Das bedeutet, dass das DLP-System (Data Loss Prevention) nicht in der Lage ist, die Übermittlung von vertraulichen Daten über die Grenzen des geschützten Bereichs hinaus zu verfolgen und den Empfänger der Informationen zu ermitteln. Antiviren-Technologien verbieten die Nutzung dieser Anwendung ebenfalls nicht, da sie nicht schädlich ist. Schmiedet ein Krimineller ein Komplott mit einem Mitarbeiter eines Unternehmens, so erhält er die Möglichkeit, von dem Mitarbeiter vertrauliche Informationen zu empfangen, indem er Skype als Datenübertragungsmedium benutzt.

    Beispiel 2: Mitarbeiter von Kaspersky Lab waren an den Ermittlungen eines Vorfalls in einem Unternehmen beteiligt. Es wurden keine Schadprogramme gefunden, doch die Ursache des Vorfalls lag darin, dass ein IT-Spezialist auf einer Reihe von PCs ein legitimes Tool zur entfernten Administration installiert hatte. Der besagte Experte war vor über einem Jahr entlassen worden und von dem Tool wusste niemand – nichtsdestoweniger funktionierte es weiterhin, indem es dem entlassenen Mitarbeiter Zugriff auf das Unternehmensnetzwerk und die dort gespeicherten Daten eröffnete.

    Auf diese Weise macht der Modus Default Allow bei maximalem Komfort für den Endanwender ein Unternehmensnetzwerk gegenüber unbekannten Bedrohungen und unerwünschter Software angreifbar. Zudem erfordert die Kontrolle über alle ausführbaren Programme bedeutende Kapazitäten.

    In den meisten Fällen reicht eine eingeschränkte, konkrete Auswahl an Programmen für die Unternehmensmitarbeiter zur Erfüllung ihrer Aufgaben aus. Das heißt wiederum, dass eine einfache Lösung auf der Hand liegt: Alle notwendigen und sauberen Programme werden in die Weißen Listen aufgenommen und der Start aller anderen Anwendungen wird standardmäßig blockiert. Dieser Arbeitsmodus heißt Default Deny.

    Der Modus Default Deny

    Im Gegensatz zu Default Allow blockiert der Modus Default Deny die Ausführung jeglicher Software, die nicht in den Listen vertrauenswürdiger Anwendungen (den Weißen Listen) enthalten ist. Auf diese Weise wird keinem unbekannten oder unerwünschten Programm der Start erlaubt.

    Im Grunde stellt ein Unternehmensnetzwerk im Modus Default Deny eine isolierte Umgebung dar, in der nur solchen Programmen der Start gestattet wird, die für die Erfüllung der geschäftlichen Aufgaben eines Unternehmens unerlässlich und ausreichend sind.

    Hinzu kommt, dass das Startverbot für schädliche, nicht zielführende, nicht lizenzierte und unbekannte Software die Ausgaben für die Analyse derjenigen Programme senkt, die im Modus Default Allow zum Start zugelassen wären. Bei der Arbeit im Modus Default Deny sind die Anforderungen an die Leistung des zu kontrollierenden Systems wesentlich geringer – wie auch an die Ressourcen, die für die Programmanalyse unerlässlich sind. Folglich belastet das Sicherheitssystem das Netzwerk insgesamt geringer.

    Wie die Grafik zeigt, werden Kontrolle und Überwachung der Anwendungen nicht während der Ausführung, sondern im Moment des Starts der erlaubten Programme umgesetzt. Auf diese Weise minimiert Default Deny die Risiken für die IT-Sicherheit bereits auf den ersten Etappen der Sicherheitsbereitstellung.

    Wichtigste Vorteile von Default Deny:

    1. Minimierung des Risikos durch den Start schädlicher und unerwünschter Software:
      • Blockierung unbekannter Anwendungen, inklusive neuer Spielarten von Schadprogrammen, darunter solche, die in zielgerichteten Attacken eingesetzt werden. Daraus folgt eine garantiert sichere Umgebung.
      • Installation, Start und Ausführung nicht legitimer/nicht lizenzierter und nicht mit der Arbeit zusammenhängender Software lassen sich blockieren. Dazu gehören zum Beispiel verschiedene IM-Programme, Spiele, offensichtlich verwundbare Software sowie System-„Optimierer“ und -„Beschleuniger“. Als Folge konzentriert sich die Mitarbeiterschaft auf die tatsächlichen dienstlichen Verpflichtungen und die Produktivität steigt.
    2. Geringere Anforderungen an die Ressourcen, die für die Analyse der Anwendungen unerlässlich sind. Die Folge: Geringere Auswirkungen des Sicherheitssystems auf die ordnungsgemäße Funktion des zu kontrollierenden Systems.
    3. Last but not least – Verringerung der Ausgaben und damit letztlich eine Senkung der Gesamtkosten für die Wartung und den Support des Sicherheitssystems: weniger Ausfälle, weniger Klagen, weniger Belastung für den technischen Support.

    Mit einem alternativen Ansatz, der in den leistungsstarken Programmkontroll- und Programmüberwachungstechnologien umgesetzt wird, lässt sich das Niveau der IT-Sicherheit eines Unternehmensnetzwerks also wesentlich steigern, wobei gleichzeitig die Ausgaben für die Bereitstellung und den nachfolgenden Support sinken. Wie oben bereits beschrieben handelt es sich hierbei um einen prinzipiell anderen proaktiven Schutzansatz, der nach Meinung der Experten von Kaspersky Lab die traditionellen Vorstellungen von Sicherheit in Unternehmensnetzwerken in nächster Zukunft wesentlich verändern wird.

    Die Autoren bedanken sich bei Vladislav Martynenko für die Hilfe beim Verfassen des Kapitels „Komponenten moderner Sicherheitsprodukte“.

    Teil 2

    Ähnliche Beiträge

    Schreibe einen Kommentar

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.