Bild: Generiert mit Gemini Flash

Multi-Engine-Malware-Scan: warum mehrere heterogene Scanner statt einem großen

7 Min Lesezeit Serie: Malware-Reihe #malware#clamav#yara#capa#scan

Ein einzelner Virenscanner erkennt neue Samples in erstaunlich wenigen Fällen. Die Lösung ist nicht, einen besseren Scanner zu finden, sondern mehrere unterschiedliche zu kombinieren. Welche Engine-Familien es gibt, was jede einzelne gut kann und wie die Aggregation aussieht.

Inhalt dieses Beitrags
  1. Problem
  2. Kurze Antwort
  3. Tiefgang
  4. Die fünf Familien
  5. Was wir derzeit nicht nutzen: abuse.ch / Spamhaus-Feeds (lizenzrechtliche Probleme)
  6. Aggregation der Ergebnisse
  7. Heterogenität ist die Pointe
  8. Netzwerk-Isolation als Begleitmaßnahme
  9. Abgelehnte Alternativen und Mythen
  10. Was Sie jetzt tun sollten
  11. Wie Dernium hier hilft
  12. Offene Punkte
  13. Häufige Fragen
  14. Warum reicht ein einziger, guter Virenscanner nicht aus?
  15. Kann ich nicht einfach VirusTotal benutzen?
  16. Bedeutet "ein Scanner hat angeschlagen" automatisch Gefahr?
  17. Schützt ein Multi-Engine-Scan vor Zero-Day-Malware?
  18. Ist die Scan-Engine selbst ein Sicherheitsrisiko?

Problem

Das generische Problem "ist diese Datei bösartig?" ist ohne Entschärfungsmaßnahmen (was Virenscanner nicht tun) nicht mit abschließender Sicherheit entscheidbar. Jeder Scanner, der behauptet, es zu lösen, ist in Wirklichkeit ein Mustererkennungssystem, das nur einen Teilbereich abdecken kann. Jeder, der Ihnen absolute Sicherheit zu verkaufen meint, lügt auf die eine oder andere Weise.

Die empirische Konsequenz: kein einzelner Scanner findet alle Samples. Vergleichstests der Forschungslabore (AV-Comparatives, AV-Test) zeigen für brandneue Viren typische Erkennungsraten zwischen 30 und 70 Prozent pro Engine. Und selbst teure Top-Scanner haben jeweils blinde Flecken, die andere Engines besser abdecken.

Die richtige Antwort ist nicht "einen besseren Scanner finden". Sie ist: mehrere heterogene Scanner kombinieren und ihre Ergebnisse zu einer Entscheidung verdichten.

Für wen ist das? Für alle, die wissen wollen, wie zuverlässige Malware-Erkennung funktioniert.

Kurze Antwort

Kein einzelner Scanner deckt alles ab, deshalb kombiniert eine gute Pipeline mehrere unterschiedliche Erkennungsprinzipien. Die fünf Familien, die sich ergänzen:

  • Signatur-basiert (z.B. ClamAV mit SaneSecurity/LMD-Feeds): schnell, erkennt alles Bekannte.
  • Regel-basiert (z.B. YARA mit yara-forge/CORE): erkennt Familien anhand von Mustern.
  • Capability-basiert (z.B. Capa): benennt Fähigkeiten ausführbarer Dateien.
  • Format-spezifisch (z.B. oletools, pdfid, diec): prüft Office, PDF und Packer gezielt.
  • Similarity-/Hash-basiert (z.B. ssdeep plus eigene Hash-Reputation-Datenbank): findet Varianten.

Jeder Typ findet Dinge, die die anderen übersehen; kein Typ kann die anderen ersetzen. Die praktische Pipeline führt sie parallel aus, aggregiert ihre Ergebnisse zu einem Urteil und präsentiert dann ein Ergebnis.

Tiefgang

Fünf heterogene Scan-Familien betrachten dieselbe Datei aus verschiedenen Blickwinkeln und verdichten ihre Treffer zu einem gewichteten Gesamturteil.
Fünf heterogene Scan-Familien betrachten dieselbe Datei aus verschiedenen Blickwinkeln und verdichten ihre Treffer zu einem gewichteten Gesamturteil.

