6 Feb 2014
AVZ: Heuristik ohne Fehlalarme – für den den Kampf gegen zukünftige Bedrohungen.
Wie kann man ALLE Schädlinge entdecken und entschärfen, die sich tief in Ihrem Computer verstecken? Vor allem diese fiesen Exemplare, die man noch gar nicht kennt, und die dann auch noch einen verdammt hohen Boshaftigkeits-IQ haben (und oftmals durch eine Regierung gesponsort wurden)?
Ganz einfach: Das geht nicht.
Nun ja, man kann es zumindest versuchen; aber um die sprichwörtliche schwarze Schadprogramm-Katze in einem stockfinsteren Raum zu finden, braucht man schon eine ganze Handvoll erstklassiger Experten, die die Aufgabe manuell lösen. Und das ist teuer. Das Ganze mit einem Antiviren-Produkt automatisch zu tun, ist schon etwas Anderes: Normalerweise kommt man nur soweit, dass man den Geruch solcher hochentwickelter Infizierungen bemerkt – aber das war’s dann auch schon. Wobei das in erster Linie für die alte Herangehensweise mit klassischen Virensignaturen und Datei-Scannern gilt.
Was ist also die Lösung?
Auch das ist wieder ganz einfach: Man gibt ein paar Superhirnen die Aufgabe, diese anspruchsvolleren Such- und Entschärfungsfunktionen eines Antiviren-Produkts zu automatisieren.
Wie wir bei Kaspersky Lab das geschafft haben?
Indem wir die Superhirne auf die systematische, intellektuelle Entwicklung des Schutzes angesetzt haben, und Signale von Dutzenden von Kaspersky-Sensoren analysiert haben, die über den ganzen geschützten Computer verteilt sind. So eine allwissende, systematische Analyse ist viel effektiver als das Antivirus-Äquivalent zur Wahrsagerei aus dem Kaffeesatz. Ein praxisnaher Ansatz für den proaktiven Schutz ist schließlich allemal besser als Rätselraten, oder? Aber natürlich.
Zu den angesprochenen Sensoren… Eine Funktion, die eigentlich in allen zu finden ist, ist die wichtigste Waffe im Arsenal von Kaspersky Lab: Die heuristische Analyse.
Solche Heuristiken sind in der Computer-Virologie schon seit etwa 25 Jahren zu finden. Einige Antivirus-Hersteller haben diese Technologie wieder komplett aufgegeben, da sie dauernd weiterentwickelt werden muss, während andere ihre Nutzung minimiert oder sogar eingefroren haben. Falls Sie nicht genau wissen, was das Besondere an Heuristiken ist, hier eine kurze Übersicht:
Schädliche Programme können auf zwei Arten identifiziert werden – entweder direkt oder indirekt:
Direkt – das sind die klassischen Siganturen. Wir wissen, wie der Code eines Schadprogramms aussieht, also entwickeln wir dafür eine Signatur und suchen bei der Prüfung eines verdächtigen Objekts danach.
Indirekt – das ist die Heuristik. Wir können schädliche Aktivitäten basierend auf dem Wissen über typische Kommandosequenzen im Code oder in Metadaten (statische Analyse), oder auch über das Verhalten (dynamische Analyse) aufdecken.
Ein Beispiel für die indirekte Suche: Ein Programm schreibt sich selbst in in den Autorun Key der System Registry, fängt Tastatureingaben ab, öffnet einen Port und überträgt irgendwelche Daten über das Internet. Zudem schreibt das Programm
Daten auf die Festplatte, und zwar in Zylinder 0, Sektor 1 – modifiziert also den MBR (Master Boot Record). Seien wir ehrlich, diese Art des Programmverhaltens wirkt kaum wie die eines guten Programms, oder?
Der Hauptvorteil der Heuristik gegenüber Siganturen ist nun, dass wir gar nicht wissen müssen, wie ein bestimmtes Schadprogramm „aussieht“, das heißt, wir müssen seinen Code gar nicht kennen. Statt dessen zielen wir breit auf das ganze Spektrum der Schädlichkeiten ab (inklusive der unbekannten), indem wir bestimmte schädliche Aktionen und schädliches Verhalten analysieren.
Und es stellt sich heraus, dass die Anzahl dieser verschiedenen Aktionen und Verhaltensweisen viel geringer ist, als die möglichen Code-Kombinationen von Schadprogrammen. So erkennen wir zum Beispiel mit nur einem heuristischen Merkmal etwa 600.000 Varianten des WBNA-Wurms! Sie können sich also vorstellen, wie gewaltig eine gute Heuristik die Virenprüfung beschleunigen kann (da ja keine 600.000 einzelnen Signaturen benötigt werden!).
Heursitiken werden so ziemlich in all unseren Schutzmodulen eingesetzt (zum Beispiel dem Deblocker, sowie im Anti-Rookit– und im Anti-Phishing-Modul). Sie helfen den analytischen Modulen wie dem System Watcher und den Cloud-basierten Reputationsdiensten dabei, das Innere des Computers besser zu verstehen und auch die gerissensten Attacken aufzudecken. Zudem gibt es unser spezielles AVZ-Modul für die automatische heuristische Analyse eines Systems. Darauf möchte ich heute etwas genauer eingehen…
AVZ wurde schon im Jahr 2007 eingeführt. Das Modul spielt eine Vielzahl verschiedener Rollen (Shredder, Backup, Reinigung des Papierkorbs, Prüfung der Datei-Integrität, Systemwiederherstellung), je nachdem, in welchem Produkt es eingesetzt wird. Doch aus Sicht der Heuristik und des Schutzes vor unbekannten Bedrohungen tut es vor allem zwei Dinge: (i) es ermöglicht dem (menschlichen) technischen Support, ein System aus der Ferne zu diagnostizieren und auch die stursten und schwierigsten Infektionen zu desinfizieren; und (ii) es bietet eine Reihe von Werkzeugen, die es erfahrenen Nutzern und Sysadmins ermöglichen, auf den von ihnen verwalteten Computern und Netzwerken selbst schädliche Anomalien zu identifizieren.
Die wichtigste Funktion von AVZ ist aber der heuristische Analyzer, der jeden Tag aktualisiert wird und auf alles, das innerhalb des Computers vor sich geht aufpasst. Und damit ist der Job schon halb erledigt! AVZ interpretiert verschiedene Parameter und macht es damit möglich, Schädliches zielgenau zu orten, das System zu analysieren, mit den Ergebnissen eine Quarantäne-Zone mit den verdächtigen Objekten einzurichten und einen detaillierten Bericht zu allen Dateien zu erstellen.
Das Tolle an dem Bericht ist, dass er sowohl von einem (menschlichen) Experten, als auch von einem Roboter gelesen werden kann! Sobald er analysiert wurde, kann unser technischer Support eine genaue Diagnose stellen und ein Verfahren dafür bereitstellen; während ein Roboter, nachdem er den Bericht automatisch analysiert hat, eine Lösung zum Ausführen in einem integrierten Script-Interpreter erstellen kann.
Ja, wir haben einen speziellen Script-Interpreter in unseren Produkten, den wir selbst entwickelt und genau für Aufgaben in der Computer-Virologie angepasst haben. Er enthält alle Instrumente, die man für die Antiviren-Chirurgie braucht (etwa das Löschen von Dateien, das Verschieben von Objekten in die Quarantäne, das Säubern der Registry, das Beenden von Prozessen und so weiter), zusammen mit anderen hilfreichen Technologien (verzögertem Löschen, Umgang mit aktiven Infizierungen während einer Problembehandlung und so weiter).
Eine schöne Funktion des Berichts ist, dass er wirklich kritisch wichtige Informationen über das System der Antiviren-Diagnose enthält. Objekte, die garantiert gut und unschuldig sind, werden automatisch auf die Whitelist gesetzt, so dass sie den Spezialisten nicht im Weg sind und die Analyse beschleunigt wird.
Es ist alles eine Frage der Technik: Das Script-Heilmittel wird an den infizierten Computer ausgeliefert und die regenerierenden Maßnahmen werden eingeleitet. Der Anwender muss nur den Text in das Fenster des Scripts kopieren. Aus Erfahrung wissen wir, dass diese Funktion sowohl bei der Installation des Schutzprogramms auf einem bereits infizierten Computer (inklusive unbekannter Bedrohungen) sowie bei der Korrektur der Nachwirkungen einer Infizierung unerlässlich ist.
Jeder heuristische Analyzer hat aber auch Beschränkungen, wenn es um das Thema Fehlalarme geht. Das ist aber auch logisch, denn die heuristische Analyse arbeitet mit Vermutungen über die Schädlichkeit eines Objekts, basierend auf bereits gemachten Erfahrungen – nicht auf Fakten. Tiefgreifende Tests und Whitelisting können das ganz gut kompensieren, doch trotzdem können hin und wieder Fehler vorkommen. Leider wurde das Modul noch nicht erfunden, das dieses Problem ein für alle Mal lösen könnte… aber wir arbeiten daran :). In der Zwischenzeit ist es wichtig, Fehler SO SCHNELL WIE MÖGLICH zu beheben und korrigierte Updates SOFORT auszuliefern. Mit AVZ… gibt es so ein Problem aber nicht!!
Zum Einen arbeitet AVZ selbständig und nervt den Anwender nicht mit technischen Fragen und Warnungen. Das Ergebnis seiner Arbeit kann nur von dem Support-Experten gesehen werden, der den Bericht erhält. Oder vom Roboter, der den Bericht erhält :). Zum Anderen können sowohl der Experte als auch der Roboter Fehlalarme selbst löschen! Ja, Sie haben richtig gelesen – ehrlich! Bei jedem Scan neuer Daten können sie manuell oder automatisch (je nachdem, ob es der Experte oder der Roboter macht) Fehlalarme sowie unwirksame Einträge aufdecken und entsprechende Änderungen machen!
Wer hat gesagt, dass die entsprechende Technik noch nicht erfunden wurde?