YARA-Regeln zur Malware-Erkennung
Schreiben Sie YARA-Regeln auf Grundlage von Strings, Byte-Mustern und Dateistrukturen, um Malware-Familien zu erkennen.
YARA-Regeln zur Malware-Erkennung ist eine kostenlose Cyber Security Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Cyber Security Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Cyber Security Academy-Kurs umfasst insgesamt 4 Lektionen.
Was ist YARA?
YARA ist ein Tool zum Musterabgleich, das für die Klassifizierung von Schadsoftware entwickelt wurde. Regeln beschreiben Familien, indem sie Zeichenfolgenmuster, Bytefolgen und boolesche Bedingungen kombinieren. YARA durchsucht Dateien, Prozesse oder Speicher und meldet Treffer.
Aufbau einer YARA-Regel
Eine Regel besteht aus drei Abschnitten: meta (Metadaten wie Autor und Datum), strings (zu suchende Muster) und condition (boolesche Logik zur Kombination von Zeichenfolgen). Regeln werden für schnelle Dateisystemdurchläufe zu einem Scanner kompiliert.
rule ExampleRule {
meta:
author = "analyst"
strings:
$a = "malicious_string"
$b = { 4D 5A 90 00 }
condition:
$a and $b
}Zeichenfolgenmuster
YARA unterstützt drei Arten von Zeichenfolgen: Klartextzeichenfolgen (mit den Modifikatoren nocase und wide), Hex-Muster mit Platzhaltern ({ 4D 5A ?? ?? }) und reguläre Ausdrücke (/pattern/). wide verarbeitet UTF-16-Zeichenfolgen, wie sie in Windows-Schadsoftware häufig vorkommen.
Hex-Muster und Platzhalter
Verwenden Sie ?? für Platzhalter einzelner Bytes und [n-m] für Sprünge variabler Länge in Hex-Mustern. Beispiel: { 60 89 E5 31 C0 [4-8] 5D C3 } findet ein Shellcode-Stub unabhängig von variablen Abschnitten.
Bedingungslogik
Bedingungen kombinieren Zeichenfolgen mit and, or und not. Verwenden Sie any of them, all of them oder 2 of ($a*) für eine flexible Suche. Schwellenwertbedingungen wie 5 of ($s*) reduzieren Fehlalarme bei allgemeinen Zeichenfolgen.
Bedingungen für Dateieigenschaften
YARA kann die Dateigröße (filesize < 1MB), Eigenschaften des PE-Headers (pe.imphash()) und Bytes am Einstiegspunkt (uint16(0) == 0x5A4D) überprüfen. Bedingungen des PE-Moduls erkennen bestimmte Compiler-Artefakte und Linker-Metadaten.
Regeln aus der Verhaltensanalyse schreiben
Verwenden Sie als Regelzeichenfolgen die bei der statischen oder dynamischen Analyse extrahierten Zeichenfolgen. Eine C2-URL, ein eindeutiger Mutex-Name, eine bestimmte Fehlermeldung oder eine Bytefolge aus dem Shellcode-Stub ergeben jeweils starke YARA-Zeichenfolgen mit wenigen Fehlalarmen.
YARA-Regeln testen
Testen Sie mit yara rule.yar /path/to/sample. Überprüfen Sie die Regeln anhand eines Korpus sauberer Dateien, um die Fehlalarmrate zu messen. Verwenden Sie --no-warnings für eine Ausgabe ohne Warnungen und -r für rekursive Verzeichnissuchen.
yara -r rules/family.yar /malware_corpus/
yara -r rules/family.yar /System32/ 2>/dev/nullYARA in Sicherheitsprodukten
YARA-Regeln werden in ClamAV, OSSEC, Velociraptor, Splunk und EDR-Plattformen ausgeführt. Zentralisieren Sie die Regeln in einem Git-Repository, versionieren Sie sie, führen Sie vor der Bereitstellung ein Peer-Review durch und verfolgen Sie die Trefferstatistiken, um Regeln mit geringem Nutzen außer Betrieb zu nehmen.
Häufige Fallstricke vermeiden
Zu allgemeine Zeichenfolgen verursachen Fehlalarme. Sehr kurze Hex-Muster treffen auch auf beliebige Daten zu. Bewerten Sie Regeln immer anhand repräsentativer sauberer Samples, bevor Sie sie bereitstellen. Verwenden Sie nach Möglichkeit all of them statt any of them, um die Präzision zu erhöhen.
YARA-Ressourcen der Community
YARA-Forge bündelt hochwertige Regeln aus der Community. Malware-Repositories wie MalwareBazaar stellen Samples zum Testen bereit. GitHub-Repositories von Anbietern wie Mandiant und Kaspersky veröffentlichen Regeln auf Forschungsniveau, die Sie untersuchen und anpassen können.
Wissenscheck
Was bedeutet die YARA-Bedingung 2 of ($s*)?
Zusammenfassung
YARA-Regeln kombinieren Zeichenfolgenmuster, Bytefolgen und boolesche Bedingungen, um Schadsoftwarefamilien zu klassifizieren. Das Erstellen von Regeln auf Grundlage von Erkenntnissen aus der Verhaltensanalyse, das Testen anhand sauberer Korpora und die Bereitstellung über Sicherheitsplattformen schaffen skalierbare Erkennungsabdeckung.
Häufig gestellte Fragen
Ist die Lektion „YARA-Regeln zur Malware-Erkennung“ kostenlos?
Ja — der vollständige Text von „YARA-Regeln zur Malware-Erkennung“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Cyber Security Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Cyber Security Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „YARA-Regeln zur Malware-Erkennung“?
Schreiben Sie YARA-Regeln auf Grundlage von Strings, Byte-Mustern und Dateistrukturen, um Malware-Familien zu erkennen. Du übst Cyber Security Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Cyber Security Academy zu starten?
Keine Vorkenntnisse erforderlich. Cyber Security Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „YARA-Regeln zur Malware-Erkennung“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Cyber Security Academy-Lektion Code schreiben und ausführen?
Ja. Jede Cyber Security Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Statische Analyse: Strings, Hashes und PE-Header
- Dynamische Analyse in einer Sandbox
- Verhaltensbasierte IOCs: Registry-, Netzwerk- und Dateiartefakte
- YARA-Regeln zur Malware-Erkennung