Sagt mir bitte genau was eine Heuristische Analyse macht?

4 Antworten

Hast Du die Frage nicht schonmal vor 1 Monat gestellt?

Was hast Du denn seithergemacht? Hast Du Dir Publikationen beschafft und durchgelesen?

https://www.researchgate.net/publication/260729684_A_survey_on_heuristic_malware_detection_techniques

Wenn Du es wirklich genau wissen möchtest, die AV-Hersteller werden es Dir bei Kaffee und Kuchen sicher nicht erklären. Da wirst Du erstmal sehr SEHR viele Grundlagen brauchen und dann kannst Du anfangen tiefer in die Thematik mit geeigneten Publikationen einzutauchen.

Siehe den Link als einen von vielen möglichen Startpunkten.

Bei der heuristischen Analyse wird zunächst der Code einer Datei überprüft und im Anschluss auf verschiedene Faktoren analysiert. Diese Untersuchung hat das Ziel, mit Hilfe von indirekten Algorithmen und Merkmalen zu bestimmen, ob das untersuchte Objekt schädliche Eigenschaften besitzt oder ob es für das eigene System völlig harmlos ist.

Der Begriff Heuristik stammt vom griechischen „heurisko“ ab, was „ich finde“ bedeutet. Unter Zuhilfenahme der heuristischen Analyse lassen sich nämlich nicht nur bekannte Viren, sondern auch bislang unbekannte Virusgruppen finden und erkennen. Dies ist ein großer Vorteil im Vergleich zu Virenerkennungsansätzen, die auf bekannten Signaturen basieren. Virenscanner, die rein auf Signaturbasis arbeiten, können Malware nämlich nur dann als schädlich einstufen, wenn diese bereits aufgetaucht und bekannt ist.

Festzuhalten sind also zunächst grundsätzlich zwei Wesenszüge, die die heuristische Methode ausmachen. Sie ist:

  • eine präventive Methode der Malware-Erkennung und
  • ein wichtiges Sicherheitstool, um mit der immensen Menge an neuen Viren und ihren Variationen fertig zu werden.

Diese Vorteile sind von unschätzbarem Wert, denn schließlich werden die Zeitabstände, in denen neue Schadsoftware auftaucht und im Netz die Runde macht, immer kürzer. Kostenpflichtige Antivirusprogramme entdecken also nicht nur spezifische, bereits bekannte Viren, sondern erkennen mittels der heuristischen Analyse virusartiges Verhalten und verdächtige Änderungen an Dateien und lernt auf diese Weise selbstständig, neue Gefahren zu entdecken.

Heuristik bei der Virenerkennung

Die heuristische Analyse ist eine zentrale Komponente in moderner Antivirus-Software.

Im Verlauf der heuristischen Analyse wird an erster Stelle im Code nach verdächtig erscheinenden Befehlen und Merkmalen gesucht, welche zu den Charakteristiken von gefährlichen Virus-Programmen gehören. Dieser Prozess trägt die Bezeichnung statische Analyse und ist die Einleitung für die Untersuchung.

Schädliche Codes suchen in der Regel nach direkt ausführbaren Computerprogrammen, versuchen die gefundenen Dateien zu öffnen und verändern diese im Anschluss nach ihren Vorgaben.

Bei der heuristischen Analyse wird der Code dieser Anwendung überprüft und die sich daraus ergebenden Analyse-Werte statistisch festgehalten, wenn Verdacht erregende Befehle zu erkennen sind.

Wenn diese Werte nach der kompletten Durchsicht des Codes einen im Vorfeld definierten Grenzwert übersteigen, wird das vorliegende Objekt als verdächtig und potentiell gefährlich angesehen.

Quelle: https://www.netzsieger.de/ratgeber/was-ist-die-heuristische-analyse


verreisterNutzer  16.12.2019, 17:59

Ja bloß WIE werden die erkannt durch z.b. Md5 Hash (war nur ein beispiel das natürlich keine Heuristische Analyse ist) oder, dass Dateien hergenommen werden und davon der Binärcode Rausgenommen und analysiert wird???

Wie wir bereits auf deine vorherigen Fragen geschrieben haben gibt es da unterschiedliche Methoden.

Zum einen ein statische Analyse wo einfach nur die Mnonics im Programmcode gegen bekannte Signaturen geprüft wird. Das wird im wesentlichen über eine sogenannte Korellation gemacht. Im einfachsten Fall hast du 10 Anweisungen in einer bestimmten Folge die dir einen Virus kennzeichenen und wenn 9 von 10 dieser Anweisungen in genau dieser Reihenfolge im Code vorkommen wird das Programm als Virus erkannt. In der Praxis wirds schwieriger, da greift man dann oft entweder auf Neuronale Netzwerke zurück die man mit bekannten Viren trainiert und die entscheiden dann ob bestimmte wesentliche Teile des Programms mit diesen bekannten Viren übereinstimmen oder nicht. Diese Analysearten sind hald sehr leicht zu umgehen indem man den Code mit Anweisungen vollstopft die im Endeffekt nichts bewirken, aber verhindern, dass diese wesentlichen Codeteile erkannt werden.

Und die dynamische Analyse wo der Quellcode in einer Sandboxumgebung ausgeführt wird und beobachtet wird, ob die Operationen die dieser Quellcode vornimmt zu bekannten Viren passt.

Du kannst diese Frage auch noch 10mal stellen, die Antwort wird deswegen aber dennoch nicht einfacher....

Die versucht, schadsoftwaretypische Muster im Verhalten zu erkennen (auf welche Dateien wird in welchem Abstand zugegriffen? Wird versucht, Tastatureingaben in anderen Programmen mitzuschneiden? Werden irgendwelche Daten im Hintergrund an Server im Internet gesendet?)