Was ein metamorpher Virus ist
Ein metamorpher Virus ist ein sich selbst vervielfältigendes Programm, das seinen Code nicht nur versteckt, sondern verändert. Jede neue Kopie entsteht durch eine eingebaute Engine, die die Anweisungen umschreibt, sodass die Kopien sich gleich verhalten, aber kaum Bytemuster teilen. Darin liegt der Kern: Klassische Virenscanner erkennen Schadcode an seinem Aussehen, und ein metamorpher Virus sieht nie zweimal gleich aus.
Was er nach dem Start tut, ist eine eigene Frage. Die Mutations-Engine ist nur die Verkleidung, und die Nutzlast kann alles Mögliche sein, vom Infizieren von Dateien bis zu einem Keylogger oder einem stillen Kanal für Datenabfluss. Hilfreich ist diese Trennung: Die Engine entscheidet, ob Sie das Programm erkennen können, die Nutzlast entscheidet, was es Sie kostet.
Wie er sich selbst umschreibt
Die Mutation läuft in einem Zyklus ab, den der Virus in sich trägt, ganz ohne Hilfe von außen.
- 1
Eigenen Code lesen
Die Engine zerlegt den Virenkörper in eine Liste von Anweisungen, die sie verstehen und bearbeiten kann.
- 2
Umformen
Sie wendet Umschreibregeln an, etwa eine Anweisung durch eine gleichwertige zu ersetzen, unabhängige Blöcke umzusortieren oder harmlose Füllstücke einzufügen.
- 3
Neu aufbauen
Sie setzt die geänderten Anweisungen zu einem neuen, lauffähigen Körper mit frischen Adressen und Sprüngen zusammen.
- 4
Infizieren und wiederholen
Die neue Kopie wird an ein Ziel angehängt und startet beim Ausführen denselben Zyklus erneut.
Metamorph und polymorph im Vergleich
Beide Begriffe werden oft verwechselt. Ein polymorpher Virus behält denselben Kerncode und ändert nur seine Hülle, meist eine Verschlüsselungsschicht mit jedes Mal anderem Schlüssel. Ist die Hülle entfernt, kommt derselbe Körper zum Vorschein, und Analysten haben etwas Stabiles zum Abgleichen. Ein metamorpher Virus hat keinen stabilen Körper, den man finden könnte.
| Merkmal | Polymorpher Virus | Metamorpher Virus |
|---|---|---|
| Was sich ändert | Die Verschlüsselungsschicht und ihr Entschlüssler | Der Programmcode selbst |
| Körper nach dem Entpacken | In jeder Kopie identisch | In jeder Kopie anders |
| Was er mitführt | Eine Mutations-Engine für die Hülle | Eine Engine, die den Code zerlegt und neu aufbaut |
| Aufwand beim Schreiben | Mittel | Deutlich höher |
| Schwachstelle | Der entschlüsselte Körper lässt sich abgleichen | Sein Verhalten und die Muster der Engine selbst |
Typische Mutationstechniken
Metamorphe Engines kombinieren eine kleine Menge von Umformungen. Keine ist für sich anspruchsvoll, die Wirkung entsteht durch ihre Stapelung über Generationen.
- Befehlsersetzung: Eine Anweisung wird durch eine andere mit gleichem Ergebnis ersetzt.
- Code-Umordnung: Voneinander unabhängige Blöcke werden gemischt und die Sprünge dazwischen angepasst.
- Registerumbenennung: Für dieselben Operationen werden andere Prozessorregister verwendet.
- Einfügen von Füllcode: Es werden Anweisungen ergänzt, die nichts bewirken, etwa leere Operationen oder sich aufhebende Schritte.
- Erweitern und Verkürzen: Eine kurze Folge wird durch ein längeres Äquivalent ersetzt, oder umgekehrt.
Warum Signaturen nicht reichen
Der Signaturscan vergleicht eine Datei mit Bytemustern aus bekannten Proben. Die Metamorphose greift genau diese Annahme an, denn eine neue Variante trägt kein Muster, das je erfasst wurde. Die Erkennung verlagert sich deshalb von dem, wie die Datei aussieht, zu dem, was sie tut.
Eine verwandte Schicht ist die Dateiintegritätsüberwachung. Sie erkennt den Virus gar nicht, sondern bemerkt, dass sich eine geschützte Datei geändert hat, ohne dass jemand die Änderung freigegeben hat. Das funktioniert unabhängig vom Aussehen des Codes.
| Erkennungsansatz | Braucht ein bekanntes Bytemuster | Sieht das Laufzeitverhalten |
|---|---|---|
| Signaturabgleich | ||
| Statische Heuristik | ||
| Verhaltensüberwachung | ||
| Sandbox oder Emulation |
Verteidigung in Schichten
Da keine einzelne Prüfung jede Variante erkennt, besteht die Verteidigung aus Schichten, die auf unterschiedliche Weise versagen. Verhaltensbasierter Endgeräteschutz, Anwendungs-Allowlists und zeitnahe Updates senken das Infektionsrisiko. Die meisten Infektionen beginnen dennoch bei einem Menschen, über eine Nachricht wie Clone Phishing oder eine Datei von Wechselmedien. Deshalb zählen Mailfilter und Geräteregeln ebenso wie der Scanner.
Gehen Sie davon aus, dass irgendwann eine Variante ausgeführt wird. Netzwerksegmentierung, Konten mit minimalen Rechten und getestete Backups begrenzen, was sie erreichen kann und wie lange die Bereinigung dauert.
Ein sauberer Scan beweist keinen sauberen Rechner: Gegen eine metamorphe Probe kann ein Signaturscanner nur melden, dass er nichts Bekanntes gefunden hat.
Wo Sie anfangen
Fragen Sie zuerst, was eine erfolgreiche Infektion erreichen könnte, nicht, wie sich jede Variante fangen lässt. Erfassen Sie die Endgeräte mit sensiblen Daten, aktivieren Sie dort verhaltensbasierte Erkennung und sorgen Sie dafür, dass ungewöhnliche Dateiänderungen und ausgehende Übertragungen auffallen.
Die letzte Verteidigungslinie sind die Daten selbst. Eine Endpoint-DLP-Kontrolle wie Anexet DLP beobachtet die Kanäle, über die Daten abfließen, sodass ein Abfluss auch dann gestoppt werden kann, wenn das auslösende Programm nie erkannt wurde.
Den Eindringling erkennt man nicht immer, aber man kann immer beobachten, was durch die Tür hinausgeht.