Die fünf Familien

Signatur-basiert (ClamAV). Schnell, erkennt alles Bekannte, braucht aktuelle Signaturen. ClamAV ist Open Source, die offizielle Signaturquelle ist Cisco Talos. Dazu kommen Community-Feeds: SaneSecurity sammelt und kuratiert zusätzliche Signaturen aus verschiedenen Quellen, LMD (Linux Malware Detect) fokussiert auf Web-Shell- und Linux-Server-Malware. Gemeinsam decken sie eine deutlich breitere Basis ab als ClamAV ohne Feeds.

Regel-basiert (YARA). YARA ist die Standardsprache für Malware-Forscher, um Muster zu beschreiben, Byte-Sequenzen, Strings, Dateistruktur-Eigenschaften, boolesche Kombinationen davon. Ein YARA-Regel-Korpus wie yara-forge (bündelt Rules aus Signature-Base, Elastic, Neo23x0, ReversingLabs) enthält tausende kuratierte Regeln und ist damit eine Art "Verhaltens-Signatur-Datenbank". YARA erkennt oft Familien, die Signatur-Scanner noch nicht erwischt haben.

Capability-basiert (Capa). Das Mandiant/Google-Werkzeug Capa analysiert ausführbare Dateien (PE, ELF) und benennt ihre Fähigkeiten in menschenlesbaren Begriffen: "reads files", "communicates over HTTP", "uses cryptography", "persists via registry run key". Aus der Kombination von Capabilities lässt sich eine Malware-Klasse oft treffsicherer erkennen als aus Strings allein. Capa findet keine einzelnen Samples, sondern beschreibt Verhaltens-Profile.

Format-spezifisch. Dokumente sind eigene Welten. oletools (Python) analysiert Office-Dokumente auf eingebettete Makros, OLE-Objekte, verdächtige Strukturen. pdfid und pdfparser (Didier Stevens) tun dasselbe für PDF. diec ("Detect It Easy") identifiziert Packer und Compiler für ausführbare Dateien. Diese Tools sind schmal im Scope, aber in ihrem Teilbereich oft die zuverlässigsten Erkenner.

Similarity- und Hash-basiert. Exakte Hashes (MD5, SHA-256) finden nur identische Samples. Fuzzy-Hashes wie ssdeep (Context Triggered Piecewise Hashing) finden ähnliche Samples, Varianten derselben Familie, gepackte Versionen, minimale Modifikationen. Zusätzlich gleichen wir jeden Upload gegen eine eigene Hash-Reputation-Datenbank ab, die wir aus der eigenen Scan-Historie füllen.

Was wir derzeit nicht nutzen: abuse.ch / Spamhaus-Feeds (lizenzrechtliche Probleme)

Aggregation der Ergebnisse

Die Frage "was ist ein Hit?" ist nicht trivial. Eine einfache Regel "irgendein Scanner sagt Ja → Quarantäne" führt zu False-Positive-Fluten (also Fehlalarmen bei harmlosen Dateien), weil jeder Scanner eigene Schwächen hat. Eine bessere Aggregation gewichtet:

  • Signatur-Treffer in ClamAV oder yara-forge mit hohem Confidence-Level: sofort Quarantäne.
  • Capa-Ergebnis mit mehreren verdächtigen Capabilities plus oletools-Hinweis auf VBA-Makros: Quarantäne.
  • ssdeep-Ähnlichkeit > 80% zu einem bekannten Sample plus ein anderer schwacher Indikator: Quarantäne.
  • Ein einzelner schwacher Hit, keine weiteren Treffer: Warnung an den Analysten, kein automatisches Blockieren.

Die Schwelle ist empirisch; sie wird anhand des False-Positive-Schmerzes (oft signifikant) gegen den False-Negative-Schmerz (eine übersehene bösartige Datei, oft unbequem für die tägliche Arbeit) eingestellt.

Heterogenität ist die Pointe

Der Wert des Multi-Engine-Ansatzes liegt darin, dass die Engines unterschiedliche Fehlermodi haben. Zwei Signatur-Scanner, die mit denselben Feeds arbeiten, verdoppeln nicht die Abdeckung, sie finden dasselbe. Ein Signatur-Scanner plus ein YARA-Scanner plus ein Capability-Scanner plus ein Format-Scanner: jeder sieht andere Aspekte derselben Datei, und die Aggregation erwischt das, was einer allein übersehen hätte.

Das ist auch der Grund, warum ein Cloud-Dienst wie VirusTotal 60 bis 80 Engines parallel laufen lässt. Die Anzahl ist nicht Selbstzweck; die Heterogenität ist es.

Netzwerk-Isolation als Begleitmaßnahme

Jede Engine, die ein unbekanntes Sample verarbeitet, ist selbst ein potentielles Einfallstor (siehe historische CVEs in ClamAV, oletools, sogar yara; CVE: Common Vulnerabilities and Exposures, der öffentliche Katalog bekannter Schwachstellen). Produktive Scan-Pipelines müssen ihre Engines daher in getrennten Sandboxen mit null Internet-Zugang laufen lassen. Das ist Thema eines der nächsten Beiträge dieser Serie. Ohne diese Isolation wird der Scanner zum Exfiltrations-Vektor.

Abgelehnte Alternativen und Mythen

"VirusTotal als API-Service." VirusTotal sendet Samples an Google und die angeschlossenen AV-Hersteller. Für Malware-Forscher in Ordnung; für Scans von Kundendokumenten DSGVO-problematisch und vertraulichkeitsbrechend. Für B2B-Workloads ungeeignet.

"Ein großer kommerzieller Scanner ist besser als mehrere kleine." Kommerzielle Scanner wie Kaspersky, ESET oder Bitdefender sind individuell stark, decken aber alle dieselbe Kategorie ab (Signatur- und Heuristik-Scan). Der strukturelle Vorteil heterogener Engines entsteht erst durch Kategorien-Mix. Hier gilt nicht das Motto: "Hauptsache teuer!"

"Sandbox-Detonation (Cuckoo, any.run) ersetzt alles." Dynamische Analyse hat eigene blinde Flecken: VM-Erkennung, zeitbasierte Payloads, Umgebungs-Abhängigkeiten. Sie ist eine hervorragende Ergänzung, aber kein Ersatz für statische Multi-Engine-Analyse. Verhaltensanalyse-Werkzeuge ergänzen die statische Pipeline nach Bedarf, sind aber nicht Teil unseres aktuellen Werkzeugkastens; für akute Fälle empfehlen wir spezialisierte Anbieter wie VMRay oder Joe Security.

"Signatur-Feeds sind von gestern." Für brandneue Samples ja, für die tägliche Wartungslast aber nicht. 80 Prozent des Malware-Durchsatzes im Massen-Mailverkehr sind Varianten bekannter Familien, die mit Signaturen sofort erkannt werden. Ohne Signaturen verbrennt die Pipeline Rechenzeit für Entscheidungen, die schneller und genauer (weil Erfahrungswerte) zu haben wären.

Was Sie jetzt tun sollten

  1. Wenn Sie heute nur einen Virenscanner einsetzen, prüfen Sie, ob er nur eine Kategorie abdeckt (meist Signatur plus Heuristik) - genau dann ist ein zweites, andersartiges Verfahren der Hebel.
  2. Ergänzen Sie statische Mustererkennung (Signatur, YARA) um mindestens ein format-spezifisches Werkzeug für die Dateitypen, die Sie real empfangen (Office, PDF).
  3. Definieren Sie eine Aggregations-Regel statt "ein Treffer gleich Block", damit Fehlalarme die tägliche Arbeit nicht lahmlegen.
  4. Schicken Sie keine vertraulichen Geschäftsdokumente an Cloud-Multiscanner wie VirusTotal; klären Sie das vorab mit Datenschutz und Geheimhaltung.
  5. Stellen Sie sicher, dass die Scan-Engines ohne Internet-Zugang in einer abgeschirmten Umgebung laufen, damit ein verseuchtes Sample die Engine nicht als Ausgangsweg nutzen kann.

Wie Dernium hier hilft

Dernium Scan ist die Endnutzer-Oberfläche für die hier beschriebene Engine-Kombination: ClamAV mit kuratierten SaneSecurity/LMD-Feeds, yara-forge-Regeln, Capa-Capabilities, format-spezifische Tools (oletools, pdfid, diec) und Fuzzy-Hash-Prüfung gegen eine eigene Hash-Reputation-DB. Dernium Transit stellt die gleiche Pipeline als API für andere Anwendungen bereit. Beide laufen in isolierten Sandbox-Umgebungen, die in einem Folgebeitrag dieser Serie im Detail beschrieben werden: gVisor-Runtime, kein Netzwerk-Egress für Scan-Worker, Signatur-Updates über einen getrennten Update-Daemon.

Offene Punkte

Latenz der Pipeline. Mehrere Engines parallel zu betreiben kostet Ressourcen. Für Massen-Scans müssen die Schritte priorisiert werden.

Signatur-Aktualität. Die besten Engines nützen wenig mit veralteten Signaturen. Der Update-Prozess muss zuverlässig laufen, und der Signatur-Pfad muss gegen Angriffe auf die Update-Kette abgesichert sein (signierte Feeds, geprüfte Spiegel).

Zero-Day. Für wirklich neue Samples greifen auch die besten Heuristik- und Capability-Scanner nicht sicher. Das Restrisiko bleibt, und die einzige strukturell saubere Antwort ist eine isolierte Bearbeitungsumgebung für potenziell bösartige Dateien, nicht ein besserer Scanner. Für dynamische Verhaltensanalyse verweisen wir auf spezialisierte Sandbox-Anbieter; statische Multi-Engine-Analyse bleibt unsere Kernstärke.

Häufige Fragen

Warum reicht ein einziger, guter Virenscanner nicht aus?

Weil jeder Scanner nach denselben Prinzipien blind ist wie seine Kategorie. Ein reiner Signatur-Scanner erkennt brandneue Varianten nicht, ein reiner Verhaltens-Scanner übersieht statisch gut versteckten Code. Erst die Kombination unterschiedlicher Verfahren deckt die jeweiligen blinden Flecken gegenseitig ab. Mehr Scanner derselben Bauart bringen dagegen kaum Mehrwert, weil sie dieselben Dinge finden.

Kann ich nicht einfach VirusTotal benutzen?

Für eigene Malware-Forschung ist VirusTotal nützlich, für Geschäftsdokumente aber heikel: Jede hochgeladene Datei geht an Google und die angeschlossenen AV-Hersteller. Damit verlieren Sie die Kontrolle über vertrauliche Inhalte, was datenschutzrechtlich und vertraglich problematisch ist. Für betriebliche Datei-Prüfungen brauchen Sie eine Pipeline, die die Dateien nicht aus der Hand gibt.

Bedeutet "ein Scanner hat angeschlagen" automatisch Gefahr?

Nein. Ein einzelner schwacher Treffer ist oft ein Fehlalarm. Genau deshalb verdichtet eine gute Pipeline die Einzelergebnisse zu einem Gesamturteil: Erst wenn ein starkes Verfahren anschlägt oder mehrere schwache Indikatoren zusammenkommen, wird blockiert. Andernfalls droht eine Flut von Fehlalarmen, die die eigentliche Arbeit ausbremst.

Schützt ein Multi-Engine-Scan vor Zero-Day-Malware?

Nur teilweise. Kombinierte Verfahren erhöhen die Wahrscheinlichkeit, dass wenigstens eine Engine eine neue Bedrohung anhand verdächtiger Fähigkeiten oder Strukturen erkennt. Eine Garantie gibt es nicht. Für wirklich neuartige Schadsoftware bleibt ein Restrisiko, das nur eine isolierte Bearbeitungsumgebung (statt eines besseren Scanners) strukturell auffängt.

Ist die Scan-Engine selbst ein Sicherheitsrisiko?

Ja, das wird oft übersehen. Jede Engine, die eine unbekannte Datei einliest, hat selbst Schwachstellen gehabt (dokumentierte CVEs in ClamAV, oletools und anderen). Deshalb müssen die Engines abgeschirmt und ohne Internet-Zugang laufen. Sonst kann ein präpariertes Sample die Engine kapern und Daten nach außen schicken.